Android video streaming example

108,055

Solution 1

I had the same problem but finally I found the way.

Here is the walk through:

1- Install VLC on your computer (SERVER) and go to Media->Streaming (Ctrl+S)

2- Select a file to stream or if you want to stream your webcam or... click on "Capture Device" tab and do the configuration and finally click on "Stream" button.

3- Here you should do the streaming server configuration, just go to "Option" tab and paste the following command:

:sout=#transcode{vcodec=mp4v,vb=400,fps=10,width=176,height=144,acodec=mp4a,ab=32,channels=1,samplerate=22050}:rtp{sdp=rtsp://YOURCOMPUTER_SERVER_IP_ADDR:5544/}

NOTE: Replace YOURCOMPUTER_SERVER_IP_ADDR with your computer IP address or any server which is running VLC...

NOTE: You can see, the video codec is MP4V which is supported by android.

4- go to eclipse and create a new project for media playbak. create a VideoView object and in the OnCreate() function write some code like this:

mVideoView = (VideoView) findViewById(R.id.surface_view);

mVideoView.setVideoPath("rtsp://YOURCOMPUTER_SERVER_IP_ADDR:5544/");
mVideoView.setMediaController(new MediaController(this));

5- run the apk on the device (not simulator, i did not check it) and wait for the playback to be started. please consider the buffering process will take about 10 seconds...

Question: Anybody know how to reduce buffering time and play video almost live ?

Solution 2

I was facing the same problem and found a solution to get the code to work.

The code given in the android-Sdk/samples/android-?/ApiDemos works fine. Copy paste each folder in the android project and then in the MediaPlayerDemo_Video.java put the path of the video you want to stream in the path variable. It is left blank in the code.

The following video stream worked for me: http://www.pocketjourney.com/downloads/pj/video/famous.3gp

I know that RTSP protocol is to be used for streaming, but mediaplayer class supports http for streaming as mentioned in the code.

I googled for the format of the video and found that the video if converted to mp4 or 3gp using Quicktime Pro works fine for streaming.

I tested the final apk on android 2.1. The application dosent work on emulators well. Try it on devices.

I hope this helps..

Solution 3

Your problem is most likely with the video file, not the code. Your video is most likely not "safe for streaming". See where to place videos to stream android for more.

Share:
108,055

Related videos on Youtube

user609239
Author by

user609239

Updated on July 09, 2022

Comments

  • user609239
    user609239 almost 2 years

    I want to implement video streaming in my project. So, is there any tutorial that works? Videos are stored at server side. So, to fetch video using URL and play it on Android. I tried some examples, but I got error, "Sorry, this video can not be played". I am trying to use MP4.

  • user609239
    user609239 about 13 years
    when i run example, a dialog generates displaying that "Sorry, this video cannot be play"
  • Johncl
    Johncl over 12 years
    Perfect. This works brilliantly! Assuming that the VLC streaming is created using ffmpeg, now I just need to find a way to do this myself using that library.
  • sonu thomas
    sonu thomas over 12 years
    Gud Question.. Can anybody answer to this question Question: anybody know how to reduce buffering time and play video almost live ?
  • Adam Lear
    Adam Lear over 12 years
    @sonuthomas If you have a new question, please ask it by clicking the Ask Question button.
  • sonu thomas
    sonu thomas over 12 years
  • Amir Dashti
    Amir Dashti over 12 years
    It seems buffering is inevitable in android's media player, you can use Doubango library and implement a simple SIP client to play live video over IP...