Real Video streams

Here's how to get streaming video playback to work (thanks to Nathan Davenport for instructions).

The Nokia 770/N800/N810 supports streaming of Real Video RV40 over rtsp.

Streaming of Real Video files works either over a protocol called RTSP or over normal HTTP. So you don't really have to use an RTSP server, just put a directory on apache.

But first, get your video in a nice format the Nokia tablet likes:

Encode your video to Real Video
For limits with video size/quality/settings keep Video encoding in mind.

Get Helix DNA Producer (or alternatively Real Producer) for encoding to Real format.

On Linux, Helix/Real Producer can read only uncompressed audio and video from an AVI file. In addition, it does not support piping, which means that you need large amounts of temporary hard disk. On Windows, the situation is much better as Helix/Real producer can read almost any media format that has Windows codecs installed.

If you are using Linux and need to create the uncompressed video, you can do it either by using Ffmpeg or mencoder from MPlayer:

ffmpeg -i original.mpg -vcodec rawvideo -acodec pcm_s16le -s 176x144 $2.avi

or

mencoder -quiet -o temp.avi original.mpg -oac pcm -ovc raw

(Note that uncompressed video is very big (read, gigabytes for half an hour video))

The video can be encoded to Real format by using the following command:

producer -i temp.avi -o temp.rm

If you created the uncompressed temporary file, remember to remove it:

rm -f temp.avi

Apache HTTP server
The easy way is to put your videos in a directory served by apache and create a .htaccess:

 # Nokia 770 weirdness [ForceType] audio/x-pn-realaudio  # wrong, but works #ForceType application/vnd.rn-realmedia # official, but doesn't work #ForceType video/vnd.rn-realvideo # official, but doesn't work 

 [ForceType] application/x-httpd-php 

(be sure the  in apache2.conf or sites-enabled has 'AllowOverride' 'FileInfo')

On other web servers you can try setting the video file extension to .ram rather than .rv to trick it into setting the compatible mime type.

Set Up a RTSP server
You can spare yourself the work of setting up a RTSP server, just use apache.

But if you insist:

Once you have the little Real Video file, you can set up a RTSP server so that the Nokia Video Player can open it from your computer. I used Real Basic Server to do that, even though it is very very HUGE (both disk space and memory space, uses 10% of my 512MB RAM when idle).

Install it by launching the executable downloaded.

An installation directory will be created.

In the installation directory there is a subdirectory "Content/" which contains the files that are available to the clients (i.e. the Videos) which is used by default (this location can and should be changed by editing rmserver.cfg).

(it's best to copy the config file to /etc or somewhere you actually *look* for it :) )

In the installation directory launch "Bin/rmserver rmserver.cfg" as root (because of the port number, I guess when the port number were >1023, you wouldn't have to be root)

That will produce a screenful or so of output, ending with:

Starting TID 2997877664/29271, procnum 7 (streamer)

I: Helix Server (c) 1995-2005 [RealNetworks,] Inc. All rights reserved. I: Version: Helix Server 11.0 (11.0.1.1884) I: Platform: linux-rhel4-i686

Note:

There is also Fenice which looks much nicer (easy to configure, easy to install, source available, smaller, autoconf, no magic installer, ...), but at least with a quick try I couldn't get it to support Real Video files. It would always yield format unsupported.

Play the File on the Nokia 770
Now after all is done, open the video player on the Nokia 770.

For that open Video Player, open the Menu "Video", activate the item "Open Stream...", and put:

for RTSP: rtsp://192.168.0.1/somefile

for HTTP: 

(Where 192.168.0.1 is your main computer's IP address)

A popup window (or a status bar with newer releases) will appear that tells you it's buffering data and after 10 seconds or so it will start playing merrily.