我有一个原始视频,我可以通过gstreamer播放:
gst-launch-1.0 ... autovideoconvert ! autovideosink
我可以对此视频进行编码:
gst-launch-1.0 ... ! autovideoconvert ! x264enc ! h264parse ! mp4mux ! filesink location=a.mp4
我现在想把这个原始视频放在一个mp4容器中,#34;无损",没有任何压缩。我怎么能这样做?
答案 0 :(得分:0)
你在问题中回答了。不要压缩
gst-launch-1.0 ......! autovideoconvert! mp4mux! filesink location = a.mp4
但是你知道,没有压缩,这个文件会很大(GBytes。)
答案 1 :(得分:0)
我认为我不能使用mp4mux,但qtmux接受raw-uyvy。以下作品:
gst-launch-1.0 ... ! autovideoconvert ! "video/x-raw,format=(string)UYVY" ! qtmux ! filesink location=a.mov
答案 2 :(得分:0)
有时源数据不适合重新复用,但如果是这样的管道应该有效:
gst-launch-1.0 filesrc location = ...! [DEMUX]! h264parse! qtmux! filesink location = ...
h264数据具有不同的“流格式”和“对齐”。流格式为avc,avc3和byte-stream。可能的对齐是au和nal。不同的复用器采用不同的组合。如有必要,h264parse将进行转换。
要重新迭代,有时源数据不会重新复用到所需的容器中。这取决于很多因素。