播放器
文章平均质量分 65
arcslee
这个作者很懒,什么都没留下…
展开
-
学习Live555 (一)
liveMedia 项目(http://www.live555.com/)的源码包括四个基本的库、测试代码及Media Server。 四个基本库分别是:UsageEnvironment&TaskScheduler、groupsock、liveMedia、BasicUsageEnvironment。 (1) UsageEnvironment 和TaskScheduler类,用于事件调度原创 2013-04-18 17:19:18 · 728 阅读 · 0 评论 -
DTS/PTS
DTS(解码时间戳)和PTS(显示时间戳)分别是解码器进行解码和显示帧时相对于SCR(系统参考)的时间戳。SCR可以理解为解码器应该开始从磁盘读取数据时的时间。mpeg文件中的每一个包都有一个SCR时间戳并且这个时间戳就是读取这个数据包时的系统时间。通常情况下,解码器会在它开始读取mpeg流时启动系统时钟(系统时钟的初始值是第一个数据包的SCR值,通常为0但也可以不从0开始)。DTS 时间戳原创 2013-04-18 17:19:58 · 734 阅读 · 0 评论 -
视频容器格式
1.视频容器格式简介 一般而言,视频文件的扩展名就是视频的容器名。比如“avi文件”或者“mp4文件,avi和mp4只是容器格式。好比zip文件,里面可以包含各种文件,视频容器格式只是定义了怎么存储数据,而不论存储什么类型的数据。不过视频容器格式比这个更复杂一些,因为不是所有的视频流格式兼容所有的视频容器格式。 一个视频文件一般包含多个track,而每个视频track(没有原创 2013-04-18 17:19:56 · 596 阅读 · 0 评论 -
av_read_frame
新版本的ffmpeg用的是av_read_frame,而老版本的是av_read_packet。区别是av_read_packet读出的是包,它可能是半帧或多帧,不保证帧的完整性。av_read_frame对av_read_packet进行了封装,使读出的数据总是完整的帧,对于视频就是一帧,对于音频可能是一帧或多帧,但也是完整的,不会是半帧。picture,从字面看就知道了,只就是一张图,原创 2013-04-18 17:19:45 · 1584 阅读 · 0 评论 -
ffplay原理
1.播放器一般原理可以直观的看到播放这个媒体文件的基本模块(filter),七个模块按广度顺序:读文件模块(source filter),解复用模块(Demux filter),视/音频解码模块(Decode filter),颜色空间转换模块(Color Space converter filter),视频/音频播放模块(Render filter)。Source filter 源过原创 2013-04-18 17:19:28 · 794 阅读 · 0 评论 -
ffmpeg中一些变更
网上很多关于ffmpeg (libav)的资料都是N年以前的,而事实上ffmpeg数年来一直在“以时俱进”,因此无论是一些新手,或者号称为老手的人,有时候难免出头痛。。。。。。为了解决大家的头痛的问题,特列一个贴子,把ffmpeg相关的一些常见的、版本的问题列举出来,供大家参考,同时也请大家一起补充。1) 不认识guess_format.解决: #define guess_format原创 2013-04-18 17:19:25 · 726 阅读 · 0 评论 -
在windows下编译live555
liveMedia项目的源代码包括四个基本的库,各种测试代码以及IVE555 Media Server。四个基本的库分别是UsageEnvironment&TaskScheduler,groupsock,liveMedia,BasicUsageEnvironment。UsageEnvironment 和TaskScheduler类用于事件的调度,实现异步读取事件的句柄的设置以及错误信息的输出。另外原创 2013-04-18 17:19:23 · 610 阅读 · 0 评论 -
live555编译
(1)先下载live555的源码如:live.2011.06.14a.tar.gz(2)解压源码tar -zxvf live.2011.06.14a.tar.gz(3)cd live(4)./genMakefiles linux-gdb(5)make经过以上步骤生成的live555MediaServer可以用于gdb调试,如果要使源代码中的DEBUG宏有效,还需要修改live/config.lin原创 2013-04-18 17:20:06 · 567 阅读 · 0 评论 -
【转】ffmpeg解码含有B帧的视频文件的输出顺序
live555+ffmpeg如何提取关键帧(I帧,P帧,B帧)开发流媒体播放器的时候,特别是在windows mobile,symbian(S60)平台开发时,很可能遇到需要自己开发播放器的情况。S60平台提供了CVideoPlayUtility接口可以实现流媒体播放器,但由于非开源,所以相对于自己开发播放器,很多操作受到限制。live555主要用于网络流接收,ffmpeg则是对接收到的数据进行原创 2013-04-18 17:19:53 · 2632 阅读 · 0 评论 -
ffmpeg 制定精确码率
FFmpeg是Ubuntu下強大的視頻、音頻編解碼工具. x264可以編碼出高質量的h.264視頻,iPad必須要h.264編碼或mpeg-4編碼的視頻才能正常播放.由於版權方面尚未確定,雖然全國很多網站都在使用h.264編碼,但將來很有可能會被版權問題所困擾,所以Ubuntu官方源默認是不提供h.264編碼的,這就需要我們手工編譯安裝FFmpeg的h.264支持,使之能夠編碼出MP4文件.转载 2013-06-06 15:33:21 · 1796 阅读 · 0 评论