Streaming Video/ Audio to Android

Thread: Streaming Video/ Audio to Android

  1. DelTrotter's Avatar

    DelTrotter said:

    Default Streaming Video/ Audio to Android

    With coreplayer stalling and being utter cretins with the release of coreplayer for android. Thought id do some digging around on the Streaming of media to the android.

    VLC Stream and connect in the market is by far the best way to stream your media from your PC to your Android. If you haven't already got it , get it!!
    But the holy grail for me for my Android is to Stream .NSV files and hopefully ill be editing this thread to say its done.
    But there is away to Stream sopcast streams from your pc to your android!! This looks promising to me, so ill be doing some tests over next few days and fingers crossed i can wake up on a Saturday and sunday and watch the midday kick off in bed! Also while working in a strong 3G area of an evening you'll be able to watch the champions league games during the week. This guy says its possible who wrote this tutorial its just needs a little playing around with.
    If anybody has any thoughts on this subject or already is streaming sopcast streams or .nsv files or any live footy steam to their android please help.


    "Over the past few weeks my inbox has been flooded with emails from lesser mortals BEGGING me to bestow upon them the knowledge which will emPOWER said persons to stream Sopcast to their beloved DROID. The emails tend to pick up right before every UFC PPV event.

    In this article I (Tudd Thudnaar) shall outline in as much detail as possible how you can stream your personal content or Sopcast from your home computer to your DROID. This can be especially useful for those of us whom need some entertainment (or some UFC PPV coverage) while out on the town. As long as you have 3g coverage or wifi available you will be in business. This walkthrough should actually work for many smartphones out there with some minor tweaking. I had this working on my Droid over 3G with great results. By utilizing these methods you will be well on your way down the path to Power, Women, and Fortune.

    All of the software and services mentioned in this article are currently free to download and use.


    You will be using:
    A Dynamic DNS Client (NO-IP)
    VLC Media Player
    Sopcast (optional)



    Step One, Setting up Dynamic DNS:

    You need a dynamic DNS service going on jerk. Dynamic DNS will give you a means for your phone to find its way to your home computers. Later on we will be opening up the internet on your phone and piping in a web address that you will be setting up. Currently NO-IP ([Only registered and activated users can see links. ]) offers a free service. All you need to do is go to the website, sign up, and install their client program.

    Once you create your account for NO-IP and log in you will need to "Add a Host" under the "Hosts/Redirects" section. For the "Hostname" field you can type in there whatever you like and then select a domain from the dropdown menu next to it. What you type in here will be your new domain name (this is what you are going to type in to your phone's internet browser to start streaming). You can leave everything else on this page the way it is. Click on "Create Host" at the bottom of the screen.

    Afterwards you will want to download the NO-IP client. Underneath the "Hosts/Redirects" section there will be a "Download Client" link. Download and install this file. Run the program and input the username and password for your account.

    Using NO-IP is not required. There are other Dynamic DNS alternatives out there. If you find one feel free to use it!






    Step Two:


    This step can and will be different for most people. This kind of makes it pointless to even attempt to explain step by step. You will need to log into your home router and set up port forwarding for port 5544 to the ip address of the computer you will be running VLC from (this will be the computer you will be streaming from at home). You may want to assign a static IP address to the computer on your network that will be running VLC to simplify the port forwarding (then the IP address on the networked computer will never change). Because there are many different home routers on the market, you will need to research this on your own. Google is your friend.



    Step Three, Setting up a stream in VLC:


    Open up VLC on your home computer that is connected to your network. If this computer is wireless it shouldn't be a problem but it is probably optimal to have this computer hardwired to your router (WIFI can be finicky).

    With VLC open, click on "Media" and then "Streaming"

    [Only registered and activated users can see links. ]


    This is going to bring up an "Open Media" screen. This is where we will select what it is exactly you want to stream from your computer.

    Click on "Add" to select what it is what you want to stream. When you click on "Add" you will then browse for whatever movie or mp3 it is you are looking to broadcast.

    After you select your file, you will then need to click on the arrow next to "Play" at the bottom of the screen next to "Cancel". There will be several selections after clicking the arrow. The one we want is "Stream"

    [Only registered and activated users can see links. ]

    After clicking on "Stream" the "Stream Output" window will come up.

    Click on "Next" on this screen.

    [Only registered and activated users can see links. ]


    This following screen is the meat and bones of what type of stream and video types the stream will use.


    The top section of the screen you will now see will specify the destination of the stream. Click the dropdown and select "RTSP" and then click "Add"



    [Only registered and activated users can see links. ]



    After clicking "Add" type in "stream.sdp" in the "Path" field (leave the "/" there) so that it looks just like the following:





    [Only registered and activated users can see links. ]
    Avert your attention from the "Destinations" section of the screen and look at the "Transcoding Options" section. Make sure that "Activate Transcoding" is checked and click on the "Edit Selected Profile" button. Highlighted in the following:
    [Only registered and activated users can see links. ]
    This is where any tweaks needed to get the video and audio to play nice with the phone (to select formats which your phone supports) will happen. I will just focus on the settings that I used to get the video to work on the Droid. These settings should work for all or most Android phones. An iPhone, Blackberry, etc. will probably require a different video codec.


    After clicking the "Edit Selected Profile" button, click on the "Video Codec" tab. Click on the "Codec" dropdown and select "MPEG-4". Set the bitrate to 500kb/s, and the framerate should be fine with either 20-25. If you find that after getting this working that the video feed on your phone is really pixelated and has goofy colors causing the video to be near unwatchable then your problem is most likely that your computer is struggling with the transcoding. This can be rectified by scaling back the bitrate on this screen. I have gotten reasonable results by dialing the bitrate down as low as 75 kb/s. It was better than nothing.

    [Only registered and activated users can see links. ]






    Click on the "Audio Codec" tab and set the "Channels" to 1 (this may or may not be necessary).

    [Only registered and activated users can see links. ]






    We can now click "Save" at the bottom of this window. This should spit us back out to the previous window. Click on "Next".


    Finally, to be safe change the "Time-To-Live" setting to 10 and then click "Stream" at the bottom of the screen:











    If you have completed step two and three properly, you are now streaming content out to the internet. This final step will allow the phone to open up the stream by clicking on a link on a dummy web page. This will save us from having to run a web server and further complicating things.




    Step four:
    Open up notepad on your computer and type this code into it:



    [Only registered and activated users can see links. ]


    ***IMPORTANT***
    You will need to replace "your.dnsname.here" with the Dynamic DNS name that you set up back in Step One.

    Save this file as a .html file (instead of a .txt file).

    Lastly, you will need to copy this file on to your phone either via usb file transfer OR you can simply just email the file as an attachment to yourself to open on the phone.


    Open up the .HTML file and click on the stream link in your dummy webpage that we made. Cross the fingers, and if you did everything right you should be seeing whatever it is you are streaming from your home computer.


    Step Five (Optional): Streaming Sopcast


    Open up Sopcast on the computer and load up a channel. Let the channel load up and make sure all is well.
    When it is all ready open up VLC and click on "Media" and then "Open Network Stream":

    [Only registered and activated users can see links. ]

    In the "Please enter a network URL:" type in "http://127.0.0.1:8902" and then click on the dropdown next to "Play" at the bottom of the window and select "Stream":

    [Only registered and activated users can see links. ]


    After clicking on "Stream" this will bring up the "Stream Output" window from Step Three. Specifically the third screenshot in Step Three. Refer to that point in the previous step and continue forward as the directions will be the same.


    That is all there is to it. I highly recommend using AndroidVNC to remote into your home computer to start up or change the streams, otherwise whatever you set before you leave the house is all that you are going to get!

    With this knowledge I encourage you to enjoy your journey down the Path to Power, Women and Fortune.



    ::Update::

    With my personal experience with this I had the stream originating from a Windows XP machine. When trying to stream directly from a Windows 7 machine I would get a split second of audio and then it would immediately cut out giving me a "Unable to play video" error. The initial connection is made though.

    When I set this up I was completely pressed for time and couldn't work out the kinks under Windows 7. At one point I was actually using the Windows 7 machine to stream and transcode Sopcast, and a Windows XP machine on my network to then open and rebroadcast THAT stream (by opening the stream using the IP address of my 7 machine on my network) and connect with my phone to the XP rebroadcasting with no problems. The Windows 7 machine had no problems streaming it over my LAN. If I get this working directly off a Windows 7 machine I will be sure to update this article.

    If you are getting "Unable to play video" errors you may very well be on the right path. When I was figuring this out I found it easy to start small and then work my way up. Start by streaming an mp3 using the methods above. If you can do that successfully you will then KNOW you have your port forwarding and VLC stream set up properly. If when you move to video streaming and are unsuccessful then you know you need to play with the transcoding options a bit. I would think that ALL Android phones (2.x) should be able to play the same video codecs regardless of phone (unless the manufacturer tweaked the ROM to not support a specific video type). I can 100% confirm this works on a Motorola DROID.

    I stress: When in doubt, start by streaming an mp3. It will give you an idea if your setup is working right. Play with the video transcoding options until you get what you are looking for.

    [Only registered and activated users can see links. ]

    Last edited by DelTrotter; 27th August 2010 at 05:40 AM. Reason: VLS stream and connect, Android atreaming
    "Your proposition may be good. But let's have one thing understood
    Whatever it is, I'm against it! And even when you've changed it Or condensed it
    I'm against it!"
    A top man
     
  2. yazooo's Avatar

    yazooo said:

    Default Re: Streaming Video/ Audio to Android

    Ta, I tried VLC Stream & Convert from the market and it works pretty well streaming stuff over my local network.

    Now to hook my Sky box to my PC and see if I can get that streaming to the phone.
     
  3. DelTrotter's Avatar

    DelTrotter said:

    Default Re: Streaming Video/ Audio to Android

    Ive been playing around and have managed to get it streaming to my phone. Tvsportsand streams.tv streams to my android!
    I got rid of thno-ip solution and justed edited the Stream.html file and directed it to my internal IP
    <br><a href="rtsp://192.168.1.65:5554/stream.sdp">Stream</a><br>

    Worked a treat but now to play with the transcoding to get the picture better!!!!

    "Your proposition may be good. But let's have one thing understood
    Whatever it is, I'm against it! And even when you've changed it Or condensed it
    I'm against it!"
    A top man
     
  4. yazooo's Avatar

    yazooo said:

    Default Re: Streaming Video/ Audio to Android

    Just been playing with this some more now I have a dreambox, and get better quality video changing from mpeg4 to h264 for the video coded. Will keep testing all the settings.
     
  5. DelTrotter's Avatar

    DelTrotter said:

    Default Re: Streaming Video/ Audio to Android

    Quote Originally Posted by yazooo View Post
    Just been playing with this some more now I have a dreambox, and get better quality video changing from mpeg4 to h264 for the video coded. Will keep testing all the settings.

    How have you found the audio syncing? I find it gradually worsens over time even with a good signal?1 I think thats something to do with the Codec, but not sure.
    If Youtube works flawlessly on Android then surely Streaming some files can only be a setting away from perfection.

    What Bitrate for video and FPS you been trying? , video output and audio settings you been trying?

    Keep me posted?
    "Your proposition may be good. But let's have one thing understood
    Whatever it is, I'm against it! And even when you've changed it Or condensed it
    I'm against it!"
    A top man
     
  6. yazooo's Avatar

    yazooo said:

    Default Re: Streaming Video/ Audio to Android

    500kb video, 25fps foo sports stuff, 20fps for everything else. h264 is cpu intensive, and only seems to work with certain inputs, very strange. definitely gives the best quality though. leaving audio at mp4 at the minute, not really messed about with that.

    Currently working on another issue for myself at the moment, which is I need to find a way to restart the streaming after changing channel on my dreambox. Nothing out there seems to do the trick, so going to write a little program to do automatically.

    As for the sync issues, check this out. The suggest using a delay to keep stuff in sync.
    [Only registered and activated users can see links. ]