PDA

View Full Version : TiVoTool on Intel - huge boost



drogers
07-01-2006, 12:38 PM
Got my MBP a few days ago and started playing around with TiVoTool - man does that thing rock! Anyway, I noticed the MP4 extraction stuff was really slow, and it seemed like it was solely because the ffmpeg binary in TT is not universal.

After screwing around trying to compile my own ffmpeg binary, I gave up and linked the ffmpeg from ffmpegx to teh /Library/Application Support/TiVoTool/ directory, and gave it another try. HOLY COW!

Processing jumped from about 10FPS to just under 50FPS! So for all of you wating for universal binary support for TT, this is a nice stopgap measure...

dkmc
07-22-2006, 07:09 AM
Can you explain exactly how to link the ffmpegx to ffmeg?
thanks

dkmc
07-22-2006, 07:29 AM
ok i figured it out, copied the ffmpeg in the package contents of ffmpegx into that directory
it works for mp4
much faster

any way to make avi/divx files faster?

JELaVallee
07-22-2006, 11:08 PM
Hey there...

Just got my MBP... just love it...

I've installed ffmpegX... just love it...

Also installed TivoTool and have it pulling files off my hacked HDVR2 DTivo system over a wired connection just fine. Getting horrible DL/encoding times when going to Xvid, but haven't tried just going to MP2 as of yet.

Could you provide some more discrete details (like locations of files, etc.) for doing this mpeg encoder swap? Not having the universal binaries for TivoTool blows, but a solution like this is very cool for the time being.

thnx,
Etienne

JELaVallee
07-22-2006, 11:18 PM
... horrible DL/encoding times when going to Xvid, but haven't tried just going to MP2 as of yet.


Okay, FYI for anyone looking for a comparison...

It's taking about 2 hr 25m to encode an show (~1 hr / 1058MB)... download took about 30 minutes but that's because I'm currently torrent slamming my network bridge between here and my living room. Necessary evil.

How does that encoding compare to other's experience?

BTW, While I've always liked TyTool's all-in-one execution workflow, this setup with TivoTool to extract/encode, ffmpegX to resize to best fit my PMP's screen (Archos AV500 w/ 464x256) with croping and then iMovie to edit out the "gunk" really is quite smooth. Will have to see how DVD archiving fairs...

Thanks for any help.

cheers,
Etienne

drogers
08-10-2006, 02:43 PM
Ok, I just had to rebuild my macbook, so I figured I might as well provide a little more detail while i'm going thorugh this....

TivoTool calls ffmpeg from /Library/Application Support/TivoTool/ so open up terminal, cd to /Library/Application Support/TivoTool/ and do the following:

mv ffpmeg ffmpeg-ppc

then assuming you sing the ffmpeg binary from ffmpegx, and ffmpegx is in /Applications, then type the following in the same terminal:

ln -s /Applications/ffmpegX.app/Contents/Resources/ffmpeg ffmpeg

now you've got a symbolic link that TivoTool will follow to the universal binary of ffmpeg - this sped up my mp4 processing by about 5x, and it's still all in one step.

msui772
08-23-2006, 06:54 AM
I have to thank you for sharing your enthusiasm for TivoTool - I got it working last night on my macbook having spent nearly a day trying and failing to get VLC to compile to get v0.85 versions of the vstream module.

I installed TivoTool mainly to stream directly from my S1 Tivo to my macbook and it worked great until I went full screen and there the strain started to show as the audio was choppy. 1st fix was to allow dropping of frames but thanks to your post I thought to remplace the PPC versions of mplayer shipped with TivoTool with the ones shipped with ffmpegX and hey presto - amazing performance! :)

basically I followed your example, renamed ttmplayer to ttmplayer.ppc and then made a symbolic link
cd /Library/Application Support/TivoTool/
ln -s ../ffmpegX/mplayer ttmplayer

(actually I needed to preface the command with "sudo" but perhaps that is not necessary for everyone or too obvious to mention...)
I did the same with the mencoder but I haven't tested it as I am more interested in streaming for the moment.

You probably didn't have an issue with performance using Rosetta emulation as the graphics on the MBP are much faster than the MB.

I have to say the user interface of TivoTool is much easier to use than typing FSIDs into VLC! Thanks! I can't understand why it doesn't appear more often in these forums.

I hope this can help others... Especially those waiting for MacOSX versions of VLC tivo modules.

twynne
08-23-2006, 03:21 PM
I'm trying to follow the instructions above on my MBP, but think I may have done something wrong (I'm newish to the Mac so apologies if I've done something stupid!) :-) I've done the following:

1. Installed Tivotool latest and tested it. As per the report above it worked but performance wasn't the best.

2. Downloaded/installed ffmpegx, renamed ffmpeg to ffmpeg-ppc and created a new link as per above. Downloaded the packages required by ffmpegx as per it's own instructions.

Having followed the instructions above, I don't seem to have a copy of mplayer at /Applications/ffmpegX/. I've looked around a bit and I'm wondering if you meant to create a link to /Library/Application Support/ffmpegX/mplayer???

Lastly having located what I think is the correct mplayer, I can't change into the Tivotool directory as it's not visible in my terminal from the Application Support directory.

When I run Tivotool I get a list of programs, but when selecting something then 'Watch now', the buffering window pops up for moments and then closes... followed by nothing.

Can someone point out where I'm going wrong??

Thanks all,

Tom

twynne
08-23-2006, 03:32 PM
Well got a little bit further by actually copying mplayer from /Library/Application Support/ffmpegX to /Library/Application Support/Tivotool and renaming to ttmplayer. The performance is still not good, and also there are no controls anywhere for the video (pause, stop, etc.) - should there be?

Lastly I have another version of mplayer ('Mplayer OSX') - v1.0pre8. Anyone know if it's possible to make these play in that version?

Cheers once again,

Tom

msui772
08-23-2006, 07:29 PM
Sorry Tom, you are right I got the wrong directory 'cos I was writing from work (and from memory).
The controls for mplayer are keyboard controls. I haven't had time to try many of them but space bar pauses, f goes full screen left and right arrows do what I'd expect...

as for the other version, try it and let us know :-)

Michael.

twynne
08-24-2006, 02:15 AM
I tried the 'OSX' version and I can't seem to get Tivotool to launch it. It may be because I created the link from Finder rather than Terminal (as I'm not that good with Terminal as yet!)

The newer one is here: http://www.mplayerhq.hu/design7/news.html

If anyone else works it out let me know.

As for the performance issues I'm still not sure if it's my installation, my Tivo, or my wireless network! I fear the issue may be my Tivo as it has never been brilliant at streaming for whatever reason. If I get time tonight I may post the Tivo configuration details to see if anyone has a suggestion.

Cheers,

Tom

msui772
08-24-2006, 03:53 AM
I'm happy to try and help, I am assuming the performance issues result in poor audio and or video. The first thing I would suggest is try using a wired network connection to see if it is the wireless link. I don't know what bandwidth the streaming uses and it probably depends on the quality of the recording but it would not surprise me if streaming doesnt work on an 802.11b network. Wireless links can be slowed down significantly if your network is configured for (802.11) b and g as any connections made to the wireless access point in b will slow down the wireless link for all g connections for compatibility. Also wireless links are shared usage of the bandwidth between all nodes on the network where wired links may or may not share the bandwidth depending on whether they are connected via a hub or a switch.
Let me know how it goes.
Michael

msui772
08-24-2006, 03:57 AM
I don't think you will see much difference in performance going to a newer version of mplayer. For me the main difference was using the universal binary as opposed to using the PPC binary in Rosetta emulation.

twynne
08-24-2006, 04:51 PM
Thanks.

All of the devices on my wireless network are 802.11g (1 bridge, 1 wireless printer, and the MBP). While I was streaming the video the other devices were inactive. I've always had excellent speeds with the wireless, so don't think this is the culprit.

My Tivo, on the other hand, has always had slow network performance. Tivoweb is even quite slow to load, as is transferring files (hacks etc.) to/from the Tivo.

I've checked my vserver implementation (rc.sysinit.author) and all looks ok. As far as I know vserver has no parameters that can be set. Is there a way to check the version of vserver? Maybe I need to upgrade it???

Lastly can you think of any network settings that would impact throughput? Clearly the Tivo is on the network and functional, but is there any tuning that can be done?

Thanks again,

Tom

cheer
08-24-2006, 10:38 PM
Look for the MFS Soapbox Derby thread -- it's all about tuning to get better speed out of the Tivo.

twynne
08-25-2006, 01:39 AM
I can't seem to find that thread in this forum. Can you please post a link?

Thanks!!

cheer
08-25-2006, 06:58 AM
You're not trying very hard. I put "mfs soapbox" into the search and it was the third thread listed...

msui772
08-25-2006, 11:14 AM
I had the problem of the buffering window opening and closing when trying to use the crop settings. After a bit of hacking I found TivoTool is sending negative values to mplayer in the -vf crop parameters and mplayer doesn't like it so it returns an error and you don't see anything. Make sure you aren't cropping and set all the video crop settings to 0.

To get some debug info, you could try what I did which is to replace ttmplayer with a script containing the following line:

echo $* > /tmp/ttmplayer_args

then try to play a stream in WinTivo and the file /tmp/ttmplayer_args will have the arguments sent to ttmplayer. In terminal you can then run the command and see the result. The terminal output from mplayer may help you diagnose whether it is a network issue or a configuration issue.
To do it, open a terminal, cd to the TivoTool directory and rename the ttmplayer exe (or link).
Then create a file called ttmplayer with the above line in it.
Play a stream in TivoTool (this configures a pipe as well as running the ttmplayer command so has to be done each time you want to re-run mplayer)
cat /tmp/tmplayer_args [in order to see the arguments passed to ttmplayer]
run ttmplayer with the arguments by copying and pasting them from the output of cat
./ttmplayer_renamed <arguments from file>

of course you could make the script more interesting and put the output from it elsewhere but /tmp but my point is run mplayer from the command line or ttmplayer as it is called in TivoTool and see what messages you get!

Tom mentioned perf issues but without more info on configuration it is difficult to help. I have a Series 1 UK Tivo runing 2.5.5 and a Cachecard for networking.

Hopefully the soapbox thread will help :)

blhirsch
08-25-2006, 03:05 PM
Holy guacamole! I went from 1hr15min for a one hour show to 13 minutes.

FANTASTIC tip, thanks!

twynne
08-26-2006, 05:04 PM
You're not trying very hard. I put "mfs soapbox" into the search and it was the third thread listed...

Interesting as I used EXACTLY that search phrase (in fact it was still in the list when I started typing it) and that thread did not show up. Anyway.... without reading every post in that thread, it appears to be related to S2 boxes using USB. I'm on a series 1 Tivo with ethernet connected via a cachecard. Am I missing something??

twynne
08-26-2006, 05:11 PM
Incidentally the problem seems to be when trying to stream/watch video... it will cache correctly and play for about 30 seconds, then starts stuttering and eventually freezes. Attempting a pure download via Tivotool is reporting approx 100 KB/sec. I would assume this is far below expectation?

