我在我的 Android 应用程序中使用 libVLC 从我通过 WiFi 连接的相机通过 rtsp 流式传输视频。
一般来说,流媒体工作正常,但如果我通过 WiFi(不提供互联网)连接相机并且还打开了移动数据,则似乎存在流媒体问题。我bindProcessToNetwork
用来确保流媒体是通过我的 WiFi 网络完成的。在某些设备(如搭载 Android 9 的华为 Mate 10)上,流媒体工作正常(似乎使用 WiFi 并忽略开启移动数据),但在其他设备(如搭载 Android 10 的三星 Note 10)上,当我使用新的网络 API 时似乎 VLC 正在尝试通过移动数据进行连接,并且只有在失败一段时间后,它才决定使用我相机的 WiFi(尽管我使用了bindProcessToNetwork
)。我收到错误日志
VLC-std: Unable to determine our source address: This computer has an invalid IP address: 0.0.0.0
令人惊讶的是,如果我从系统设置连接到我的 WiFi,它工作正常......
我发现一些评论说媒体流是在一个单独的过程中完成的,它忽略了调用,bindProcessToNetwork
但在某些设备(和 Android 版本)上似乎可以工作,而在其他设备上则不行。
我已经在 Videolan 论坛上问过这个问题,但没有运气。
有没有办法强制 libVLC 使用指定的网络进行流式传输?