This software – Air Video, http://www.inmethod.com/air-video/index.html – rocks…
Enables streaming of videos, Divx, MKV, flv, etc to iOS devices. A small Java server component runs on the media server, and uses FFMPEG to convert on the fly to a format that is suitable for the client, which can be purchased through the App Store. I haven’t yet found anything it won’t play. The live conversion that it uses works really well – even converting on the fly 1080i and 720p to play seamlessly on the iPad. My server is a Core2Duo E6850, with the software running on a Xen VM that has access to media files.
The VM is a CentOS 5.6 x64 server. Setup is very simple as follows, mainly worked out after reading through several pages on the Air Video forums! http://www.inmethod.com/forum/posts/list/34.page
1. Install Sun Java. Get the latest JRE from Sun. They provide RPMs or just binary files. I downloaded the x64 binary, set it as executable, ran it to unpack it – good to go. If you want you can then sort out the path to see where you have put it, I am just calling java directly at the moment.
2. Install RPMForge repository – see http://wiki.centos.org/AdditionalResources/Repositories/RPMForge for instructions.
3. Install packages using yum to ensure you get dependencies sorted within RPM package management as much as possible.
yum install ffmpeg yasm lame-devel x264-devel
Installing ffmpeg this way ensures that all the deps for the ffmpeg that needs to be built are met.
4. Get the special ffmpeg from Air Video – See this thread for the latest http://www.inmethod.com/forum/posts/list/1856.page
5. Unpack ffmpeg, run
make As long as you have installed the packages in step 3 this should complete. You can now use this ffmpeg – you don’t need to
install it, just configure and make. Air Video config allows you to advise where the built binary is.
6. You’ll need to create a test.properties file to configure the server. Mine is as follows (make sure the paths are complete including the binary name):
path.ffmpeg = /downloads/ffmpeg/ffmpeg
path.mp4creator = /usr/local/bin/mp4creator
path.faac = /usr/bin/faac
subtitles.encoding = windows-1250
subtitles.font = Verdana
folders = Movies:/mnt/data/media/Movies,Series:/mnt/data/media/Videos
7. Once you have those pieces lined up, I ran
./jre1.6.0_26/bin/java -jar AirVideoServerLinux.jar test.properties
As that line shows I haven’t sorted out the Java path yet! And bingo, it works. Tell the iPad the IP address, and it loads up and plays.
I haven’t installed mp4creator yet, I understand that is only for when you want to queue up conversion.
To run it as a service, I followed these instructions:
A few rough edges to sort out like the mp4creator bits, but 95% sorted.