________________________________________________________ | | | [ iStreamdev ] | |________________________________________________________| Written by: Alib Contributors The Troll Project's homepage: http://projects.vdr-developer.org/projects/show/istreamdev Latest version available at: http://projects.vdr-developer.org/projects/list_files/istreamdev git repository: git://projects.vdr-developer.org/istreamdev.git See the file COPYING for license information. About: ----- iStreamdev lets you stream TV channels & recordings from VDR and all your Video & Music files from your PC to your iPhone. Your Iphone don't needs to be jailbroken, it uses native iphone Quicktime player. You needs at least firmware 3.0 to support HTTP Live Streaming protocol. It gets vdr-streamdev plugins TS feeds, and recodes it to TS mux with h264 level 3.0 video and mp3 audio using ffmpeg. Segmenter receives output from pipe, cuts it in 10 seconds video file and updates the m3u8 playlist in live. Audio files are not rencoded but streamed directly to their native formats. So only mp3, aac & wave are supported. Features: --------- •100% webapp compatible user interface using iWebkit framework ( http://iwebkit.net ) •Channel selection throught categories •Channels listed with logo and current epg. •Streaming format selection: Edge, 3g, Wifi •Recording streaming: Access your vdr recordings with epg. •Timers support: Add/Edit/Delete/Activate/Deactivate timers. •Video files support: Stream to all your video files ( avi, mkv, mov, etc ) to your Iphone. If you have a movie.tbn poster.jpg or folder.jpg file in the same folder as the video file, it will display it as thumbnail. If there's no picture, it will generate a thumbnail from the video. •Music files support: Access to your mp3/aac/Wav files remotly and stream them with playlist support. Webapp: ------- Add iStreamdev to your iPhone home menu. This makes it looking likes an appstore app without Safari interface. Usage: ------ Select a channels category, then a channel. Select your stream mode: Edge , 3g or Wifi. The Play icon will appear automatically after few seconds when the feed is ready. This is the same for recorinds and videos files. To Stop the stream server, hit Stop stream button. Video thumbnails: iStreamdev takes videoname.tbn , poster.jpg or folder.jpg file ( from xbmc export library ) as thumbnail source, or grab a pi cture in the video stream if there's not. Channel logos: Put your 80x80 png logos in logos/ folder. They needs to have the same name/caps as your channels.conf If a channel have a / character in the name, replace it by _ ( cf RTL/TELEVISION > RTL_TELEVISION.png ) Music: iStreamdev generate a playlist from the requested file to the last file of the folder. Then you can goes Next easily. To play an album, just launch the first track. What you need: -------------- - an http server with PHP5 enabled like apache or lighthttpd - having "at" package. - www-data user should allowed to use "at". Check on your /etc/at/deny if www-data is there, and remove it if so. - PHP is allowed to use exec() function. - ffmpeg compiled with x264 support - segmenter: You need to use modified version included in istreamdev path. Install iStreamdev: ------------------- Copy the file in your webfolder. /istreamdev for example. Copy config_default.php to config.php and edit it. $httpath is your istreamdev http path NOT the full url ( '/istreamdev/' NOT 'http://yourdomain/istreamdev' ) Compiles segmenter provided by typing make in segmenter folder and install it: "make & cp segmenter /usr/bin/" the ram folder should be writable. If you want to prevent hard disk usage, you can mount it in ram with /dev/shm: mkdir /dev/shm/ram ln -s /dev/shm/ram ram Check everything is ok with ffmpeg by launching the above command logued as your http server user ( www-data ) : ./istream.sh http://localhost:3000/TS/1 512k 64k 1 480x320 ./ 3 /usr/bin/ffmpeg /usr/bin/segmenter You should see ffmpeg access streamdev http://localhost:3000/TS/1 and encode the stream. Now everything is ok you can login from your iphone: http://yourip/istreamdev