libvlc Android:无法播放HTTP网络流
我目前正面临一个问题,试图使用VLC为Android播放网络流 我基本上遵循了这个指南,克隆了repo并构建了:一切正常,我可以运行我的应用程序并播放视频(本地或网络) 然后我采用了libvlc Android:无法播放HTTP网络流,android,libvlc,vlc-android,Android,Libvlc,Vlc Android,我目前正面临一个问题,试图使用VLC为Android播放网络流 我基本上遵循了这个指南,克隆了repo并构建了:一切正常,我可以运行我的应用程序并播放视频(本地或网络) 然后我采用了libvlc-AAR,从头开始创建了一个新的Android项目:我可以播放本地视频,但当我传入一个URL时,流不会打开 相关代码: // Create LibVLC ArrayList<String> options = new ArrayList<String>(); options.add
libvlc-AAR
,从头开始创建了一个新的Android项目:我可以播放本地视频,但当我传入一个URL时,流不会打开
相关代码:
// Create LibVLC
ArrayList<String> options = new ArrayList<String>();
options.add("--aout=opensles");
options.add("--audio-time-stretch"); // time stretching
options.add("-vvv"); // verbosity
libvlc = new LibVLC(options);
holder.setKeepScreenOn(true);
// Create media player
mMediaPlayer = new MediaPlayer(libvlc);
mMediaPlayer.setEventListener(mPlayerListener);
// Set up video output
final IVLCVout vout = mMediaPlayer.getVLCVout();
vout.setVideoView(mSurface);
vout.addCallback(this);
vout.attachViews();
Media m = new Media(libvlc, Uri.parse(media));
mMediaPlayer.setMedia(m);
mMediaPlayer.play();
在
libvlc
代码中挖掘了一点之后,我意识到问题的原因非常简单,我其实并不高兴我以前没有想到这一点
不管怎样,我为所有面临同样问题的人发布了答案,并在检查最明显的问题之前开始深入研究libvlc
基本上,我缺少清单中的INTERNET
权限:
<uses-permission android:name="android.permission.INTERNET" />
日志不是很清楚,特别是在Android端,可能是因为渲染不是在UI线程中完成的,所以您不会得到通常的networkMainThreadException
<uses-permission android:name="android.permission.INTERNET" />