gpt4 book ai didi

ffmpeg hls 记录持续时间是 float 而不是整数

转载 作者:行者123 更新时间:2023-12-04 22:55:57 32 4
gpt4 key购买 nike

我正在尝试使用 .m3u8 中的以下命令记录 rtsp 流格式。

~/bin/ffmpeg -r 15 -i rtsp://wowzaec2demo.streamlock.net/vod/mp4:BigBuckBunny_115k.mov -codec copy -hls_list_size 65535 -hls_time 2 -g 2 "./1/live.m3u8"

以上与旧版本的 ffmpeg(<3.0) 和 m3u8 文件内容的工作正常,就像,

直播.m3u8 用旧的ffmpeg
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:2
#EXT-X-MEDIA-SEQUENCE:0
#EXTINF:2,
live0.ts
#EXTINF:2,
live1.ts
#EXTINF:2,
live2.ts
#EXTINF:0,
live3.ts
#EXT-X-ENDLIST

请注意,持续时间是整数。

但是当我构建新的 ffmpeg3.0 并运行相同的命令时,持续时间会更改为 float 一些东西,例如,

直播.m3u8 新的ffmpeg3.0
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:4
#EXT-X-MEDIA-SEQUENCE:0
#EXTINF:2.000000,
live0.ts
#EXTINF:2.000000,
live1.ts
#EXTINF:2.000000,
live2.ts
#EXTINF:2.000000,
live3.ts
#EXTINF:2.000000,
live4.ts
#EXTINF:3.875000,
live5.ts
#EXT-X-ENDLIST

我需要生成 ts使用 ffmpeg 3.0 将持续时间作为整数变量的文件。

为什么会在 ffmpeg 3.0 中发生这种情况,而它在旧版本中运行良好?

最佳答案

从 HLS 版本 3 开始,EXTINF持续时间表示为浮点值。仅对于版本 2 和更早版本,它们才需要是整数。

关于ffmpeg hls 记录持续时间是 float 而不是整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36495082/

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