Play m3u8 video in android

I think you should move this:

mMediaPlayer.setOnPreparedListener(this);

To be before the call to prepare()


Did you try to play your link with native player directly through web browser? If you can not play it with native player, it means that your file is not supported by your current Android version. HTTP Live Streaming format can have some specificities that are not well supported by Android, whereas it can play on IOS.


The video was existed in http://www.livestream.com. In this there is Mobile Api for live streaming.

The Api is:

http://www.livestream.com/userguide/index.php?title=Mobile_API#How_to_get_mobile_compatible_clips_from_a_channel.27s_library

In above link there is full information for mobile compatible. To get the rtsp link from the channel to use this link

http://xproshowcasex.channel-api.livestream-api.com/2.0/getstream

Replace the your channel name instead of proshowcase. And then get all mobile compatible url's like IPhone, Android, Blackberry etc.,

Using that url you can stream the video in Android by using video view or media player.

For more information please read the Mobile Api link.

If any one get the same problem I hope this answer will helps you.

Best of luck.


I have no problem to play stream:

videoView1.setVideoPath("http://***.net/livedemo/_definst_/stream3.stream/playlist.m3u8?wowzasessionid=773395207");
videoView1.start();

About the message:

The video cannot be played

Maybe you need to add permissions to your Manifest file:

<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>