我正在尝试使用HTTP直播流(HLS)将视频流式传输到我的计算机和iPhone.在阅读了Apple的"HTTP直播流媒体概述"以及"为iPhone和iPad创建和部署HTTP直播流媒体的最佳实践"后,我有点陷入困境.
我拿了我的源文件(mkv)并使用ffmpeg对MPEG-TS格式和Apple推荐的设置以及Baseline 3.0配置文件进行编码:
ffmpeg -i "example.mkv" -f mpegts -threads:v 4 -sws_flags bicubic -vf "scale=640:352,setdar=16/9,ass=sub.ass" -codec:v libx264 -r 29.970 -b:v 1200k -profile:v baseline -level:v 3.0 -movflags faststart -coder 1 -flags +loop -cmp chroma -partitions +parti8x8+parti4x4+partp8x8+partb8x8 -me_method hex -subq 6 -me_range 16 -g 239 -keyint_min 25 -sc_threshold 40 -i_qfactor 0.71 -b_strategy 1 -qcomp 0.6 -qmin 10 -qmax 51 -qdiff 4 -direct-pred 1 -fast-pskip 1 -af "aresample=48000" -codec:a libvo_aacenc -b:a 96k -ac 2 -y "output.ts"
Run Code Online (Sandbox Code Playgroud)
不用担心.我使用预编译的分段工具来分割视频并构建.m3u8播放列表.结果文件如下所示:
#EXTM3U
#EXT-X-TARGETDURATION:10
#EXTINF:10,
http://localhost/media/stream/stream-1.ts
#EXTINF:10, …Run Code Online (Sandbox Code Playgroud) 我正在尝试在 safari iOS 上使用 Aframe 流式传输 hls,其中 Aframe 在后台具有三个.js。但视频显示黑屏,仅播放音频。视频 src 的类型为 .m3u8。我试图通读很多相关的帖子,但似乎没有一个合适的解决方案。让 HLS 和 WebGL 在 iOS 上运行是一种一厢情愿的想法吗?如果没有,请有人帮我解决一个问题。
关于 github 上可用问题的一些讨论: