gpt4 book ai didi

video - 使用媒体源 api 对不同 gop 大小的 mp4 进行自适应比特率流式传输

转载 作者:行者123 更新时间:2023-12-04 23:24:35 24 4
gpt4 key购买 nike

我想要不同 gop 关键帧大小的 mp4 视频的自适应比特率流。

我知道多比特率流媒体有几个选项,即 hls、dash 等

但我已经在服务器上上传了视频,每个视频都有 360p、480p 和 720p mp4 文件,每个视频都有不同的关键帧间隔。

所以真正的挑战是使用媒体源 api 制作自己的多比特率 mp4 媒体播放器

我在各个方面都进行了头脑 Storm 。

我们只能在关键帧处剪切 h264

所以我真正的挑战是了解视频每个关键帧、关键帧 block 持续时间、偏移持续时间和 mp4 文件中的偏移字节位置。

所以我的问题是如何使用 ffmpeg、ffprobe 或任何其他软件获得这些关注。

1-关键帧 block 持续时间

2- 偏移视频时长

3- 视频中的偏移字节位置。

以下 ffprobe 命令给出了每个关键帧的详细信息,也许这会有所帮助

ffprobe -i "1080p.mp4" -select_streams v -skip_frame nokey -show_frames

谢谢!

最佳答案

运行这个命令,

ffprobe -loglevel error -skip_frame nokey -select_streams v:0 -show_entries frame=pkt_dts_time,pkt_pos -of csv "video.mp4"

然后
pkt_dts_time为 GOP 提供“偏移视频持续时间”。
pkt_pos为 GOP 的开始提供“偏移字节位置”。
pkt_dts_time 之间的区别关键帧和 pkt_dts_time下一个关键帧的时间是“关键帧 block 持续时间”。

请注意,您只能通过重新编码视频来更改关键帧位置。如果您正在重新编码,则输入视频的关键帧位置无关紧要。见 -force_key_frameshttps://ffmpeg.org/ffmpeg.html#Advanced-Video-options 下关于如何在固定位置强制 KF。

关于video - 使用媒体源 api 对不同 gop 大小的 mp4 进行自适应比特率流式传输,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53907652/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com