安卓上的HLS流媒体传输

4
自Android 3.0版本以来,HLS得到支持。直到蜂巢版本,支持H.264和AAC,但仅支持RTSP流协议。不支持HLS和MPEG-2 TS(请参阅这里)。
将ffmpeg移植到Android平台可能是解决方案之一(LGPL源代码可用)。然而,我正在寻找一个现成的解决方案,包括SDK、可定制的HLS播放器等。这里有一个链接,但我想知道是否还有其他解决方案。
谢谢 STEN

#Vibgyor,2.2版本怎么样了?HLS也支持吗?代码中需要进行哪些小修复才能接受它?能否提供一个示例?谢谢。 - user461127
3个回答

5
你可能会发现http://vov.io/vitamio/库非常有用。它们允许你使用HLS流(我已经在生产应用程序中测试和使用该库)。
但需要注意的是,不要尝试在模拟器设备上测试,因为它无法正常工作,您需要一个真实的设备进行测试。
希望这可以帮助到你。
诚挚问候,
Shabbir --编辑--
只是编辑这个答案,让人们知道Vitamio的网址已经更改-现在您不需要从PlayStore或vov.io网站下载单独的“helper app”-您现在可以直接从他们提供的下载/说明中包含所有内容。
新网站是http://vitamio.org/

你好,你是使用他们的现成解决方案还是购买源代码并将库集成到应用程序中?FFMPEG在低端设备上的性能如何?你能分享一下HLS流媒体参数吗? - STeN
1
我使用了他们的解决方案 - 它完全可用 - 但是,我正在考虑购买他们的源代码选项,以便我可以将所有内容集成到我的应用程序中作为单个.apk文件。我已经在HTC Wildfire上进行了测试,从我的理解来看,这是一款“低端”设备,性能良好 - Vitamio的美妙之处在于,它们有多个二进制版本,取决于目标设备 - 并且这是在用户首次使用带有维生素库的应用程序时安装和设置的。我没有手头的参数,但只需使用HLS URL即可 - 我会尝试找出我的代码。 - shabbirh

2

MPEG TS自2.3(姜饼)版本起就存在于代码库中,但没有宣传。实际上,HLS在2.3版本中得到支持,但需要进行小修复才能启用。您需要在流的前缀中添加httplive并对代码进行小修复以接受它。

Vibgyor


4
Vibgyor - 你需要进行哪些小修补以更正代码? - Jason
你的意思是需要在Android代码中进行修复才能使其正常工作吗?这是我们无法在市场上所有设备上实现的。但如果有一种方法可以在你的应用程序中包含该代码,那将非常有趣。 - idlethread

1

最终,我们使用FFMPEG库制作了自己的播放器,并且现在我们还在集成使用stagefright进行硬件解码(http://freepine.blogspot.cz/2010/01/overview-of-stagefrighter-player.html)。

敬礼 STeN


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接