我想从 HEVC mkv 文件中提取原始 .265 比特流。我使用这个:
ffmpeg.exe -i hevc.mkv -an -vcodec 复制 -f hevc 比特流.265
我收到此错误:
请求的输出格式“hevc”不是合适的输出格式
但是,HEVC 解复用器已经实现,我可以将其提取为未压缩的原始 YUV。ffmpeg 格式:
File formats:
D. = Demuxing supported
.E = Muxing supported
D hevc raw HEVC video
这里有什么问题?
答案1
H.264/H.265 的原始比特流通常称为 Annex B 格式。您可以使用以下 FFmpeg 命令创建这些文件:
H.265 至附件 B
ffmpeg -i in.mkv -c:v copy -bsf hevc_mp4toannexb out.h265
使用 ffmpeg 和 H.265/HEVC 来实现这个效果。
H.264 至附件 B
对于 H.264 来说略有不同:
ffmpeg -i in.mkv -c:v copy -bsf h264_mp4toannexb out.h264
答案2
我尝试了 Sebastian 的 ffmpeg 解决方案,但对我不起作用。以下是我获取 H.265 比特流的方法。我确实看到有人建议将输出文件扩展名设置为 .bin,但我喜欢 h264/h265,因为它可以更清楚地显示文件包含哪种比特流。
H.265 至附件 B
ffmpeg -i test.mkv -c:v copy -bsf hevc_mp4toannexb -f hevc test.h265
H.264 至附件 B
ffmpeg -i test.mkv -c:v copy -bsf h264_mp4toannexb -f h264 test.h264
注意:这也适用于.mov 文件,也可能适用于其他格式。
答案3
到目前为止,最好的解决方案是使用MKVToolNix。
mkvextract.exe tracks hevc.mkv -f 0:bitstream.265
答案4
您可能需要检查您是否拥有最新版本的 ffmpeg。如果您想要没有音频的视频文件,请尝试以下操作:
ffmpeg -y -i hevc.mkv -codec:v copy videostream.mkv
或者:
ffmpeg -y -i hevc.mkv -codec:v copy videostream.mp4