gpt4 book ai didi

Android VideoView 直播电视流 (HLS)

转载 作者:太空宇宙 更新时间:2023-11-03 11:25:38 24 4
gpt4 key购买 nike

我正在尝试开发用于电视流式传输 (HLS) 的应用程序。使用下面的代码,我在 2.3.3、3.0 和 4.0.1 版本的 Android 设备上测试了流,但遇到了几个问题。在 Android 2.3.3 上,流播放超过 1 分钟,然后就停止了。在 Android 3.0 上播放良好,在 Android 4.0.3 上显示消息“无法播放此文件”(如果我没记错的话)。所以我的问题是:我怎样才能在这些设备的以太网上播放流,而不会出现流播放问题?或者我在哪里可以阅读更多关于这些问题的解决方案(尝试搜索但没有找到有用的信息)?

Main_Activity 中的代码:

    @Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
VideoView player = (VideoView)findViewById(R.id.player);
String httpLiveUrl = "http://aj.lsops.net/live/aljazeer_en_high.sdp/playlist.m3u8";
//for Android 2.3.3 I used httplive:// prefix
player.setVideoURI(Uri.parse(httpLiveUrl));
player.setMediaController(new MediaController(this));
player.requestFocus();
player.start();
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}

xml 中的代码:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent" >

<VideoView
android:id="@+id/player"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true" />
</RelativeLayout>

对不起,如果我的英语不好。谢谢。

最佳答案

这不会解决所有流媒体问题。但是您应该做的一件事是在 MediaPlayer 准备就绪时调用 player.start()this SO post 的选定答案在 MediaPlayer 对象上设置监听器,以便在调用 onPrepared(MediaPlayer mp) 时运行 start()

关于Android VideoView 直播电视流 (HLS),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12131408/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com