【问题标题】:Video Streaming VLC To Android App视频流 VLC 到 Android 应用程序
【发布时间】:2014-07-15 15:04:50
【问题描述】:
我想将视频从 vlc 流式传输到 android 应用程序。我累了很多次。我参考了 http://www.howtogeek.com/118075/how-to-stream-videos-and-music-over-the-network-using-vlc/ 教程。这是我的 Java(Android) 代码块
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
VideoView mVideoView = (VideoView) findViewById(R.id.videoView1);
String vidAddress = "http://10.0.2.2:8082/makeing_massina.mp4";
Uri vidUri = Uri.parse(vidAddress);
mVideoView.setVideoURI(vidUri);
mVideoView.start();
}
每次我收到“无法播放此视频”的消息。请帮助我..
【问题讨论】:
标签:
android
video-streaming
vlc
【解决方案1】:
使用以下代码...
String vidAddress = "http://10.0.2.2:8082/makeing_massina.mp4";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
VideoView mVideoView = (VideoView) findViewById(R.id.videoView1);
mVideoView.setVideoURI(Uri.parse(vidAddress));
mVideoView.start();
}
并且在给定的代码中,您使用的是 Android VideoView 的标准类。如果要使用 VLC-plugin,则需要使用 Native Development Kit (NDK)。
如果你想使用VLC插件,设置VLC库见here以及如何使用,见here
【解决方案2】:
视频是否位于您的视频服务器上的某个地方?如果是,请尝试这样的 URI:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
VideoView vidView = (VideoView)findViewById(R.id.myVideo);
MediaController vidControl = new MediaController(this);
vidControl.setAnchorView(vidView);
vidView.setMediaController(vidControl);
String vidAddress = "http://137.110.92.231/~albertchen/BBC.mp4";
vidView.setVideoURI(vidUri);
vidView.start();
}
您还需要确保您的手机可以访问服务器。您可以通过在浏览器中复制粘贴来轻松测试 URI。你不需要指定服务器的端口。
顺便说一句,我已经在我的计算机上设置了一个 Apache 服务器,并将视频放在用户“albertchen”的根文件夹中。如果你想尝试Apache服务器,请看here,如果你想使用一些互联网资源,请尝试here。