完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
编译x264获取x264源码,可以从网站http://www.videolan.org/developers/x264.htm下载,进入如图1.1界面,点击下载;或者用我们已经下载压缩包(与文档同一目录下的x264-master.tar.bz2);
将压缩包放到ubuntu并解压,tar -vxf x264-master.tar.bz2 ,创建文件夹_x264_install用来存放编译后生成的文件,mkdir _x264_install: 进入解压后的路径x264-master,执行以下命令:。/configure --enable-shared --prefix=/home/ubuntu/work/ffmpeg/_x264_install/ --host=arm-linux-gnueabihf --disable-asm参数说明: --prefix=/home/ubuntu/work/ffmpeg/_x264_install/ :指定编译后存放路径 --host=arm-linux-gnueabihf :指定交叉编译链,用户需要修改为自己的交叉编译器 --enable-shared :允许共享 --disable-asm:跳过汇编 修改配置文件config.mak,vi config.mak,修改为自己的路径和交叉编译工具(本文档用的arm-linux-gnueabihf-gcc), SYS_ARCH=ARM SYS=LINUX CC= arm-linux-gnueabihf-gcc LD=arm-linux-gnueabihf-gcc -o AR= arm-linux-gnueabihf-ar rc RANLIB= arm-linux-gnueabihf-ranlib 执行make,成功后如图 执行make install,成功后如图 查看文件夹_x264_install,发现生成的库文件已经在此目录下: |
|
|
|
编译FFmpeg
FFmpeg下载地址:http://ffmpeg.org/download.html,已经把下载好的压缩包放在了文档同一目录下。 下载后解压:tar -vxf ffmpeg-snapshot.tar.bz2 ,创建文件夹_ffmpeg_install存放生成的文件: 进入解压后的ffmpeg文件夹,修改Makefile,添加编译选项:CFLAGS += -fPIC, 配置编译选项,执行以下命令: 。/configure --cross-prefix=arm-linux-gnueabihf- --enable-cross-compile --target-os=linux --cc=arm-linux-gnueabihf-gcc --arch=arm --prefix=/home/ubuntu/work/ffmpeg/_ffmpeg_install --enable-shared --disable-static --enable-gpl --enable-nonfree --disable-ffplay --enable-swscale --enable-pthreads --disable-armv5te --disable-armv6 --disable-armv6t2 --disable-x86asm --disable-stripping --enable-libx264 --extra-cflags=-I/home/ubuntu/work/ffmpeg/_x264_install/include --extra-ldflags=-L/home/ubuntu/work/ffmpeg/_x264_install/lib --extra-libs=-ldl 参数说明: --cross-prefix=arm-linux-gnueabihf-:配置为自己的交叉编译工具 --cc=arm-linux-gnueabihf-gcc:配置为自己的交叉编译工具 --arch=arm --prefix=/home/ubuntu/work/ffmpeg/_ffmpeg_install: --extra-cflags=-I/home/ubuntu/work/ffmpeg/_x264_install/include :改为 --extra-ldflags=-L/home/ubuntu/work/ffmpeg/_x264_install/lib : 配置成功后如图 执行make开始编译,完成后如图 执行make install,成功后生成的文件在我们创建好的_ffmpeg_install目录下: |
|
|
|
移植到ARM开发板
将_x264_install下的库文件拷贝到开发板的/lib/目录下, cp *x264* /lib/; 将_ffmpeg_install/lib下的so库文件全部拷贝到开发板的/lib/目录下,如有警告可忽略; 将_ffmpeg_install/bin/目录下的ffmpeg拷贝到开发板的/bin/目录下: |
|
|
|
测试
插上USB免驱摄像头,设备节点为/dev/video2,在开发板终端执行以下命令: ffmpeg -f video4linux2 -s 320x240 -i /dev/video2 /mnt/topeet.avi 会出现如下所示: 开发板的/mnt/目录下会出现topeet.avi文件, 将此文件拷贝到windows上,用视频播放设备打开: |
|
|
|
只有小组成员才能发言,加入小组>>
798 浏览 0 评论
1155 浏览 1 评论
2531 浏览 5 评论
2863 浏览 9 评论
移植了freeRTOS到STMf103之后显示没有定义的原因?
2713 浏览 6 评论
keil5中manage run-time environment怎么是灰色,不可以操作吗?
1086浏览 3评论
195浏览 2评论
461浏览 2评论
374浏览 2评论
M0518 PWM的电压输出只有2V左右,没有3.3V是怎么回事?
455浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-24 07:21 , Processed in 0.933289 second(s), Total 56, Slave 47 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号