gpt4 book ai didi

ffmpeg - 以编程方式进行 HLS 直播

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

我在 android 上使用 ffmpeg 3.4 版本的源代码。我尝试使用它来复用音频/视频元素流作为 m3u8 输出并使用以下选项:

    int num = av_opt_set_from_string(outputFormatContext->priv_data,
"hls_list_size=6;start_number=1;hls_wrap=10;hls_time=10; hls_segment_size=500000;",NULL,"=",";");
if (num < 0) {
LOGI("av_opt_set_from_string return error (0x%X) %d",num,num);
}

它可以工作,但只输出一个文件(例如 test1.ts),关闭实例后,它将生成一个 m3u8 文件,如下所示:
#EXTM3U
#EXT-X-VERSION:4
#EXT-X-TARGETDURATION:52
#EXT-X-MEDIA-SEQUENCE:0
#EXTINF:51.600000,
#EXT-X-BYTERANGE:47199280@0
test1.ts
#EXT-X-ENDLIST

但是,如果我从终端运行以下命令:
ffmpeg -i test.mp4 -codec copy -hls_time 10 test.m3u8

它将正确生成 ts 段(10 秒):
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:11
#EXT-X-MEDIA-SEQUENCE:1
#EXTINF:10.666667,
test1.ts
#EXTINF:10.666667,
test2.ts
#EXTINF:10.666667,
test3.ts
#EXTINF:10.666667,
test4.ts
#EXTINF:9.633333,
test5.ts
#EXT-X-ENDLIST

如何让我的程序生成 ts 段作为实时流媒体源?

最佳答案

看看hls_segment_size=500000减小分段大小。

关于ffmpeg - 以编程方式进行 HLS 直播,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47765178/

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