我在一个项目中,我必须从链接播放电视频道的视频流。但问题是,我必须在本地应用程序中播放视频,而不是在网页视图中。就我所做的,我只是实现了一个叫做VITAMIO
的API,它对播放http,mms等协议有很大的帮助,但无法播放RTMP视频。我还研究发现,基本的android videoview
也不能播放RTMP,所以我只想知道有没有可用的接口,或者有没有办法在原生的android应用程序中播放视频,支持RTSP、RTMP、彩信、HTTP等?
发布于 2012-11-09 02:20:16
你可以使用vitamio,这是插件原生应用程序播放流rmpt,http,...very well.It对我来说很好。我想你可以用VLC检查链接通道。
发布于 2012-11-09 02:26:24
RTMP仅为闪存。VITAMIO播放器可能会在一些设备上工作,而在其他设备上则完全不能工作。我不确定您使用的是插件版本还是他们播放器的许可版本。我与它的互动很小,因为我并不是真的印象深刻(当时……我会在今年晚些时候再试一次)
您可以执行的操作:
<代码>G29
下面是一些检测flash并加载url的代码:
String url = "http://www.example.com/movie.swf";
try {
PackageManager pm = getPackageManager();
ApplicationInfo flash_ai = pm.getApplicationInfo("com.adobe.flashplayer", 0);
int flash_version = pm.getPackageInfo("com.adobe.flashplayer", 0).versionCode;
if (flash_ai != null && flash_version != 0 && flash_version >= 103000000) {
flashInstalled = true;
}
} catch (NameNotFoundException ex) {
flashInstalled = false;
}
if (!flashInstalled) {
displayNeedFlashDialog();
} else {
WebView wvBrowser = new WebView(this);
wvBrowser.requestFocus();
wvBrowser.setClickable(true);
wvBrowser.clearCache(true);
wvBrowser.setVerticalScrollBarEnabled(false);
wvBrowser.setHorizontalScrollBarEnabled(false);
wvBrowser.getSettings().setPluginsEnabled(true);
wvBrowser.getSettings().setJavaScriptEnabled(true);
wvBrowser.setWebChromeClient(new WebChromeClient() {
@Override
public boolean onJsAlert(WebView view, String url, String message, final android.webkit.JsResult result) {
result.confirm();
return true;
}
;
});
setContentView(wvBrowser, new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
wvBrowser.loadUrl(url);
}
https://stackoverflow.com/questions/13295199
复制相似问题