3

私は混乱していて、この質問に少し行き詰まっています。Googleで見つけることができるのは、質問とは関係のないトランスコーディングソフトウェアの基本的な使用法だけです。

私はゲームを作成しており、ビデオをストリーミングするためのネイティブ キャプチャ機能を含めたいと考えています。これを VLC などの標準的なクライアントにストリーミングしたいと思います。これを機能させるには、認識できる形式である必要があり、多重化する必要があります。

したがって、私の質問は、生のビデオ フレームから x264 にエンコードする方法を知っていることです ( x264 C API を使用して一連の画像を H264 にエンコードする方法も参照してください)。生のオーディオ サンプルを ogg/vorbis にエンコードする方法を知っています。では、VLC 用に 1 対 1 を組み合わせるにはどうすればよいでしょうか。

4

1 に答える 1

3

x264ストリーム形式ではありません。それはソフトウェアの一部です。このソフトウェアは、ビデオを H.264 ビデオ形式にエンコードします。私の知る限り、ビデオとオーディオを MP4 または AVI コンテナー ファイルに多重化することはありません。完全なスイートについては、ffmpeg/libav を調べてください。ビデオとオーディオのストリームを多重化するプログラムは他にもあります。

これが私が行った実験です:

youtube-dl "http://www.youtube.com/watch?v=0Bmhjf0rKe8"
avconv -i 0Bmhjf0rKe8.flv -vn -c:a libvorbis -b:a 64k 0Bmhjf0rKe8.ogg
avconv -i 0Bmhjf0rKe8.flv -c:v copy -bsf:v h264_mp4toannexb -an 0Bmhjf0rKe8.h264
avconv -i 0Bmhjf0rKe8.h264 -i 0Bmhjf0rKe8.ogg -c copy 0Bmhjf0rKe8.mkv
mplayer 0Bmhjf0rKe8.mkv
avconv -i 0Bmhjf0rKe8.flv -i 0Bmhjf0rKe8.ogg -c copy -map 0:0 -map 1:0 0Bmhjf0rKe8.mp4
mplayer 0Bmhjf0rKe8.mp4

libav を使用してプログラムでそれを行うことができるはずです。

于 2012-04-14T18:47:58.873 に答える