📄 linux下的实时流媒体编程.htm
字号:
<TD><A class=masthead-mainlink
href="http://www.ibm.com/account/cn/">个性化服务</A></TD>
<TD><SPAN
class=spacer> </SPAN></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE><!--
<script src="//www.ibm.com/common/v14/pmh.js" language="JavaScript" type="text/javascript"></script>
--><!-- end masthead dw liquid --><!--MASTHEAD_END-->
<TABLE id=v14-body-table cellSpacing=0 cellPadding=0 width="100%" border=0>
<TBODY>
<TR vAlign=top><!--LEFTNAV_BEGIN-->
<TD id=navigation width=150>
<TABLE cellSpacing=0 cellPadding=0 width=150 border=0>
<TBODY>
<TR>
<TD class=left-nav-spacer><A class=left-nav-overview
href="http://www.ibm.com/developerworks/cn/"> </A></TD></TR></TBODY></TABLE>
<TABLE cellSpacing=0 cellPadding=0 width=150 border=0>
<TBODY>
<TR>
<TD class=left-nav-overview colSpan=2><A class=left-nav-overview
href="http://www.ibm.com/developerworks/cn/">developerWorks<BR>中国</A></TD></TR></TBODY></TABLE>
<TABLE cellSpacing=0 cellPadding=0 width=150 border=0>
<TBODY>
<TR>
<TD class=left-nav-highlight colSpan=2><A class=left-nav
href="http://www-128.ibm.com/developerworks/cn/linux/l-mdst/index.html#">本文内容包括:</A></TD></TR>
<TR class=left-nav-child-highlight>
<TD><IMG height=8 alt="" src="Linux下的实时流媒体编程.files/cl-bullet.gif"
width=2></TD>
<TD><A class=left-nav-child
href="http://www-128.ibm.com/developerworks/cn/linux/l-mdst/index.html#0">一、流媒体简介</A></TD></TR>
<TR class=left-nav-child-highlight>
<TD><IMG height=8 alt="" src="Linux下的实时流媒体编程.files/cl-bullet.gif"
width=2></TD>
<TD><A class=left-nav-child
href="http://www-128.ibm.com/developerworks/cn/linux/l-mdst/index.html#1">二、流媒体协议</A></TD></TR>
<TR class=left-nav-child-highlight>
<TD><IMG height=8 alt="" src="Linux下的实时流媒体编程.files/cl-bullet.gif"
width=2></TD>
<TD><A class=left-nav-child
href="http://www-128.ibm.com/developerworks/cn/linux/l-mdst/index.html#2">三、流媒体编程
</A></TD></TR>
<TR class=left-nav-child-highlight>
<TD><IMG height=8 alt="" src="Linux下的实时流媒体编程.files/cl-bullet.gif"
width=2></TD>
<TD><A class=left-nav-child
href="http://www-128.ibm.com/developerworks/cn/linux/l-mdst/index.html#4">四、小结</A></TD></TR>
<TR class=left-nav-child-highlight>
<TD><IMG height=8 alt="" src="Linux下的实时流媒体编程.files/cl-bullet.gif"
width=2></TD>
<TD><A class=left-nav-child
href="http://www-128.ibm.com/developerworks/cn/linux/l-mdst/index.html#resources">参考资料
</A></TD></TR>
<TR class=left-nav-child-highlight>
<TD><IMG height=8 alt="" src="Linux下的实时流媒体编程.files/cl-bullet.gif"
width=2></TD>
<TD><A class=left-nav-child
href="http://www-128.ibm.com/developerworks/cn/linux/l-mdst/index.html#author">关于作者</A></TD></TR>
<TR class=left-nav-child-highlight>
<TD><IMG height=8 alt="" src="Linux下的实时流媒体编程.files/cl-bullet.gif"
width=2></TD>
<TD><A class=left-nav-child
href="http://www-128.ibm.com/developerworks/cn/linux/l-mdst/index.html#rate">对本文的评价</A></TD></TR>
<TR class=left-nav-last>
<TD width=14><IMG class=display-img height=1 alt=""
src="Linux下的实时流媒体编程.files/c.gif" width=14></TD>
<TD width=136><IMG class=display-img height=19 alt=""
src="Linux下的实时流媒体编程.files/left-nav-corner.gif"
width=136></TD></TR></TBODY></TABLE><BR>
<TABLE cellSpacing=0 cellPadding=0 width=150 border=0>
<TBODY>
<TR>
<TD class=related colSpan=2><B class=related>相关链接:</B></TD></TR>
<TR class=rlinks>
<TD><IMG height=8 alt="" src="Linux下的实时流媒体编程.files/rl-bullet.gif"
width=2></TD>
<TD><A class=rlinks
href="http://www.ibm.com/developerworks/cn/views/linux/articles.jsp">Linux
技术文档库</A></TD></TR><!--START RESERVED FOR FUTURE USE INCLUDE FILES--><!-- No content currently --><!--END RESERVED FOR FUTURE USE INCLUDE FILES-->
<TR>
<TD width=14><IMG class=display-img height=1 alt=""
src="Linux下的实时流媒体编程.files/c.gif" width=14></TD>
<TD width=136><IMG class=display-img height=19 alt=""
src="Linux下的实时流媒体编程.files/c.gif" width=136></TD></TR></TBODY></TABLE><!--START RESERVED FOR FUTURE USE INCLUDE FILES--><!-- No content currently --><!--END RESERVED FOR FUTURE USE INCLUDE FILES--></TD><!--LEFTNAV_END-->
<TD width="100%">
<TABLE id=content-table cellSpacing=0 cellPadding=0 width="100%"
border=0><TBODY>
<TR vAlign=top>
<TD width="100%">
<TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
<TBODY>
<TR>
<TD><A name=main><IMG height=1 alt="skip to main content"
src="Linux下的实时流媒体编程.files/c.gif" width=592
border=0></A></TD></TR></TBODY></TABLE>
<TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
<TBODY>
<TR vAlign=top>
<TD width=10 height=18><IMG height=18 alt=""
src="Linux下的实时流媒体编程.files/c.gif" width=10></TD>
<TD width="100%"><IMG height=6 alt=""
src="Linux下的实时流媒体编程.files/c.gif" width=1><BR><A class=bctl
href="http://www.ibm.com/developerworks/cn/">developerWorks
中国</A><SPAN class=bct> > </SPAN><A
class=bctl
href="http://www.ibm.com/developerworks/cn/linux/">Linux</A><SPAN
class=bct> ></SPAN><IMG height=1 alt=""
src="Linux下的实时流媒体编程.files/c.gif" width=1><BR>
<H1>Linux下的实时流媒体编程</H1><IMG class=display-img height=6 alt=""
src="Linux下的实时流媒体编程.files/c.gif" width=1></TD>
<TD class=no-print width=192><IMG height=18 alt=developerWorks
src="Linux下的实时流媒体编程.files/dw.gif"
width=192></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE>
<TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
<TBODY>
<TR vAlign=top>
<TD width=10><IMG height=1 alt="" src="Linux下的实时流媒体编程.files/c.gif"
width=10></TD>
<TD width="100%">
<TABLE class=no-print cellSpacing=0 cellPadding=0 width=160
align=right border=0>
<TBODY>
<TR>
<TD width=10><IMG height=1 alt=""
src="Linux下的实时流媒体编程.files/c.gif" width=10></TD>
<TD>
<TABLE cellSpacing=0 cellPadding=0 width=150 border=0>
<TBODY>
<TR>
<TD class=v14-header-1-small>文档选项</TD></TR></TBODY></TABLE>
<TABLE class=v14-gray-table-border cellSpacing=0 cellPadding=0
border=0>
<TBODY>
<TR>
<TD class=no-padding width=150>
<TABLE cellSpacing=0 cellPadding=0 width=143
border=0><IMG height=1 alt=""
src="Linux下的实时流媒体编程.files/c.gif" width=8>
<FORM name=email
action=https://www-128.ibm.com/developerworks/secure/email-it.jsp><INPUT
type=hidden
value=流媒体指的是在网络中使用流技术传输的连续时基媒体,其特点是在播放前不需要下载整个文件,而是采用边下载边播放的方式,它是视频会议、IP电话等应用场合的技术基础。RTP是进行实时流媒体传输的标准协议和关键技术,本文介绍如何在Linux下利用JRTPLIB进行实时流媒体编程。
name=body><INPUT type=hidden value=Linux下的实时流媒体编程
name=subject><INPUT type=hidden value=cn name=lang>
<SCRIPT language=JavaScript type=text/javascript><!--document.write('<tr valign="top"><td width="8"><img src="//www.ibm.com/i/c.gif" width="8" height="1" alt=""/></td><td width="16"><img src="//www.ibm.com/i/v14/icons/em.gif" height="16" width="16" vspace="3" alt="将此页作为电子邮件发送" /></td><td width="122"><p><a class="smallplainlink" href="javascript:document.email.submit();"><b>将此页作为电子邮件发送</b></a></p></td></tr>');//--></SCRIPT>
<NOSCRIPT>
<TBODY>
<TR vAlign=top>
<TD width=8><IMG height=1 alt=""
src="Linux下的实时流媒体编程.files/c.gif" width=8></TD>
<TD width=16><IMG height=16 alt=""
src="Linux下的实时流媒体编程.files/c.gif" width=16></TD>
<TD class=small width=122>
<P><SPAN class=ast>未显示需要 JavaScript
的文档选项</SPAN></P></TD></TR></NOSCRIPT></FORM></TBODY></TABLE></TD></TR></TBODY></TABLE><!--START RESERVED FOR FUTURE USE INCLUDE FILES--><!-- 03/20/06 updated by gretchen --><BR>
<TABLE cellSpacing=0 cellPadding=0 width=150 border=0>
<TBODY>
<TR>
<TD class=v14-header-2-small>最新推荐</TD></TR></TBODY></TABLE>
<TABLE class=v14-gray-table-border cellSpacing=0 cellPadding=0
border=0>
<TBODY>
<TR>
<TD class=no-padding width=150>
<TABLE cellSpacing=0 cellPadding=0 width=143 border=0>
<TBODY>
<TR vAlign=top>
<TD width=8><IMG height=1 alt=""
src="Linux下的实时流媒体编程.files/c.gif" width=8></TD>
<TD><IMG height=16 alt=""
src="Linux下的实时流媒体编程.files/fw_bold.gif" width=16
vspace=3 border=0></TD>
<TD width=125>
<P><A class=smallplainlink
href="http://www-128.ibm.com/developerworks/cn/kickstart/">Java
应用开发源动力 - 下载免费软件,快速启动开发</A>
</P></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE><!--END RESERVED FOR FUTURE USE INCLUDE FILES--><BR></TD></TR></TBODY></TABLE>
<P>级别: 初级</P>
<P><A
href="http://www-128.ibm.com/developerworks/cn/linux/l-mdst/index.html#author">肖文鹏</A>,
硕士研究生, 北京理工大学计算机系<BR></P>
<P>2004 年 2 月 01 日</P>
<BLOCKQUOTE>流媒体指的是在网络中使用流技术传输的连续时基媒体,其特点是在播放前不需要下载整个文件,而是采用边下载边播放的方式,它是视频会议、IP电话等应用场合的技术基础。RTP是进行实时流媒体传输的标准协议和关键技术,本文介绍如何在Linux下利用JRTPLIB进行实时流媒体编程。</BLOCKQUOTE><!--START RESERVED FOR FUTURE USE INCLUDE FILES--><!-- include java script once we verify teams wants to use this and it will work on dbcs and cyrillic characters --><!--END RESERVED FOR FUTURE USE INCLUDE FILES-->
<P><A name=0><SPAN class=atitle>一、流媒体简介</SPAN></A></P>
<P>随着Internet的日益普及,在网络上传输的数据已经不再局限于文字和图形,而是逐渐向声音和视频等多媒体格式过渡。目前在网络上传输音频/视频(Audio/Video,简称A/V)等多媒体文件时,基本上只有下载和流式传输两种选择。通常说来,A/V文件占据的存储空间都比较大,在带宽受限的网络环境中下载可能要耗费数分钟甚至数小时,所以这种处理方法的延迟很大。如果换用流式传输的话,声音、影像、动画等多媒体文件将由专门的流媒体服务器负责向用户连续、实时地发送,这样用户可以不必等到整个文件全部下载完毕,而只需要经过几秒钟的启动延时就可以了,当这些多媒体数据在客户机上播放时,文件的剩余部分将继续从流媒体服务器下载。</P>
<P>流(Streaming)是近年在Internet上出现的新概念,其定义非常广泛,主要是指通过网络传输多媒体数据的技术总称。流媒体包含广义和狭义两种内涵:广义上的流媒体指的是使音频和视频形成稳定和连续的传输流和回放流的一系列技术、方法和协议的总称,即流媒体技术;狭义上的流媒体是相对于传统的下载-回放方式而言的,指的是一种从Internet上获取音频和视频等多媒体数据的新方法,它能够支持多媒体数据流的实时传输和实时播放。通过运用流媒体技术,服务器能够向客户机发送稳定和连续的多媒体数据流,客户机在接收数据的同时以一个稳定的速率回放,而不用等数据全部下载完之后再进行回放。</P>
<P>由于受网络带宽、计算机处理能力和协议规范等方面的限制,要想从Internet上下载大量的音频和视频数据,无论从下载时间和存储空间上来讲都是不太现实的,而流媒体技术的出现则很好地解决了这一难题。目前实现流媒体传输主要有两种方法:顺序流(progressive
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -