【问题标题】:Delete stream from video file ffmpeg [duplicate]从视频文件ffmpeg中删除流[重复]
【发布时间】:2021-06-29 12:19:47
【问题描述】:

如何从该视频文件中删除最后一个流?

$ ffmpeg -i video.mp4
...
    Stream #0:0(und): Video: h264 (High 4:2:2) (avc1 / 0x31637661), yuv422p10le, 480x270 [SAR 1:1 DAR 16:9], 172 kb/s, 25 fps, 25 tbr, 12800 tbn, 50 tbc (default)
    Metadata:
      handler_name    : SoundHandler
      timecode        : 00:00:00:00
    Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 119 kb/s (default)
    Metadata:
      handler_name    : SoundHandler
    Stream #0:2(eng): Data: none (tmcd / 0x64636D74)
    Metadata:
      handler_name    : SoundHandler
      timecode        : 00:00:00:00
At least one output file must be specified

我想删除名为 Stream #0:2 的流。

我试过了

ffmpeg -i video.mp4 -map 0 -map -0:2 out.mp4

但这仍然有三个流。

我也试过

ffmpeg -i video.mp4 -map 0 -map -0:d:0 out.mp4

-map -0:d根据我对this answer的解释,但ffmpeg -i的结果仍然显示输出中有三个轨道。

这两个我也试过

ffmpeg -i in.mp4 -c:v copy -c:a copy -map_chapters -1 out.mp4
ffmpeg -i in.mp4 -c copy -dn -map_metadata:c -1 out.mp4

来自this question,但都不起作用。仍然有三个流,它们看起来与ffmpeg -i in.mp4

【问题讨论】:

    标签: ffmpeg


    【解决方案1】:

    我终于找到了一种可行的方法:https://superuser.com/a/685911/325613

    ffmpeg -i 01300.mov -filter_complex "[0:v]null[video_out];[0:a]anull[audio_out]" -map [video_out] -map [audio_out] out.mov
    

    在 zsh 中我不得不逃避这些:-map \[video_out\] -map \[audio_out\]

    【讨论】:

    猜你喜欢
    • 2017-08-10
    • 2021-11-04
    • 1970-01-01
    • 2017-04-19
    • 1970-01-01
    • 2016-11-04
    • 1970-01-01
    • 2012-12-06
    • 1970-01-01
    相关资源
    最近更新 更多