gpt4 book ai didi

android - 适用于 Android 和 IOS 的 FFMPEG HLS 流

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:37:03 25 4
gpt4 key购买 nike

我正在尝试使用 ffmpeg 和 apache2.2 流式传输到移动设备,但我没有成功。

我使用此命令创建 fragment 和播放列表:

ffmpeg -i http://x.x.x.x:8080 -codec:v libx264 -r 25 -pix_fmt yuv420p -profile:v baseline -level 3 -b:v 500k -s 640x480 -codec:a aac -strict experimental -ac 2 -b:a 128k -movflags faststart -flags -global_header -map 0 -f hls  -hls_time 10 -hls_list_size 5 -hls_allow_cache 0 -sc_threshold 0 -hls_flags delete_segments -hls_segment_filename out%05d.ts list.m3u8

源是由 VLC 媒体播放器流式传输的 http 流。

list.m3u8 文件的示例内容:

#EXTM3U
#EXT-X-VERSION:3
#EXT-X-ALLOW-CACHE:NO
#EXT-X-TARGETDURATION:10
#EXT-X-MEDIA-SEQUENCE:89
#EXTINF:10.000000,
out00089.ts
#EXTINF:10.000000,
out00090.ts
#EXTINF:10.000000,
out00091.ts
#EXTINF:10.000000,
out00092.ts
#EXTINF:9.000000,
out00093.ts
#EXT-X-ENDLIST

我创建了另一个播放列表文件 - playlist.m3u8:

#EXTM3U
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=512000
http://x.x.x.x/list.m3u8

如果我在 VLC 媒体播放器中打开这个 (playlist.m3u8) 文件,它就会播放。它也适用于带有 Video-js 插件 flash 回退的桌面 chrome 和桌面 firefox 浏览器。

我将正确的 MIME 类型设置为 .htaccess 文件中的 .ts 和 .m3u8 文件:

AddType application/x-mpegURL .m3u8
AddType video/MP2T .ts

playlist.m3u8 的 FFprobe 输出:

Input #0, hls,applehttp, from 'playlist.m3u8':
Duration: N/A, start: 1.400000, bitrate: N/A
Program 0
Metadata: variant_bitrate : 512000
Stream #0:0: Video: h264 (Constrained Baseline) ([27][0][0][0] / 0x001B), yuv420p, 640x480 [SAR 1:1 DAR 4:3], 25 fps, 25 tbr, 90k tbn, 50 tbc
Metadata: variant_bitrate : 512000
Stream #0:1: Audio: aac (LC) ([15][0][0][0] / 0x000F), 44100 Hz, stereo, fltp, 128 kb/s
Metadata: variant_bitrate : 512000

我应该怎么做才能让它发挥作用?

更新

如果我提供指向 list.m3u8 文件(由 ffmpeg 创建)的链接,它会起作用。

最佳答案

注意 .m3u8 流在 Android 设备上不完全支持,

"I have seen a lot of people have problems playing .M3U8, it depends on the codecs used for the streaming and compatibility with the device, for example some of my .m3u8 files are only supported in devices with screens of 1200 x800 and higher."

来源:Play m3u8 video in android

喜欢使用 .mp4 streaming 的选项,或者您可以使用像这样的框架:, https://www.vitamio.org/en/

关于android - 适用于 Android 和 IOS 的 FFMPEG HLS 流,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28723993/

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