感谢支持
我们一直在努力

Ubuntu 搭建 SDL+FFmpeg

在Ubuntu Linux下安装了ffmpeg加载了sdl,编译运行了ffplay.c.tutorial01-08.c.过程记录如下:


1.安装ffmpeg,就是一裸体,呵呵,我什么都没加载。对于刚入门的话,没必要装那么多选项,等用到了什么在加上去吧,我将在以后会吧那些选项加上,目前我只想阅读源码。


2.安装SDL:


因为ubuntu里面有SDL,所以直接在命令窗口输入以下就可以了:


sudo apt-get install libsdl1.2-dev libsdl-image1.2-dev libsdl-ttf2.0-dev libsdl-mixer1.2-dev libsdl-net1.2-dev libsdl-sound1.2-dev


检测SDL装上了没有:sdl-config –exec-prefix –version –cflags


2)ffmpeg不讲了,网上一大堆,步骤也繁琐,我就装了一个裸体


下载源码
./configure –enable-shared –enable-pthreads
make


make install


3.对文件的编译命令,很杂:


     典型的例子:


    gcc  -o player ffplay.c cmdutils.c -I/home/han/soft/ffmpeg_src  -lavformat -lavcodec  -lavcore -lavdevice -lavfilter  -lswscale -lavutil  -I/usr/include/SDL -lSDL -lSDLmain


   -lm  -lz


或者


   gcc -o tutorial07 tutorial07.c -lavformat -lavcodec  -lavcore -lavdevice -lavfilter  -lswscale -lavutil  -lz -lm `sdl-config –cflags –libs`


-lz的下载:


这类错误:


/usr/bin/ld: cannot find -lz
collect2: ld returned 1 exit status
这是由于缺少libz库


我是这样解决的:在名狂直接输入:apt-get install zlib1g-dev


/usr/bin/ld: cannot find -l* 错误的解决方法……


碰到这个问题大概可以用这个方法去解决(我碰到几个都是这样搞定的):
yum -y install libtool-l*
譬如:
/usr/bin/ld: cannot find -lltdl
解决方法:
yum -y install libtool-ltdl*
 
-lm:一些数学公式等系统内部库,不用管。


ffmpeg那几个tutorial编译的时候,出现rint那个函数错误:只需要注释掉就可以了:


/*


int rint(int x)


{


 return (int)(x + (x < 0 ? -0.5 : 0.5));


}


*/


附加:测试电影最好是.mpg文件。

赞(0) 打赏
转载请注明出处:服务器评测 » Ubuntu 搭建 SDL+FFmpeg
分享到: 更多 (0)

听说打赏我的人,都进福布斯排行榜啦!

支付宝扫一扫打赏

微信扫一扫打赏