在Ubuntu 12.04环境下安装ffmpeg
在Ubuntu和Debian(树莓派)上分别编译安装了ffmpeg,并推送本地摄像头、局域网内RTSP流至ffserver,在局域网内观看http和rtsp流
- 编译安装ffmpeg
- 调用本地摄像头
- 推送至ffserver
编译安装ffmpeg
ffmpeg实际上包括三个部分:
- ffmpeg 编解码,包含了几乎所有常见编解码器
- ffserver 流服务器,响应用户的请求,并将ffmpeg推送的流或本地文件调用ffmpeg按照配置编码后推送给用户
- ffplay 一个简单的播放器
ffmpeg和ffserver的工作需要一个配置文件来协调。
此外,ffmpeg的核心还包括了自己实现的编解码器等:
- libavformat 用于各种音视频封装格式的生成和解析,包括获取解码所需信息以生成解码上下文结构和读取音视频帧等功能;
在Ubuntu或者树莓派上安装ffmpeg时不要直接从仓库安装,否则会出现无法推送流的问题。安装前需要先卸载系统以后的相关解码器,然后重新安装,安装脚本如下:
#!/bin/bash
# Bash script to install latest version of ffmpeg and its dependencies on Ubuntu 12.04 or 14.04
# Inspired from https://gist.github.com/faleev/3435377
# Remove any existing packages:
sudo apt-get -y remove ffmpeg x264 libav-tools libvpx-dev libx264-dev
# Get the dependencies (Ubuntu Server or headless users):
sudo apt-get update
sudo apt-get -y install build-essential checkinstall git libfaac-dev libgpac-dev \
libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev librtmp-dev libtheora-dev \
libvorbis-dev pkg-config texi2html yasm zlib1g-dev
# Install x264
sudo apt-get -y install libx264-dev
cd
git clone --depth 1 git://git.videolan.org/x264
cd x264
./configure --enable-static
make
sudo checkin