1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

Streambaby - new streaming application

Discussion in 'TiVo Home Media Features & TiVoToGo' started by kearygriffin, Jan 20, 2009.

  1. Feb 1, 2009 #341 of 3410
    windracer

    windracer joined the 10k club

    11,580
    3
    Jan 3, 2003
    St. Pete, FL
    Hmm ... I'm seeing this too. I'm streaming an MP4 right now and ffmpeg is chewing up over 80% of the CPU so it's definitely transcoding, not just generating thumbnails. Also, when I exited out of streambaby, the ffmpeg process kept going. :confused:

    I guess we'll have to try running streambaby outside of Galleon to make sure it's not a Galleon setup thing.
     
  2. Feb 1, 2009 #342 of 3410
    windracer

    windracer joined the 10k club

    11,580
    3
    Jan 3, 2003
    St. Pete, FL
    In wrapper.conf there are a series of lines that look like this:
    Code:
    wrapper.java.classpath.1=/etc/galleon
    wrapper.java.classpath.2=/usr/share/galleon/lib/jmdns-1.0.jar
    wrapper.java.classpath.3=/usr/share/galleon/lib/*.jar
    
    They tell Galleon where to search for all the different application .jar files. Those are my own lines show above (and I run Linux) so yours might look like C:\Program Files\Galleon\lib or whatever). You need to add a new line, with the next sequential number (it would be 4, using my sample lines above) that points to where you have streambaby installed, so maybe:

    Code:
    wrapper.java.classpath.4=C:\Program Files\Galleon\hme\streambaby-0.20beta\jbin\*.jar
     
  3. Feb 1, 2009 #343 of 3410
    kearygriffin

    kearygriffin New Member

    346
    0
    Jan 31, 2008
    The easiest way to see if ffmpeg is running because of transcoding is to turn of the auto-generation of preview thumbnails:
    preview.autogenerate=false

    FFmpeg left running after streambaby exits actually points to this being a preview-generation thing. Depending on how streambaby is exited, the preview generation has a known issue where ffmpeg will continue running in the background. I've never seen it left running during a transcode (but it's possible).
     
  4. Feb 1, 2009 #344 of 3410
    windracer

    windracer joined the 10k club

    11,580
    3
    Jan 3, 2003
    St. Pete, FL
    That was it. After disabling previews, the same file no longer triggers ffmpeg "transcoding" (or the high CPU usage).
     
  5. Feb 1, 2009 #345 of 3410
    jasa

    jasa New Member

    23
    0
    Nov 5, 2008
    Earth

    Thanks for help fixed it :):):)
     
  6. Feb 1, 2009 #346 of 3410
    doormat

    doormat New Member

    146
    0
    Sep 15, 2004
    Vegas
    I'm using .20beta, and I started to stream a movie, and then SB crashed in "native code" msvcrt.dll or something like that.

    SB .20b
    Windows Home Server
    Streaming a H.264 video encoded with handbrake (DVD res)
     
  7. Feb 1, 2009 #347 of 3410
    bluehz

    bluehz New Member

    36
    0
    Dec 19, 2008
    Didn't work for me - ffmpeg still spiked the cpu at 92% no matter what I played.

     
  8. Feb 1, 2009 #348 of 3410
    Yoav

    Yoav New Member

    1,048
    0
    Jan 12, 2007
    are you sure it's not spiking it while transcoding? It's not too surprising to have it be at 90%+ while converting a movie to play...
     
  9. Feb 1, 2009 #349 of 3410
    bluehz

    bluehz New Member

    36
    0
    Dec 19, 2008
    Thats what I am trying to determine here. Previous versions of SB played these mp4 flawelessly, now something is causing them to be transcoded and the ol' server can't handle that sort of load.

     
  10. Feb 2, 2009 #350 of 3410
    Yoav

    Yoav New Member

    1,048
    0
    Jan 12, 2007
    Have you enabled the debugging logging? It usually prints out all the info about an mp4 before deciding to transcode or stream. (change 'Warn' to debug in simplelog.properties)
     
  11. Feb 2, 2009 #351 of 3410
    kearygriffin

    kearygriffin New Member

    346
    0
    Jan 31, 2008
    And also make sure to restart Galleon (I think) after adding the
    preview.autogenerate=false
    in streambaby.ini, and also changing the simplelog.properties file. Streambaby probably won't reload its properties otherwise.
     
  12. Feb 2, 2009 #352 of 3410
    windracer

    windracer joined the 10k club

    11,580
    3
    Jan 3, 2003
    St. Pete, FL
    Yes, this is absolutely correct.
     
  13. Feb 4, 2009 #353 of 3410
    moyekj

    moyekj Well-Known Member

    11,145
    33
    Jan 23, 2006
    Mission...
    I have good news on this front. I decided just for fun to try and implement a simple closed captions renderer which reads T2sami .srt files. I am actually quite surprised that for videos where T2sami generates good captions with proper timing it actually works quite well (there were some videos where T2sami did not generate good captions while for others it did a great job).
    I have a prototype working in tivostream already and the way it's written should be fairly easy to port to streambaby. So the next day or two I'll work on porting over to streambaby and pass along the code to Keary if he's interested in taking it.
     
  14. Feb 4, 2009 #354 of 3410
    Sicklybutsexy

    Sicklybutsexy New Member

    179
    0
    May 5, 2007
    Sounds cool...
     
  15. Feb 5, 2009 #355 of 3410
    bakerja

    bakerja New Member

    44
    0
    Sep 3, 2008
    I installed steambaby last night on an old P4 2.4ghz machine and was pleasantly surprised when I got a file to stream on the first attempt! In fact it seems to handle mpg2 files quite well. I had trouble with mpg4 files encoded with sorenson squeeze. It would play audio but black screen for video. Also TIVO high def files that were saved to the system via tivo desktop could not keep up. They would play for a few seconds and freeze.

    All of these files were playing on a RAID5 NAS on a gigabit network. I'm going to try some from the local hard drive tonight to make sure it is not a limitation of the NAS but I suspect the nas is fine.

    Do you know what the requirements of the CPU/RAM are? Does it take a dual core or better to stream the mpg4 and TIVO high def files?

    Thanks for a great start!
    JAB

    edit: This is on a TIVO HD
     
  16. Feb 5, 2009 #356 of 3410
    windracer

    windracer joined the 10k club

    11,580
    3
    Jan 3, 2003
    St. Pete, FL
    My Linux server where I run streambaby is a 3.0GHz Pentium 4 with 1gb of RAM and I'm not having any performance issues streaming MP4s to my HD TiVos.
     
  17. Feb 5, 2009 #357 of 3410
    moyekj

    moyekj Well-Known Member

    11,145
    33
    Jan 23, 2006
    Mission...
    Streaming speeds seem to be same as TTG/TTCB speeds so getting more than 13 Mbps or so under normal circumstances is not possible. Probably if you try and transfer to your Tivo with Tivo Desktop and watch at the same time you would see same problem. One workaround to the issue is if you convert your HD .TiVo files to .mpg (very quick process) then Streambaby has ability to downconvert (throttle) the bit rate on the fly when streaming it to your Tivo, but of course you get lower quality that way. Other workaround is re-encode to H.264 with AC3 audio (lengthy process). That would result in a slight loss of quality but you should be able to play back the result natively to Tivo without any bit rate throttling.
     
  18. Feb 5, 2009 #358 of 3410
    kearygriffin

    kearygriffin New Member

    346
    0
    Jan 31, 2008
    It's hard to know for sure, but the only time i have seen this particular issue (mp4 with's audio but black screen for video) is when the video is marked as being > level 4.1 (a level specifies what kind of decoder is necessary to decode the h264 video).

    TiVo only supports <= level 4.1.

    At some point I may try work around this by changing MP4 streams that specify level 5 or 5.1 to "lie" to the Tivo and specify 4.1 instead. I suspect (but it is only a guess) that most Mp4 streams that specify level 5 or 5.1 don't really mean it. 4.1 is good to up to 50Mbit where level 5 is 135Mbit/s. There are some other differences, but I don't think they would come into play except in situations with video > 50Mbits/s.

    There might be utilities out there to edit the mp4 and the change the AVC level, but I'm not familiar with them.
     
  19. Feb 5, 2009 #359 of 3410
    bakerja

    bakerja New Member

    44
    0
    Sep 3, 2008
    I am considering this for space saving anyway. Any recomendations on an easy batch render app for windows?

    JAB
     
  20. Feb 5, 2009 #360 of 3410
    moyekj

    moyekj Well-Known Member

    11,145
    33
    Jan 23, 2006
    Mission...
    kmttg :)
    Use tivostream_hd profile for HD encoding (or tivostream_sd for SD encoding).
    Or if you don't want to mess with that just use ffmpeg directly with something like following recipe:
    Code:
    ffmpeg -y -i INPUTFILE -vcodec libx264 -coder 0 -level 31 -r 29.97 -sameq -g 300 -bufsize 14745k -b 8000k -maxrate 16000k -bug "+autodetect+ms" -me epzs -trellis 2 -mbd 1 -acodec copy -f mp4 OUTPUTFILE
    
    (Obviously replace INPUTFILE and OUTPUTFILE accordingly)
    8000k bit rate is a little bit of overkill so you may want to reduce that a little.
     

Share This Page