2016-07-11 20 views
0

HTTP Live Streamingでライブストリーミングしたいですが、libx264やその他の問題があります。HTTPライブストリーミング(FFmpeg)でlibx264が失敗する

私のハードウェアおよびソフトウェア環境:

  • MacBook Proの
  • VirtualBoxのUbuntuの16.04
  • NginxFFmpeg私は、静的なビデオファイルをストリーミングすることができる午前

(Ubuntuの中)と(UbuntuではNginxとFFmpegで)。

$ffmpeg -i /my/sample/video.mp4 -codec:v libx264 -f hls /output/file.m3u8 

しかし、それはウェブカメラ(ライブストリーミング)になると、Mac OSのSafariは、ストリームをオープンに失敗: FFmpegコマンドは次の通りです。私は私が実際にmpeg2videoエンコーダ、マックOSのSafariを使用した場合、ストリームを再生することができますので、それはlibx264の問題だと思う

$ffmpeg -i /dev/video0 -codec:v libx264 -f hls /output/file.m3u8 

:私は、次のコマンドを使用

$ffmpeg -i /dev/video0 -codec:v mpeg2video -f hls /output/file.m3u8 

私はと呼ばれるライブラリが存在しているはずvideo4linux2、私は自分のウェブカメラをキャプチャするためにvideo4linux2を使うべきですか?しかし、私はHTTPライブストリーミングのための適切なFFmpegコマンドを知りません(FFserverを試しましたが、cannot rename hlsのようなエラーがあります)

誰かが私の問題にいくつかの光を当てていますか?

答えて

1

私はそれを理解しました!

libx264でエンコードされたHTTPライブストリーミングをMacOS Safariで開くことができないのは、Mac OSのデフォルトコーデックがデフォルト出力であるlibx264をサポートしていないためです。

だけFFmpegコマンドに-pix_fmt yuv420pを追加し、すべてが正常に動作します:

$ffmpeg -f video4linux2 -i /your/webcam/path -codec:v libx264 -pix_fmt yuv420p /output/file.m3u8 
関連する問題