Welcome! Log In Create A New Profile

Advanced

Airvideo?

Posted by nigelhealy 
Airvideo?
November 07, 2010 01:10AM
I'm beginning to build Airvideo for the Dockstar, currently I have a Vista PC doing the hosting of the Airvideo server with the files stored on the Dockstar with SAMBA.
I'm following the Debian install howto.
I know the ARM is a fast integer, but poor floatingpoint, I guess that quantatision for video recoding is probably integer so will work ok on ARM?
I'll let you all know if I get it to work or hit a wall, but if someone tried please let me know howto or if its non-workable.

PS - bought another Dockstar, at $27 delivered its a no-brainer, I'm very happy with Jeff's Debian on this little system.
Re: Airvideo?
November 14, 2010 11:53PM
Update - I am about 60% there. I can make Airvideo stream IPOD-compatible media which I have previously recoded, and these stream off the Dockstar with good end-user (e.g IPOD Touch) performance. The actual running is simple, just need java and run the Airvideo jar with a config file edited.
I am still having difficulties with making it convert-on-fly video using ffmpeg. These issues are I'm sure fixable, to do with missing libs and their paths.
Once I got it fully working will post a HOWTO.
From what I can see so far, using the ARM-based servers for media streaming to IPODs is highly viable, but I'm not yet placing a heavy load and there isn't any media recoding being done concurrent with the streaming.

I have earlier ported Handbrake to ARM, it runs, so that might be the half-way option, background recode your videos using Handbrake, or a special made ffmpeg, and then stream pre-converted.

I quite like that my 8GB Ipod Touch is able become a 500GB Ipod via a 500GB USB disk connected to a $27 Dockstar :)
No computers left on like which is Airvideo's natural mode.
Re: Airvideo?
November 21, 2010 09:35PM
I need help here to make it work as I'd like. I can make the Dockstar stream pre-converted media but can't make it recode live, getting threads error messages, which might be Java, the JAR or ffmpeg, not sure which. I've tried using different ffmpeg make options but haven't been able to improve it any better than I have now. I've used the Debian x264 and that works better than compiling my own x264 so this how below is as good as I can make it.

Works:
  • streaming pre-converted media
  • thumbnails
Not working
  • conversion live streaming
So with these caveats below is my best-so-far HOWTO. Please help as using Dockstar for a media server is a good use, I have one Dockstar doing Transmission and SAMBA and NFS with a large drive attached.

>>>>> Airvideo Dockstar Debian HOWO <<<<<<<<

# required - 2GB USB stick or 1GB stick and do the compiling on another storage
# login as root either ssh root@ or install and configure sudo and add a user to the sudoer.
sudo -i
cd /tmp
wget 'http://www.debian-multimedia.org/pool/main/d/debian-multimedia-keyring/debian-multimedia-keyring_2008.10.16_all.deb';
dpkg -i debian-multimedia-keyring_2008.10.16_all.deb
rm debian-multimedia-keyring_2008.10.16_all.deb
#Change this to any local mirror from here http://debian-multimedia.org/debian-m.php  note no USA mirrors below I use a Canadian mirror
echo deb http://debian.dc-uoit.net/debian-multimedia/ squeeze main >>/etc/apt/sources.list
apt-get update
apt-get upgrade
apt-get install bzip2 make checkinstall yasm git-core libmp3lame-dev libfaad-dev pkg-config libx264-dev gcc build-essential openjdk-6-jre
apt-get clean
# not as root
mkdir ~/airvideo
cd ~/airvideo
wget http://www.inmethod.com/air-video/download/ffmpeg-for-2.2.5.tar.bz2
tar xvfj ffmpeg-for-2.2.5.tar.bz2
cd ffmpeg

./configure --disable-shared --enable-static --enable-gpl --enable-libx264 --enable-libmp3lame --enable-libfaad --disable-decoder=aac --disable-ffplay --disable-ffserver --disable-doc
make
wget http://inmethod.com/air-video/download/linux/alpha4/AirVideoServerLinux.jar
wget http://inmethod.com/air-video/download/linux/alpha1/test.properties
# use root
sudo apt-get openjdk-6-jre
sudo apt-get clean
# edit test.properties to look point to your location of ffpmeg , fully-qualified, and the places for your Movies, the mpeg4ip-server and faac are only used for background conversion

I placed the Airevideo.jar, the test.properties and the ffmpeg I made in a directory /opt/airvideo and I start it in my /etc/rc.local
My /etc/rc.local
rm -f /var/log/airvideo.log.old
mv /var/log/airvideo.log /var/log/airvideo.log.old
echo > /var/log/airvideo.log 
chmod 644 /var/log/airvideo.log
nohup java -jar /opt/airvideo/airvideo.jar /opt/airvideo/test.properties > /var/log/airvideo.log 2>&1 </dev/null &

exit 0
and here is my test.properties obviously the path of the ffmpeg needs to be true. The path of mp4creator, faac is not used as we're not doing background conversion.
path.ffmpeg = /opt/airvideo/ffmpeg
path.mp4creator = /usr/local/bin/mp4creator
path.faac = /usr/local/bin/faac
password = 
subtitles.encoding = windows-1250
subtitles.font = Verdana
folders = IPOD:/mnt/SG500G/IPOD

The system with 128MB memory is swapping slightly, and small buffers, so its good idea to not run too much when running the Java system which is used by Airvideo. This would probably perform better on a larger memory system. However, once it begins streaming it performs well, but there is a noticeable delay to begin streaming as it swaps.



Edited 1 time(s). Last edit at 11/21/2010 09:41PM by nigelhealy.
Re: Airvideo?
November 21, 2010 11:30PM
I've been searching the Airvideo forums and seems the error messages may be related to the relatively slow CPU of the Dockstar, the Java code has short timeouts and is deeming the slowness as a bug and terminating threads.

So... I've nested the directory structure, to have less files in each directory and that will apparently improve matters.

As to memory consumption, I am trying to find any old USB stick to host SWAP so it is not fighting for attention of the boot USB or the harddrive. That will make the small amount of swapping not have as big a impact.
Re: Airvideo?
November 24, 2010 07:56AM
Have you tried Oracle's Java SE for Embedded System instead of OpenJDK? http://www.oracle.com/technetwork/java/embedded/overview/sys-reqs-embedded-159989.html It's supposed to work with 32Mb RAM and Soft Float. I used it to test PS3 Mediaserver on another ARM device.
Author:

Your Email:


Subject:


Spam prevention:
Please, enter the code that you see below in the input field. This is for blocking bots that try to post this form automatically. If the code is hard to read, then just try to guess it right. If you enter the wrong code, a new image is created and you get another chance to enter it right.
Message: