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下。
执行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文件。这在配置的时候很重要。
分享到:
相关推荐
本教程将详细讲解如何在Linux环境下安装FFmpeg,以及所需的解码器,确保你可以全面利用FFmpeg的功能。 首先,让我们了解FFmpeg的基本概念。FFmpeg是一个开源的跨平台项目,它包含了一系列的库,如libavcodec(编码/...
如果在安装过程中遇到任何问题,可能需要查阅FFmpeg的官方文档或社区论坛寻求帮助。 总结来说,在CentOS 6.5上安装FFmpeg涉及准备编译环境、安装依赖库、下载源代码、配置编译选项、编译源代码和最后的安装步骤。这...
以下是对"linux下安装FFmpeg命令,亲测可用"这一主题的详细解释。 1. **FFmpeg简介** FFmpeg是跨平台的音频和视频处理工具,包含了一系列的命令行工具,如ffmpeg、ffplay、ffprobe等,用于编码、解码、转码、合并、...
这样的脚本适用于不熟悉编译流程的新手,也方便了对FFmpeg有需求但不想花费过多时间在安装上的用户。 值得注意的是,使用第三方的一键安装脚本时,需要确保脚本来源可信,避免引入潜在的安全风险。同时,由于脚本...
### Linux下安装ffmpeg库 #### 知识点一:FFmpeg简介及用途 - **FFmpeg**是一款强大的跨平台音视频处理工具集,能够进行音视频的编码、解码、转码、复用、解复用、流媒体传输、滤镜处理等功能。 - 它包含了一系列...
在Linux环境下,Qt5是一个强大的跨平台应用开发框架,它提供了丰富的图形用户界面(GUI)组件和工具,而FFmpeg则是一个开源的多媒体处理库,支持音频、视频的编码、解码、转换和流媒体功能。将FFmpeg与Qt5结合,可以...
Linux下的SVCAC视频解码库是一个专门针对国标SVCAC编码格式的解码工具,它能够在Linux操作系统上运行,为开发者提供SVCAC到H264的转换功能。SVCAC(Secure Video Coding for Audio and Communication)是一种安全...
以下是一份详细的FFmpeg在Linux上的安装教程。 首先,我们需要准备必要的依赖库和编译工具。在大多数Linux发行版中,这通常包括`make`、`gcc`、`yasm`和`nasm`。`nasm`是Netwide Assembler,用于处理x86汇编语言...
在Linux环境下安装FFmpeg是一项常见的任务,特别是在进行多媒体处理或流媒体服务时。FFmpeg是一个强大的开源工具,用于处理音频和视频文件,包括转换、编码、解码、封装和流化。下面将详细介绍如何在Linux系统中安装...
以下是在Linux下安装FFmpeg及其依赖库的详细步骤: 首先,确保你的系统已经安装了必要的编译工具,如GCC和make。如果没有,可以通过包管理器进行安装。例如,在Ubuntu或Debian上运行: ```bash sudo apt-get update...
根据给定的文件信息,我将详细介绍...在安装和使用FFmpeg时,需要注意配置环境、选择合适的安装选项、理解关键的源码结构和函数、掌握编解码流程。通过实践操作,可以深入理解和掌握FFmpeg在多媒体处理方面的强大能力。
FDK-AAC(Fraunhofer Development Kit for Advanced Audio Coding)是来自Fraunhofer IIS的AAC编解码器,它是高质量音频编码的标准之一,特别是在移动设备上广泛使用。 在iOS开发中,集成FFmpeg+FDK-AAC库可以提供...
在Linux环境下编译FFmpeg时,这些库是必不可少的组件,它们共同提供了FFmpeg对多种音视频格式的全面支持。正确配置和编译这些库后,开发者可以构建出一个功能强大的多媒体处理工具,满足各种音视频处理需求。
本项目专注于使用FFmpeg在Ubuntu操作系统上解码h264格式的视频流,将其转换为YUV格式的文件,这对于视频处理和分析任务非常有用。 首先,我们需要了解h264编码。h264,也称为AVC(Advanced Video Coding),是一种...
为了在Linux上编译这些.c文件,你需要一个合适的C编译器,如GCC,并且可能需要链接FFmpeg库,因为解码器可能会依赖于FFmpeg的其他组件。你还需要确保所有必要的头文件和库文件路径正确。这通常涉及到设置编译器的...
### ffmpeg在Redhat Linux上的安装步骤详解 #### 一、前言 在Redhat Linux环境下安装ffmpeg是一项常见的任务,特别是对于需要处理视频音频文件的开发者来说尤为重要。本文将详细介绍如何在Redhat Linux系统上安装...
在Linux环境下,FFmpeg的部署通常涉及到下载源代码、编译安装、配置环境变量等多个步骤。以下将详细介绍在CentOS系统下部署FFmpeg的过程。 1. **下载FFmpeg源代码** 首先,你需要从FFmpeg官方网站或Git仓库获取...
首先,我们需要在Linux系统上安装FFmpeg。通常可以通过添加官方仓库并执行apt-get或yum命令来安装。例如,在Ubuntu上: ```bash sudo add-apt-repository ppa:jonathonf/ffmpeg-4 sudo apt-get update sudo apt-get...
总结来说,嵌入式Linux下基于FFmpeg的视频硬件编解码涉及到FFmpeg的多媒体处理流程、S3C6410处理器的硬件编解码特性以及如何在两者之间建立桥梁。这种结合不仅提高了视频处理的效率,也降低了对嵌入式设备资源的需求...
而WebAssembly(简称WASM)是一种低级虚拟机指令集,它允许在浏览器中运行接近原生速度的代码,为FFmpeg在Web端的应用提供了可能。 首先,你需要在Linux系统上安装必要的依赖。这通常包括GCC交叉编译工具链、...