在android 2.3上通过HTTPS播放.m3u8文件

在android 2.3上通过HTTPS播放.m3u8文件,第1张

概述在我的代码中的某个时刻,应用程序会找到一个指向.m3u8文件的URL.接下来会发生这种情况: mVideoView.setVideoURI(Uri.parse(feed.getUrl().toString())); // feed.getUrl returns the urlmVideoView.start(); 它在Android 3.1上运行FINE.不是早期版本,因为它使用https(参见 在我的代码中的某个时刻,应用程序会找到一个指向.m3u8文件的URL.接下来会发生这种情况:

mVIDeoVIEw.setVIDeoURI(Uri.parse(Feed.getUrl().toString())); // Feed.getUrl returns the urlmVIDeoVIEw.start();

它在AndroID 3.1上运行FINE.不是早期版本,因为它使用https(参见:http://developer.android.com/guide/appendix/media-formats.html)

所以我做的是为AndroID 2.2创建了一个新版本的应用程序,它使用了vitamio,这个库应该让我更容易.但是,在哪里(androID.Widget.VIDeoVIEw)完美地处理它,(io.vov.vitamio.Widget.VIDeoVIEw)需要很长时间来加载流并最终在崩溃时说这个:

但是,当我尝试加载此URL时:http://devimages.apple.com/iphone/samples/bipbop/gear1/prog_index.m3u8
它工作正常!

我无法共享我需要使用的URL,但这里指的是.m3u8的内容:

#EXTM3U#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=264000playList.m3u8?session=003016302664236&index=0#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1364000playList.m3u8?session=003016302664236&index=1#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=44000playList.m3u8?session=003016302664236&index=2

所以我在这个和Apple样本之间可以看到的主要区别是,我正在使用https,我的文件指向其他.m3u8文件(而Apple的.m3u8指向.ts文件).
两者似乎都使用AAC音频.

这个问题似乎与维生素有关.我怎样才能解决这次崩溃?非常感谢你.

解决方法 我找到了解决方案!

所以我要说的第一件事是我很困惑,而且我没有使用httpS,但我的解决方案也适用于https.

首先,您可能需要像我一样使用Vitamio,因为Gingerbread不支持直播(再次阅读this).现在的问题是,如果您的M3u8文件是.ts文件列表,它应该可以正常工作.但如果它指向其他m3u8文件..

那么你必须自己解析它.你可以这样做,例如:

url = new URL(livetvchannel.getUrl());inputStream M3U8 = (inputStream) url.getContent();      BufferedReader br = new BufferedReader(new inputStreamReader(M3U8));for(int i = 0; i < 2; ++i)    br.readline();String target = br.readline(); //this parses the third line of the playListbr.close();url = new URL(baseURL.concat(target)); //if the m3u8 url is relative,you have to concat it with the path//Note: You have to do all this in a thread,you can't do network on UiThreadmVIDeoVIEw.setVIDeoURI(Uri.parse(url.toString())); //Run this on UiThread

url将指向视频流.你去吧!最后不是那么难. 总结

以上是内存溢出为你收集整理的在android 2.3上通过HTTPS播放.m3u8文件全部内容,希望文章能够帮你解决在android 2.3上通过HTTPS播放.m3u8文件所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/web/1128809.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-30
下一篇2022-05-30

发表评论

登录后才能评论

评论列表(0条)

    保存