随笔分类 - FFmpeg
摘要:让你的软件飞起来:RGB转为YUV 朋友曾经给我推荐了一个有关代码优化的pdf文档《让你的软件飞起来》,看完之后,感受颇深。为了推广其,同时也为了自己加深印象,故将其总结为word 文档。下面就是其的详细内容总结,希望能于己于人都有所帮助。速度取决于算法同样的事情,方法不一样,效果也不一样。比如...
阅读全文
摘要:PS:由于目前开发RTSP服务器 传输模块时用到了h264文件,所以攻了一段时间去实现h264的视频编解码,借用FFmpeg SDK实现了任意文件格式之间的转换,并实现了流媒体实时播放,目前音视频同步需要稍加完善,视频编码代码已成功移植到Visual Stdio平台,如有需要的留下邮箱以下文档来自F...
阅读全文
摘要:一、 概述为了解决在线无广告播放youku网上的视频。(youku把每个视频切换成若干个小视频)。视频资源解析可以从www.flvcd.com获取,此网站根据你输入的优酷的播放网页地址解析成若干个真实的视频地址。二、 实现首先搜索关闭网络播放器(流媒体播放器的实现方法)得出的结论,目前主流的播放器分...
阅读全文
摘要:#include #include #include #include #include #include #include void pstrcpy(char *buf, int buf_size, const char *str){ int c;//why int here char *q = ...
阅读全文
摘要:output_example.c 中AV同步的代码如下(我的代码有些修改),这个实现相当简单,不过挺说明问题。音视频同步方法:选择一个参考时钟,参考时钟上的时间是线性递增的,生成数据流时依据参考时钟上的时间给每个数据块都打上时间戳(一般包括开始时间和结束时间)。在播放时,读取数据块上的时间戳,同时参...
阅读全文
摘要:一、RTP协议分析第1章. RTP概述1.1. RTP是什么RTP全名是Real-time Transport Protocol(实时传输协议)。它是IETF提出的一个标准,对应的RFC文档为RFC3550(RFC1889为其过期版本)。RFC3550不仅定义了RTP,而且定义了配套的相关协议RTC...
阅读全文
摘要:功能部份:VLC媒體播放器的核心是libvlc ,它提供了界面,應用處理功能,如播放列表管理,音頻和視頻解碼和輸出,線程系統。所有libvlc源文件設在的/src目錄及其子目錄:# config/ :從命令行和配置文件加載配置,提供功能模塊的讀取和寫入配置# control/: 提供動作控制功能,如...
阅读全文
摘要:0x00 前置信息VLC是一个非常庞大的工程,我从它的架构及流程入手进行分析,涉及到一些很细的概念先搁置一边,日后详细分析。 0x01 源码结构(Android Java相关的暂未分析)# build-android-arm-linux-androideabi/:第三方库。# modules/:模块...
阅读全文
摘要:开源播放器项目 kxmovie(https://github.com/kolyvan/kxmovie),现在仍然是很多刚开始接触播放器开发的程序员的参照范本。以下是我操作kxmovie项目的过程:(1)在桌面上建立一个目录,名称可以随便取,我的该目录名为 examples(2)打开Mac终端,执...
阅读全文
摘要:http://wmnmtm.blog.163.com/blog/static/38245714201192491746701/使用RTP传输H264的时候,需要用到sdp协议描述,其中有两项:Sequence ParameterSets(SPS) 和Picture ParameterSet(PPS...
阅读全文
摘要:个人整理:Vlc流播放流程vlc源码目录树:目录名称说明bindingsJava, CIL和Python绑定doc帮助文档(不是更新的)extras另叙。includeVLC头文件libsSRTP库和装载库lxdialog制作menuconfig的文件m4Automake和autoconf的宏文件m...
阅读全文
摘要:如何同步视频 PTS和DTS 幸运的是,音频和视频流都有一些关于以多快速度和什么时间来播放它们的信息在里面。音频流有采样,视频流有每秒的帧率。然而,如果我们只是简单的通过数帧和乘以帧率的方式来同步视频,那么就很有可能会失去同步。于是作为一种补充,在流中的包有种叫做DTS(解码时间戳)和P...
阅读全文
摘要:一个星期的努力终于搞定了视频的播放,利用FFmpeg解码视频,将解码的数据通过OpenGLES渲染播放。搞清楚了自己想知道的和完成了自己的学习计划,有点小兴奋。明天就是“五一”,放假三天,更开心啦。 本文实现视频文件的播放是在自己之前写的文章实战FFmpeg--iOS平台使用FFmpeg将视频...
阅读全文
摘要:做播放器的开发这里面涉及的东西太多,我只能一步步往前走,慢慢深入。播放器播放视频采用的是渲染yuv文件。首先,要知道yuv文件是怎么转换得来的,其次,要知道怎么把视频文件保存为yuv文件。雷神的文章100行代码实现最简单的基于FFMPEG+SDL的视频播放器(SDL1.x) 让我获益匪浅。以读...
阅读全文
摘要:编译环境:Mac OS X 10.10.2 ,Xcode 6.3 iOS SDK 8.3 FFmpeg库的下载地址是 http://www.ffmpeg.org/releases/ 。FFmpeg是一个跨平台的用C语言写成的库,包含了编码,解码,色彩空间转换等的库。第一步: 下载编译...
阅读全文
摘要:经过前面的学习对FFmpeg的基本流程已经很熟悉了,现在到了掌握其中细节的时候了,用FFmpeg做播放器解码操作中,涉及到了一些结构体,这些结构之间到底有什么关系,它们是怎样协同工作的呢。文章FFMPEG中最关键的结构体之间的关系对这些结构间的关系进行了分析,详细内容如下: FFMPEG中结构...
阅读全文
摘要:做视频的播放,涉及到关键帧一说,从视频流中取出数据显示图像的时候,这些一幅幅图像之间到底有什么关联呢。那就有必要弄清楚I帧、P帧、B帧、PTS、DTS的概念,文章I,P,B帧和PTS,DTS的关系解释如下:基本概念: I frame :帧内编码帧 又称intra picture,I 帧通常是每...
阅读全文
摘要:现在的工作是播放器库的开发,可不是调用iOS系统自带的播放器框架进行一些简单的功能和界面定制,这些没什么含量。涉及iOS开发有3个年头了,现在的工作算是有点含金量了。涉及播放器的开发,FFmpeg的架构和功能是必须清楚的。FFmpeg自带的三个工程:ffplay, ffmpeg, ffprobe...
阅读全文

浙公网安备 33010602011771号