使用#EXT-X-DISCONTINUITY-SEQUENCE [ffmpeg] 下载 ts 流
Downloading ts stream with #EXT-X-DISCONTINUITY-SEQUENCE [ffmpeg]
所以我正在使用 ffmpeg 从 Internet 下载流,但我遇到了其中一个问题,那就是,每隔一段时间,在流的中间,它会发生某种"break" 和这个#EXT-X-DISCONTINUITY-SEQUENCE 标签出现在我开始下载的 .m3u8 文件中。我开始在控制台上收到 "Non monotuonous DTS" 错误,音频和视频开始不同步,最终,我将在下载后播放流,但它不起作用。
有没有什么方法可以使用 ffmpeg 下载这种流,并以某种方式 "skip" 具有此标签的 m3u8 文件或者可能正确地将它们解析为视频?
希望有人能帮助我。
ffmpeg 失败并显示 "Non monotuonous DTS",因为它试图强行合并帧率不完全相同的流(请参阅 https://superuser.com/questions/1150276/trim-video-and-concatenate-using-ffmpeg-getting-non-monotonous-dts-in-output 了解更详细的解释)。
并且由于目前没有选项告诉 ffmpeg 不要合并 m3u8 中由#EXT-X-DISCONTINUITY 分隔的流,唯一的可能性是手动将 m3u8 分成几部分。你在哪里看到#EXT-X-DISCONTINUITY 标签。然后(在使这些片段成为有效的 m3u8 单例之后)将它们全部提供给 ffmpeg。
这会给你几个视频片段,但你可以(听起来很奇怪)使用 ffmpeg 将它们全部合并在一起,使用 concat 命令没有问题 (https://trac.ffmpeg.org/wiki/Concatenate)。
现在,如果只有 ffmpeg 开发者可以添加一个选项,允许在 m3u8 包含#EXT-X-DISCONTINUITY 时不强行合并流,那将是我的一天。
所以我正在使用 ffmpeg 从 Internet 下载流,但我遇到了其中一个问题,那就是,每隔一段时间,在流的中间,它会发生某种"break" 和这个#EXT-X-DISCONTINUITY-SEQUENCE 标签出现在我开始下载的 .m3u8 文件中。我开始在控制台上收到 "Non monotuonous DTS" 错误,音频和视频开始不同步,最终,我将在下载后播放流,但它不起作用。
有没有什么方法可以使用 ffmpeg 下载这种流,并以某种方式 "skip" 具有此标签的 m3u8 文件或者可能正确地将它们解析为视频?
希望有人能帮助我。
ffmpeg 失败并显示 "Non monotuonous DTS",因为它试图强行合并帧率不完全相同的流(请参阅 https://superuser.com/questions/1150276/trim-video-and-concatenate-using-ffmpeg-getting-non-monotonous-dts-in-output 了解更详细的解释)。
并且由于目前没有选项告诉 ffmpeg 不要合并 m3u8 中由#EXT-X-DISCONTINUITY 分隔的流,唯一的可能性是手动将 m3u8 分成几部分。你在哪里看到#EXT-X-DISCONTINUITY 标签。然后(在使这些片段成为有效的 m3u8 单例之后)将它们全部提供给 ffmpeg。
这会给你几个视频片段,但你可以(听起来很奇怪)使用 ffmpeg 将它们全部合并在一起,使用 concat 命令没有问题 (https://trac.ffmpeg.org/wiki/Concatenate)。
现在,如果只有 ffmpeg 开发者可以添加一个选项,允许在 m3u8 包含#EXT-X-DISCONTINUITY 时不强行合并流,那将是我的一天。