问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

linux下怎么变异ffmpeg

发布网友 发布时间:2022-04-25 16:34

我来回答

1个回答

热心网友 时间:2023-10-18 11:32

1、下载ffmpeg。

  wget http://down1.chinaunix.net/distfiles/ffmpeg-0.4.9-p20051120.tar.bz2

  我是在这个网址上下载ffmpeg-0.4.9-p20051120.tar.bz2,看网上有人用的是svn下载,但是我的机子中没有svn客户端,然后就在网上搜索,下载了这个版本。如果利用svn可以下载ffmpeg最新的版本。

  svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg

  2、解压

  tar xvfj ffmpeg-0.4.9-p20051120.tar.bz2

  得到解压后的目录是ffmpeg-0.4.9-p20051120,名字太长,利用mv命令改为ffmpeg

  mv ffmpeg-0.4.9-p20051120.tar.bz2 ffmpeg

  3、配置

  ./configure --enable-shared --prefix=/usr/local/ffmpeg

  其中:--enable-shared 是允许其编译产生动态库,在以后的编程中要用到这个几个动态库。--prefix设置的安装目录。

  4、编译并安装

  make
  make install

  5、安装之后在/usr/local/ffmpeg会看到有三个目录

  lib 动态链接库位置
  include 编程要用到头文件
  bin 执行文件所在的目录

  6、为了以后方便编程,我们把lib中的三个链接库libavcodec.so libavformat.so libavutil.so复制到/usr/lib下。把include目录下的ffmpeg目录复制到/usr/include下。

这里我这样复制了还是不对,-lavcodec -lavutil -lavformat的时候,提示找不到库
然后我把 /usr/local/ffmpeg/lib 所有文件复制到 /usr/local/lib才可以的
  执行bin目录下的ffplay,可以去播放音频或者视频文件。例如播放1.mp3

  ./ffplay 1.mp3

  另外,bin目录下还有两个文件:ffmpeg和ffserver

  ffmpeg是一个很好的视频和音频的格式转化工具。网上有很多它的说明文档。如果不想生成ffserver,只要在./configure的时候加--disable-ffserver即可。

  7、编程

  如果写了一个test.c文件,要包含ffmpeg的头文件,可以这样写:

  #include

  编译:gcc -o test test.c -lavformat -lavcodec -lavtuil (前提是有第6步的操作)

  如果没有第6部的操作,则编译的时候如下:

  gcc -o test test.c -I/usr/local/ffmpeg/include -L/usr/local/ffmpeg/lib -lavformat -lavcodec -lavtuil

  编译成功之后,执行的时候还是需要动态库的支持,还是要把那三个动态库文件复制到/usr/lib或者/lib中,不然执行的时候会说找不到动态库链接。还有一个方法可以解决这个问题,就是把/usr/local/ffmpeg/lib这个目录加入到/etc/ld.so.config中,然后执行 ldconfig,或者重启电脑,这样执行的时候系统就可以从/usr/local/ffmpeg/lib这个目录下去找这三个动态库文件了。

  以上的方式是采用动态库编译ffmpeg的,如果在configure的时候不加上--enable-shared的,则采用静态链接的方式,不会生成那三个动态库。同时生成的ffplay、ffmpeg的执行文件也比较的大,因为他们不需要动态库的支持,就可以执行。但是不利于再次开发,所以我采用动态链接的方式。configure中还有很多的选项,可以通过./configure --help查看,也可以直接查看configure文件。这在配置的时候很重要。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
微信限额20万怎样提到30万 微信怎么提升限额 微信限制额度二十万了怎么办 爱奇艺电视版会员电影没声音 爱奇艺怎么没声音了 爱奇艺万能播放器怎么没声音-爱奇艺播放器没声音修复方法 爱奇艺播放没有声音了怎么回事 主持人刘炽朗诵《采桑子·重阳》 卧室空间大了摆放什么风水好 卧室空间大了摆放什么 中国平安金融集团上海分公司这公司是一家怎样的公司?是骗子吗? wps表格怎么设置网格线的颜色 linux ffmpeg 怎么编64位 Ubuntu 9.10下安装和使用ffmpeg的详细过程! 在WPS里做表格,网格线要怎么才能做出来? linux在安装ffmpeg时怎么将/usr/local/ffmpeg/lib目录设置到LD_LIBRARY_PATH环境变量 linux服务器怎么安装ffmpeg wps表格怎么设置网格型? wps 表格打印时如何显示网格线? wps稿纸设置怎么打印出格子 怎样知道自己的银行卡的开户行是哪个 怎么知道自己银行卡的开户行 怎么知道银行开户行 怎么才能知道银行卡的开户行? 《江南的春天》这篇散文主要描述了三幅画面,分别是哪几幅画面? 太冷了怎么办 摇粒绒和奥利绒哪个好 奥利绒面料掉浮毛吗? 中国优秀传统文化爱的三个含义 什么是情爱 如何理解当代中国的爱国主义有三个层次 linux 怎么升级ffmpeg FFmpeg开发怎么入手? 我想在linux下安装ffmpeg,但是光有ffmpeg包还不行,还要一些库的支持,我网上搜了好久都没搜到。 如何在Linux命令行下收听网络电台 怎样在linux下安装MPEG-1 Layer 3 (MP3) decoder 插件? linux下编译ffmpeg时关于configure的问题. linux下怎么用ffmpeg合并大批量有规律的视 什么是“国际减灾日” 1994年联合国大会决议将国际减灾日定为哪一天 1994年联合国大会将国际减灾日定为哪一天? (是 每年十月的第几个星期... 国际减灾日是什么时候和2010年的主题 为什么叫5月12日防灾减灾日 “国际减灾日”指的是哪一天 什么是用户画像?如何构建用户画像? 怎么构建用户画像? 如何构建互联网产品的用户画像 如何构建预期用户画像? 你好,我想请问华为手机有没有一个单击屏幕就能亮屏的方法? 房产居间合同有效吗? 民法典规定房地产居间合同有法律效力吗