3

我很困惑,有点坚持这个问题。我在谷歌上只能找到转码软件的基本用法,与问题无关。

我正在制作一个游戏,我想包括原生捕获能力来流式传输视频。我很想将此流式传输到标准客户端,例如 VLC。它需要采用它可以识别的格式,并且需要多路复用才能使其正常工作。

因此,我的问题是,我知道如何将原始视频帧中的内容编码为 x264(另请参阅如何使用 x264 C API 将一系列图像编码为 H264?)。我知道如何将原始音频样本编码为 ogg/vorbis。现在,我如何将一个和一个放在一起用于 VLC?

4

1 回答 1

3

x264不是流格式。它是一个软件。该软件将视频编码为 H.264 视频格式。AFAIK,它不会将视频+音频混合到 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 回答