ios - 无需编码的 Http 直播

标签 ios iphone video-streaming m3u8 http-live-streaming

我有直播电视 channel 的 MPEG-TS H.264 视频流,我想为 iPhone 直播它,但由于 HLS 需要制作片段(例如:10s)片段并使用 M3u8 发送。为此,我目前正在使用互联网上提供的 ffmpeg 和 m3u8-segmenter。但我不想使用 ffmpeg 使用转码,因为我的硬件有内存 + 处理器限制。是否可以只将 MPEG-TS 视频分段并直接发送到 iPhone。

我试了很多方法都做不到。我正在使用基于 Linux 的系统。

求助,不转码直播到iphone的流程是什么

谢谢

最佳答案

解决这个问题的最佳方法是完全删除 FFmpeg。尽管您可以强制 FFmpeg 不进行转码(通过使用 -c copy),但由于视频在直播时已经是 MPEG-TS 格式,因此最好直接使用它。

由于看起来视频是通过 HTTP 传输的,您可以使用 curl 将其打印到标准输出:

curl http://localhost:6954/myvideo.ts | ./m3u8-segmenter -i - -d 10 -p 输出目录/前缀 -m 输出目录/output.m3u8 -u http://domain.com

或者如果你想使用wget而不是curl,它是类似的

wget -O - http://localhost:6954/myvideo.ts | ./m3u8-segmenter -i - -d 10 -p 输出目录/前缀 -m 输出目录/output.m3u8 -u http://domain.com

wgetcurl 可能已经安装在您的系统上。

关于ios - 无需编码的 Http 直播,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26942013/

相关文章:

iphone - 将数据从免费的 iOS 版本复制到我的应用程序的完整版本?

ios - 这个 observeValueForKeyPath 有什么问题 :ofObject:change:context: implementation?

iOS 本地化(在应用程序中设置)

iphone - 从 block 返回 UIImage

iphone - 为什么这个 Objective-C 代码会泄漏内存?

ffmpeg - 如何使用 ffmpeg 命令生成 RTMP 测试流?

objective-c - 检测长按 UINavigationItem 的后退按钮

iOS 网络事件指示器未显示

ffmpeg - 使用网络摄像头使用 ffmpeg 进行非常低的延迟流式传输

video - 具有多个实时流输入的 ffmpeg 在过滤器后添加异步延迟