2017年4月20日 星期四

下載 ffmpeg-3.3 自行編譯,讓它支援 pthreads, librtmp, libx264, libvpx, libx265, libvorbis, libmp3lame, libass 方便轉換影音檔

1. 上官網先下載原始碼(source code) 並解壓縮:
    wget http://ffmpeg.org/releases/ffmpeg-3.3.tar.bz2
    tar -xvf ffmpeg-3.3.tar.bz2
    cd ffmpeg-3.3
或是利用 git 複製出整個 repository:
    git clone https://git.ffmpeg.org/ffmpeg.git

2. 下載編譯環所需要的標頭檔:
sudo apt-get install librtmp-dev libx264-dev libvpx-dev libx265-dev libvorbis-dev libmp3lame-dev libass-dev yasm

3. 設定環境並開始編譯:
  ./configure --enable-gpl --enable-pthreads --enable-librtmp  --enable-libx264 --enable-libvpx --enable-libx265 --enable-libvorbis --enable-libmp3lame --enable-libass
  make

4. 複製 ffmpeg 到 /usr/bin
   sudo cp ffmpeg /usr/bin


5. 一些使用 ffmpeg 的範例:
   列出 webcam 支援的格式:
       ffmpeg -f v4l2 -list_formats all -i /dev/video0
   
   讓 ffmpeg 在背景擷取 webcam 影像,轉換產生 http live streaming (HLS) 所需要的檔案:
   ffmpeg -f v4l2 -i /dev/video0 -hls_flags delete_segments playlist.m3u8

   讓 ffmpeg 在背景擷取mp4檔案,轉換產生每個ts檔大約是10秒的HLS檔案:
   ffmpeg -i oceans.mp4 -hls_time 10 playlist.m3u8

   
   架設 http live streaming server 只要架設好 http server,再將轉換完成的HLS檔案放在讓 HLS client 可以下載到的地方,一旦下載完 playlist.m3u8 就可以隨後播放裡面的ts影片擋了.

沒有留言: