linux在系统资源利用上确实要比windows强很多,所以对于转码工作我们也放到linux平台上,下面就来讲下在linux配置ffmpeg来打造一个转码的环境。
首先我们需要以下的解码包,地址如下
xvidcode http://www.xvid.org/Downloads.43.0.html#c23
yasm http://www.tortall.net/projects/yasm/wiki/Download
amr code http://www.penguin.cz/~utx/amr
faac http://sourceforge.net/project/showfiles.php?group_id=704
lame http://sourceforge.net/project/showfiles.php?group_id=290&package_id=309
其他解码 http://www.mplayerhq.hu/MPlayer/releases/codecs/
ffmpeg http://www.ffmpeg.org/download.html
x264 http://downloads.videolan.org/pub/videolan/x264/snapshots/
使用包如下
amrnb-7.0.0.2.tar.bz2
amrwb-7.0.0.3.tar.bz2
faac-1.28.tar.bz2
faad2-2.7.tar.bz2
lame-398-2.tar.gz
yasm-0.8.0.tar.gz
x264-snapshot-20090426-2245.tar.bz2 这个可以去上面的网站下载最新的snapshot文件
xvidcore-1.2.1.tar.gz
ffmpeg-checkout-snapshot.tar.bz2 这个可以去上面的网站下载最新的checkout文件,当然也可以使用svn获取最新的文件
其他编码的解码插件请下载all-20071007.tar.bz2包就行了
下面就来说下安装步骤,总体来说安装步骤还是很容易的,讲所有下载好的包放到当前用户根目录下的ffmpeg文件夹中
cd ~/ffmpeg/ cd ~/ffmpeg/ cd ~/ffmpeg/ cd ~/ffmpeg/ cd ~/ffmpeg/ cd ~/ffmpeg/ cd ~/ffmpeg/ cd ~/ffmpeg/ cd ~/ffmpeg/ mkdir -p /usr/local/lib/codes |
以上安装完毕之后,编辑/etc/ld.so.conf文件加入如下内容
/usr/local/lib
保存退出后执行ldconfig命令,然后执行ffmpeg命令就能看到如下显示了
FFmpeg version SVN-r18631, Copyright (c) 2000-2009 Fabrice Bellard, et al. configuration: --enable-gpl --enable-shared --enable-libmp3lame --enable-libvorbis --enable-libamr-nb --enable-libamr-wb --enable-libxvid --enable-libx264 --enable-libfaac --enable-libfaad --enable-libfaadbin --enable-pthreads --disable-ffserver --disable-ffplay --enable-nonfree --enable-postproc --extra-ldflags=-ldl libavutil 50. 3. 0 / 50. 3. 0 libavcodec 52.27. 0 / 52.27. 0 libavformat 52.32. 0 / 52.32. 0 libavdevice 52. 2. 0 / 52. 2. 0 libswscale 0. 7. 1 / 0. 7. 1 libpostproc 51. 2. 0 / 51. 2. 0 built on Apr 27 2009 15:23:16, gcc: 4.1.2 20071124 (Red Hat 4.1.2-42) |
可能各位的显示结果会和我的不同。
以上配置完毕后,生产mp4文件的转码系统就算是搭建好了,不过这样生产出来的mp4文件是不支持渐进式下载的,所以还需要对生产出来的mp4文件进行处理,那个就是MP4Box这个软件的工作了,接下来就讲下MP4Box安装步骤
yum -y install freeglut yum -y install freeglut-devel wget http://downloads.sourceforge.net/gpac/gpac-0.4.5.tar.gz wget http://downloads.sourceforge.net/gpac/gpac_extra_libs-0.4.5.tar.gz tar zxvf gpac-0.4.5.tar.gz tar zxvf gpac_extra_libs-0.4.5.tar.gz cd gpac cp -r ../gpac_extra_libs/* extra_lib/ chmod +x configure ./configure make lib make apps make install cp bin/gcc/libgpac.so /usr/lib |
再安装完MP4Box之后同样要执行一次ldconfig命令,然后执行MP4Box -version命令后可以看到如下内容
# MP4Box -version MP4Box - GPAC version 0.4.5 (build 33) GPAC Copyright: (c) Jean Le Feuvre 2000-2005 (c) ENST 2005-200X |
这样一来所有的工作就都做完了,剩下的就是按照自己的需要写ffmpeg的转码脚本了
问题解决:
在安装MP4Box的时候可能会出现下面的问题
/usr/bin/ld: skipping incompatible /usr/lib/libGL.so when searching for -lGL/usr/bin/ld: cannot find -lGLcollect2: ld returned 1 exit statusmake[1]: *** [libgpac.so] Error 1make[1]: Leaving directory `/root/gpac/src'make: *** [lib] Error 2
原因是mesa-libGL-devel这个包可能不完整,直接使用yum -y install mesa-libGL-devel命令把这个包安装一下,然后在make的时候就正常了。
相关推荐
ffmpeg既可以播放视频,也提供命令行工具来处理视频,另外还有强大的视频处理库用于开发,下面是以Linux为例介绍ffmpeg的安装流程的简单的命令行对视频进行转码操作。 Linux服务器安装ffmpeg+libx264+libmp3lame
ffmpeg服务器转换视频切片上传oss服务,ffmpeg将mp4视频转m3u8、ts,上传oss实现项目视频分片加载,防用户下载
此代码是在android ffmpeg de的基础上增加新的功能模块(参考csdn雷霄骅大神的博客写的) ...本人使用win8下安装vmware workstation Ubuntu kylin 14.04 android-ndk64-r10-linux-x86_64.tar.bz2 ffmpeg-2.8.tar.bz2
FFmpeg的处理能力不仅限于本地文件,它还支持网络传输协议,如RTSP、RTMP、HLS等,这意味着用户可以使用FFmpeg来搭建自己的直播服务器或者视频点播系统,并实现更高效的数据传输和服务。同时,FFmpeg还支持多种视频...
Universal Media Server 是符合DLNA标准的UPnP媒体服务器。...有关如何在Mac上安装和使用通用媒体服务器实用程序的分步说明,请参见帮助菜单。通用媒体服务器是跨平台的,它适用于macOS,Windows和Linux。
FFmpeg是领先的多媒体框架,能够解码、编码、转码、多路复用、双路复用、流、过滤和播放几乎任何人类和计算机创造的媒体。多媒体视频处理工具FFmpeg有非常强大的功能包括视频采集功能、视频格式转换、视频抓图、给...
所有模块都是在Alpine Linux上从源代码构建的,并且它正在使用Supervisor启动Nginx。特征后端是带有nginx-rtmp-module的Nginx 。 FFmpeg用于转码和自适应流。 默认设置: RTMP已开启HLS已启用(自适应,5个变体) ...
FFmpeg是领先的多媒体框架,能够解码、编码、转码、多路复用、双路复用、流、过滤和播放几乎任何人类和计算机创造的媒体。多媒体视频处理工具FFmpeg有非常强大的功能包括视频采集功能、视频格式转换、视频抓图、给...
这个应用程序使用 ffmpeg,一个免费的开源媒体转码器,支持所有浏览器。 如何使用 要求 Unix 变体操作系统(OSX、Linux、BSD 等) 新产品管理 目前,服务器仅支持类 Unix 操作系统。 Windows 支持尚未经过测试。 ...
此Docker映像可用于创建开箱即用的视频流服务器,该服务器支持 , 和 。 它还允许自适应流传输和视频流的自定义转码。 所有模块均基于Debian和Alpine Linux基础映像上的源代码构建。 特征 后端是带有 。 用于转码和...
描述此Docker映像可用于创建开箱即用的视频流服务器,该服务器支持 , 和 。 它还允许自适应流传输和视频流的自定义转码。 所有模块均基于Debian和Alpine Linux基础映像上的源代码构建。特征后端是带有 。 用于转码...
因为它是用 Java 编写的,所以 PS3 媒体服务器支持所有主要操作系统,包括适用于 Windows、Linux 和 Mac OS X 的版本。该程序只需很少或无需配置即可流式传输或转码许多不同的媒体格式。 它由 MEncoder、FFmpeg、...
rtsp视频流转化成m3u8格式(海康威视视频监控web解决方案)
由于PS3 Media Server是用Java编写的,因此它支持所有主要的操作系统,以及适用于Windows,Linux和Mac OS X的版本。该程序几乎无需配置即可流式传输或转码许多不同的媒体格式。 它由MEncoder,FFmpeg,tsMuxeR和...
通用媒体服务器是符合 DLNA 标准的 UPnP 媒体服务器 通用媒体服务器支持所有主要操作系统,包括适用于 Windows、Linux 和 Mac OS X 的版本。该程序只需很少或无需配置即可流式传输或转码多种不同的媒体格式。 UMS 由...
Universal Media Server是兼容DLNA的DLNA的UPnP媒体服务器。Universal Media Server支持所有主要操作系统,并具有适用于Windows,Linux和Mac OS X的版本。该程序几乎无需配置即可流式传输或转码许多不同的媒体格式。...