Video 从二级视频流FFMpeg中提取帧

Video 从二级视频流FFMpeg中提取帧,video,ffmpeg,video-capture,mkv,Video,Ffmpeg,Video Capture,Mkv,我使用FFMpeg并处理一些可以有多个视频流的.mkv视频。如何从其他视频流(不是从主视频流)提取帧?我想使用FFMPeg从每个视频流中提取一帧。有什么想法吗?输入文件布局示例: 视频#0:0 视频#0:1 视频#0:2 音频#0:3 音频#0:4 示例:从视频#0:2输出屏幕截图 从30秒时间戳开始(-ss30) 绝对地图 相对地图 此特定输入的结果与上面相同0:v:1翻译为“从输入#0选择视频流#1”注意,ffmpeg从0开始计数,因此视频流#1实际上是第二个视频流 ffmpeg -ss

我使用FFMpeg并处理一些可以有多个视频流的.mkv视频。如何从其他视频流(不是从主视频流)提取帧?我想使用FFMPeg从每个视频流中提取一帧。有什么想法吗?

输入文件布局示例:
  • 视频#0:0
  • 视频#0:1
  • 视频#0:2
  • 音频#0:3
  • 音频#0:4
示例:从视频#0:2输出屏幕截图 从30秒时间戳开始(
-ss30

绝对地图 相对地图 此特定输入的结果与上面相同<代码>0:v:1翻译为“从输入#0选择视频流#1”注意,
ffmpeg
从0开始计数,因此视频流#1实际上是第二个视频流

ffmpeg -ss 30 -i input.mkv -map 0:v:1 -frames:v 1 output.jpg
我更喜欢使用这种方法,因为您可能很懒,不必知道实际的流映射数

示例:从每个视频流输出一个屏幕截图 也看到
输入文件布局示例:
  • 视频#0:0
  • 视频#0:1
  • 视频#0:2
  • 音频#0:3
  • 音频#0:4
示例:从视频#0:2输出屏幕截图 从30秒时间戳开始(
-ss30

绝对地图 相对地图 此特定输入的结果与上面相同<代码>0:v:1翻译为“从输入#0选择视频流#1”注意,
ffmpeg
从0开始计数,因此视频流#1实际上是第二个视频流

ffmpeg -ss 30 -i input.mkv -map 0:v:1 -frames:v 1 output.jpg
我更喜欢使用这种方法,因为您可能很懒,不必知道实际的流映射数

示例:从每个视频流输出一个屏幕截图 也看到

您可能需要查看:。您可能需要:
ffmpeg-i yourfile.mkv-map 0:1-c copy output.mkv
。看看是否有第二条流。是的,它真的很有效。非常感谢!您可能需要查看:。您可能需要:
ffmpeg-i yourfile.mkv-map 0:1-c copy output.mkv
。看看是否有第二条流。是的,它真的很有效。非常感谢!谢谢你的完整回答!谢谢你的完整回答!
ffmpeg -ss 30 -i input.mkv -map 0:v:0 -frames:v 1 output0.jpg -map 0:v:1 -frames:v 1 output1.jpg -map 0:v:2 -frames:v 1 output2.jpg