我在我的Android应用程序中使用libVLC,通过WiFi连接的摄像头通过rtsp传输视频。
一般来说,流媒体工作得很好,但如果我通过WiFi (它不提供互联网)连接摄像头,并且打开了移动数据,那么似乎就会出现流媒体问题。我使用bindProcessToNetwork来确保流媒体是通过我的WiFi网络完成的。在一些设备(比如搭载安卓9的华为Mate 10)上,流媒体可以正常工作(它似乎使用了WiFi,忽略了移动数据的开启),但在其他设备(比如搭载安卓10的三星Note10)上,当我使用新的网络应用程序接口时,它似乎正在尝试通过移动数据连接,只有在一段时间失败后,它才会决定使用我相机的WiFi (尽管我使用的是bindProcessToNetwork)。我得到一个错误日志
VLC-std: Unable to determine our source address: This computer has an invalid IP address: 0.0.0.0令人惊讶的是,如果我从系统设置连接到我的WiFi,它工作得很好…
我发现some comments的流媒体是在一个单独的过程中完成的,它忽略了对bindProcessToNetwork的调用,但在一些设备(以及安卓版本)上似乎可以工作,而在其他设备上则不能。
我已经在Videolan论坛上问过这个问题,但没有成功。
有没有办法强制libVLC使用指定的网络进行流式传输?
发布于 2021-02-01 10:18:15
我不认为LibVLC可以做到这一点,而且这有点超出了多媒体框架的范围。
如果我是你,我会在应用程序端处理这个问题,使用像How do I connect to a specific Wi-Fi network in Android programmatically?这样的东西
https://stackoverflow.com/questions/65489115
复制相似问题