我最近购买了一台 Go Pro Hero 3。它工作正常,但当我尝试流式传输实时视频/音频时,它时不时地出现问题。 最初我只是使用 vlc 打开 m3u8 文件,但是当出现问题时我下载了 Android 应用程序并尝试通过它进行流式传输。 在应用程序上好一点。 我使用了wireshark,我认为其原因是它的传输/缓冲速度不够快。试图用 wget 循环获取所有内容,它在它之前经历了 3 个循环: catch (可能,但我不这么认为......尽管我可能会仔细检查)或落后,因此超时/挂起。 图像也有延迟,但我可以忍受。 我尝试降低分辨率/帧速率,但我不确定它是否真的在做任何事情,因为我看不出任何区别。我认为这可能只是 go pro 上录制的设置。不管怎样,它都不起作用。 本质上我正在寻找任何可能的方法来消除这种“故障” 我当前的计划是尝试用 python 编写一些东西来通过 UDP 获取文件(无 TCP 开销)。
我只是添加一些更多的细节/症状:
Go Pro 使用 Apple m3u8 流格式。 任何时候该文件夹中都会有 16 个 .ts 文件。 (每个 26 Kb) 这些在循环(循环缓冲区)中被覆盖
当我在 vlc 上直播时:
大约 1 秒的延迟 - 流媒体正常播放约 0.5 秒,停止时间稍短,然后重复。 我认为正在发生的事情是它尝试传输的文件被覆盖,导致它超时。
通过 Android 应用程序:
延迟更少,“超时”更短,但仍然存在
我想编写一个 python 脚本来尝试获取连续图像。这些文件足够小,应该适合单个 UDP 数据包(我认为...... 65Kb 左右吧?)
我可以改变笔记本电脑上的 WiFi 设置来改善它吗? 即有些人如何致力于此?
谢谢, 斯蒂芬
最佳答案
我最近一直致力于为 Node.js 创建 GoPro API,并发现该设备也非常有问题。安装最新的gopro固件(3.0.0)后更加稳定。
至于流媒体,我无法解决 WiFi 延迟问题,因此采用了记录和复制方法。
关于python - Gopro Hero 3 - 通过 wifi 传输视频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18227789/