msui772
08-28-2006, 04:57 AM
ok. You appear to have a network only issue. TivoTool/mplayer can fill up the buffer and then you can watch until the buffer is emptied, and then it stutters. Increasing the size of the buffer, if you've tried it, will just delay the point at which it empties.
100KB/s is slow... I was going to suggest checking obvious things like cables and I found this thread (http://www.dealdatabase.com/forum/showthread.php?t=45796&highlight=slow+cachecard) which suggests the same. Essentially try to isolate the problem... I know cables can have a big impact - I had a flat cable (not twisted pairs) that was shipped with my Buffalo Linkstation and when placed near my computer the E.M. interference was such that the Linkstation was unusable. New cable fixed the problem!
If you have access to a crossover cable - try connecting your MB directly to your Tivo and checking performance (you may have to manually assign IP addresses if you don't have your hub). That would remove a number of elements from the chain...

It is possible that the TiVo is CPU bound - perhaps if you have other hacks running in the background...

Found the following on SiliconDust: Try running a ping test from your pc looking for any packet loss:
ping <tivo ip addres> -t -l 1460

ok back to work...

twynne
08-28-2006, 05:13 AM
Thanks.

I tried a basic ping and experienced no packet loss, with an avg response of 1.811ms (max 3.885 ms).

One thing that *may* be a possibility... when I installed my cachecard and upgraded the Tivo I used a short ethernet cable with a coupler to extend the ethernet outside the Tivo casing. This way I can just unplug the ethernet from the case without opening. I'll try the crossover cable as you've suggested going directly into the cachecard, then via the coupler to see if there's a difference.

Thanks for the suggestions - I'll report back any results.

Cheers,

Tom

msui772
08-28-2006, 12:38 PM
I read somewhere that someone else was having network performance problems but only with their mac. have you tried testing network performance with something other than a mac? It maybe worth a try...

twynne
09-02-2006, 09:13 AM
I think I may have found the culprit for my performance issues... my router! It seems anything that was connected directly (wired) to my router was performing poorly. I attached a single hub to the router and moved all devices to the hub and voila - everything works. Can't really explain it but will follow it up with Draytek.

Now that I've got streaming working, can anyone post a tutorial on sorting out the aspect ratio with mplayer? I've tried following the docs on their site, but I'm not that strong technically with my Mac as yet. It seems I might need to create a configuration file for mplayer to pick up default settings, but I'm not sure where or how to create the file, and what it needs to contain just to set the default to 16:9.

Thanks all,

Tom

twynne
09-02-2006, 10:38 AM
BTW, I've tried creating a file called mplayer.conf containing the following two lines:

-monitoraspect 16:9
-aspect 16:9

and i've tried placing this both in:

1. Macintosh HD\Library\Application Support\Tivotool
and
2. Macintosh HD\Users\(myuser)

Neither made a difference.

Anyone know where the file should go under OSX??

msui772
09-05-2006, 03:50 AM
Thanks for the tip - I didn't know about the mplayer.conf.

I will try it tonight in
/Users/michael/.mplayer/config

Michael

msui772
09-10-2006, 11:54 AM
Mplayer Config file:

The location:

/Users/michael/.mplayer/config

worked for me but the format is:

monitoraspect=16:9
aspect=16:9

I have to say that it didn't doo much for me... The settings work but what I really needed was something to crop the black bands on top and bottom of the 4:3 image so I can see it full screen on a 16:9 display. (Luckily the crop code in TivoTool v0.6 works so I can use that for streamed files. Not much good for already saved files though)

As for the original subject of the thread... Tivotool 0.6 can't use the mplayer of ffmpegX or even mplayer OSX as they aren't compiled with support for vstream. I compiled mplayer with support for vstream using the instructions here: Google Groups:uk.comp.sys.mac (http://groups.google.com/group/uk.comp.sys.mac/browse_thread/thread/d26608f36428a906/84dcd1b4a4a87d14?lnk=st&q=intel+mac+mplayer+compile&rnum=2#84dcd1b4a4a87d14)

mplayer works but getting many :
[mp2 @ 0x5e2b60]header missing skiping one byte
errors

I will try the instructions on http://www.jonsimpson.co.uk/weblog/2005-12-05/compiling-mplayer-cvs-on-mac-os-x-104-tiger.html
when I have time... but if anywone knows what may be causing the errors... I'm all ears ;-)

On a very much brighter note. johnsolo says he is working on a universal build as one of his highest priorities :-)

ok I hope this helps.

johnsolo
09-15-2006, 02:14 AM
great work guys. universal ffmpeg will obviously be in the next version.

Oh and by the way, I've created a google group for tivotool. It's at http://groups.google.com/group/tivotool/. If anyone has spare time, could you check in on any newbies that might wander in? There's always someone who needs to know how to get vserver & decryption going (hey we were all there once). Thanks!

ohpossum
09-20-2006, 01:56 PM
Issues with UB mplex from new ffmpegX package..

It looks like mplex v1.9.0 that comes in the latest ffmpegX distribution doesn't behave similarly to v1.6.2 that comes with TivoTool v0.6.1.

The result is bad sync problems roughly halfway through any -f 8 muxing.

The new mplex calculates different run-in, video, and audio delays than the older version.

The short story is that most ffmpegX components can be "dropped into" TivoTool to provide some Intel performance increase, however, mplex is not one of them..don't mess with it..

op

MaxxOdd
05-14-2008, 04:48 PM
I use my Mac Mini as a HTPC, but find that the font on Tivotool is way too small to read on my LCD TV from a normal TV viewing distance. Is there a way to increase the font size?