大家好,提前致谢
经过一整天的寻找、搜索和尝试,我不知道这是否可能,或者问题是否出在代码中,或者问题是否出在服务器中....
首先,MediaPlayer可以播放m3u8文件吗?
如果是...它只在大于 3.0 或 4.0 的版本中?
如果我只是尝试在真实设备 4.0.4 中播放 url,我会收到错误 (1,-1010) 或错误 100 或 -214...。代码很简单:
MediaPlayer mp = new MediaPlayer();
fich="http://devimages.apple.com/iphone/samples/bipbop/gear1/prog_index.m3u8"; //e.g.
mp.setDataSource(localContext, Uri.parse(fich));
mp.setAudioStreamType(AudioManager.STREAM_MUSIC);
mp.setVolume(((float)volumenAudio / 100), ((float)volumenAudio / 100));
mp.prepare();
我这样做的方式是否存在基本错误?有什么我不知道的吗?
致以最诚挚的问候和感谢,
最佳答案
对于您的第一个问题,MediaPlayer 可以播放 m3u8
文件吗?,答案是可以。 MediaPlayer
支持播放 MP3
播放列表文件。
下一个问题,只有3.0或4.0以上的版本才有?,我们需要慎重考虑。 Android 3.0
a.k.a. HoneyComb
不是一个开放的发行版,因此,我不确定您问题的答案。它可能受支持,但只是猜测。从 Android 4.0
/ICS
开始支持播放 m3u8
文件。请找到源链接,播放器是为 m3u8
文件创建的 http://androidxref.com/4.0.4/xref/frameworks/base/media/libmediaplayerservice/MediaPlayerService.cpp#583
如果您收到 error(1, -1010)
错误,这意味着在您的播放器中某处,引擎正在返回 ERROR_UNSUPPORTED
返回码。作为引用,您可以查看来源 here .
您将不得不进一步调试并定位问题。
关于Android MediaPlayer 仅播放 m3u8 音频流,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15507398/