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 5, 2009 #361 of 3415
    windracer

    windracer joined the 10k club

    11,580
    3
    Jan 3, 2003
    St. Pete, FL
    I used WinFF, based on the instructions in this thread.
     
  2. Feb 5, 2009 #362 of 3415
    cmontyburns

    cmontyburns Excellent.

    14,649
    35
    Nov 14, 2001
    Houston, TX
    Finally got around to trying out StreamBaby. Works well (although I haven't looked at getting it to load ffmpeg on my Mac yet) but I have the bigger problem that anytime I exit watching a video stream on my TiVoHD, the TiVo restarts itself.
     
  3. Feb 5, 2009 #363 of 3415
    gilbreen

    gilbreen Member

    69
    0
    Sep 5, 2007
    Just a note to thanks kearygriffin (and moyekj for tivostream and wmcbrine for HME/VLC Streamer) for StreamBaby. I have it installed on my Mac via pyTivoX (http://www.tivocommunity.com/tivo-vb/showthread.php?t=412802) that Yoav has developed which adds StreamBaby to his implementation of armoo's pyTivo program . As a former ReplayTV user, I have missed streaming media files to my TV versus copying the files.

    StreamBaby brings to Tivo even greater functionality. Now, I can access our media library on our NAS and not worry about multiple copies of movies be transferred to the Tivo's hard drive when our kids watch one of their shows.

    Thanks to all those involved!
     
  4. Feb 6, 2009 #364 of 3415
    Yoav

    Yoav New Member

    1,048
    0
    Jan 12, 2007
    Hey Keary,
    I just updated to the latest svn snapshot. streambaby shows up under the showcases menu, but as soon as I select it, I get "An error occured while running the application. HTTP failure (Http connection error: 0x50005)
    I am attaching the log. There's some sort of java null pointer exception but it's not clear to me what's going on. Before trying to debug it i figured I'd ask in case it's something obvious:

    update : looks like the null is because the 'selection screen' / direntry is trying to call "GetFilename" on itself, where filename is null... Lets see why ...
     

    Attached Files:

    • log.txt
      File size:
      11.2 KB
      Views:
      10
  5. Feb 6, 2009 #365 of 3415
    kearygriffin

    kearygriffin New Member

    346
    0
    Jan 31, 2008
    Thanks Yoav-- I had toplevel.skip=true in my INI which was hiding this problem.

    I just pushed a new version that should fix it-- The new push also includes moyekj's closed captioning code.

    Let me know how the new version does-- If it works OK I'll probably upload a new release this weekend.
     
  6. Feb 6, 2009 #366 of 3415
    Yoav

    Yoav New Member

    1,048
    0
    Jan 12, 2007
    Works like a charm. (I havent tested CC or anything.. I don't have subtitle videos)
     
  7. Feb 7, 2009 #367 of 3415
    rfryar

    rfryar My Media, My Way

    222
    0
    Feb 15, 2008
    Cottage...
    This is a bit off topic but I thought this crowd would be the best place to ask this..

    I want to convert my HD MPGs pulled off my tivos to MP4, but I want to retain the same resolution. Any suggestions? I heard about WinFF, but it does not have a good option to leave the resolution intact. So basically does anyone have a script for FFMPEG for this? Or another tool they recommend. I am on Windows XP BTW.

    Thanks,

    Rick
     
  8. Feb 7, 2009 #368 of 3415
    moyekj

    moyekj Well-Known Member

    11,150
    33
    Jan 23, 2006
    Mission...
    A few posts up in this thread I posted a ffmpeg recipe for converting to H.264 + audio copy (AC3):
    http://www.tivocommunity.com/tivo-vb/showthread.php?p=7049311#post7049311
    Resolution is preserved but it's up to you to determine bit rate. The one used in above recipe is perhaps too high at 8000k so if the goal is space savings you may want to reduce that a little.
     
  9. Feb 7, 2009 #369 of 3415
    kearygriffin

    kearygriffin New Member

    346
    0
    Jan 31, 2008
    With the recipe you post:
    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
    

    I actually think if you just drop the "-b 8000k -maxrate 16000k" the script should convert to the same quality as the original, as I believe the -sameq (which is in your recipe) will tell ffmpeg to use whatever bitrate it needs to have the same quality as the original.

    In fact I thought that when I tried it, having -sameq on the same line as bitrate rate parameters actually ended up overriding the bitrate parameters anyway.

    Edit: I also think dropping the "-r 29.97" would be a good idea, as it will then preserve the frame rate of the original. (which is usally what you want I think)
     
  10. Feb 7, 2009 #370 of 3415
    moyekj

    moyekj Well-Known Member

    11,150
    33
    Jan 23, 2006
    Mission...
    I just tried it on a short clip to confirm and indeed the bitrate argument does affect bitrate when used in conjunction with -sameq:
    With -b 2000k my resulting encoding ends up as:
    Size=8MB
    Overall bit rate=2277 Kbps

    With -b 8000k my resulting encoding from same source ends up as:
    Size=29.7MB
    Overall bit rate=8297 Kbps

    For framerate from my experience something other than 29.97 fps doesn't always play nice on Tivo (but that may be for mpeg2 only) which is why I put that in.

    P.S. I just tried same source mpeg encoding with only -sameq and dropping all bitrate parameters and result was:
    Size=5.2MB
    Overall bit rate=1156 Kbps

    Playing back all 3 via streambaby it was clear that the higher bitrate encodings looked better with the -sameq only lowest bitrate encoding being the worst.

    (source was a 1280x720p mpeg2 with 12 Mbps overall bitrate and size of 44MB)
     
  11. Feb 7, 2009 #371 of 3415
    kas25

    kas25 New Member

    411
    0
    Mar 10, 2003
    NJ
    I just installed it via pytivox and my folders show up on the correct screen but when I try to open the folder i get frozen on the "Please Wait". Any help would be appreciated.
     
  12. Feb 7, 2009 #372 of 3415
    windracer

    windracer joined the 10k club

    11,580
    3
    Jan 3, 2003
    St. Pete, FL
    Well, I rebuilt ffmpeg yesterday using the latest SVN code and --enabled-shared. So now ffmpeg looks like this:
    Code:
    FFmpeg version SVN-r17019, Copyright (c) 2000-2009 Fabrice Bellard, et al.
      configuration: --prefix=/usr --enable-gpl --enable-postproc --enable-libvorbis --enable-libtheora --disable-debug --enable-libmp3lame --enable-libfaad --enable-libfaac --enable-pthreads --enable-libx264 --disable-ffplay --disable-ffserver --enable-libxvid --enable-shared
      libavutil     49.14. 0 / 49.14. 0
      libavcodec    52.13. 0 / 52.13. 0
      libavformat   52.25. 0 / 52.25. 0
      libavdevice   52. 1. 0 / 52. 1. 0
      libpostproc   51. 2. 0 / 51. 2. 0
      built on Feb  6 2009 08:58:52, gcc: 4.3.2
    
    And it works! I get preview thumbnails during FF'ing now, sweet. :cool:

    Of course, the ffmpeg binary is now a lot smaller since all the libraries aren't statically linked. ;) I should have realized that the last time I built it.
     
  13. Feb 7, 2009 #373 of 3415
    moyekj

    moyekj Well-Known Member

    11,150
    33
    Jan 23, 2006
    Mission...
    I replied in the pyTivoX thread already but will re-post here for benefit of others who may have "Please Wait" freezes with latest build from SVN:
    With the latest streambaby build from SVN I was having this problem too. The solution is to put the following in tivostream.ini:
    use.title=false
    sort.filename=true
    With those settings I think streambaby won't try and parse your video files upfront which is where it seems like it hangs up at times. I already notified Keary of problems I was having and those settings were what he recommended and worked for me.
     
  14. Feb 9, 2009 #374 of 3415
    rfryar

    rfryar My Media, My Way

    222
    0
    Feb 15, 2008
    Cottage...
    Ok, now this is a bit rough around the edges.. Chalk that up to the fact I just started looking at the Tivo HME stuff today.

    I have modified two files, the DirEntry.java and the PlayScreen.java.

    Basically now when a file is loaded by DirEntry it will also load all the .txt entries into a Map. I updated DirEntry to also return the real title if it exists instead of the filename through the getStrippedFilename method. This will allow the real title to show up on all the selection screens instead of the filename.

    The playScreen will show an optional image of the movie.. This is a new meta element in the .txt files:
    img.cover : C:\\Share\\Movies\\Jokes\\EnronParty.png

    The path needs to be Java escaped as this is a first draft effort on my part. The image will be reduced down to 150,150 and placed in the upper right corner of the playscreen.

    Currently only the title, description, and movieYear, and the image are displayed. If I was to continue this development I would allow some sort of template approach to be used to layout the metainfo on the screen.

    But I just wanted to throw this out there since I know others have started this effort and I do not want to step on anyone's toes.

    Rick

    The two Java files should be attached in a ZIP file.
     

    Attached Files:

  15. Feb 9, 2009 #375 of 3415
    kearygriffin

    kearygriffin New Member

    346
    0
    Jan 31, 2008
    Thanks rfryar, I'll try to take a look at this a bit later (just took a quick glance).

    I haven't had time to put together documentation and upload a release (but the code is in SVN) to talk about the new metadata handling, but I think what you are looking for with your new code is already in streambaby (but may not be readily apparent, as it is partially disabled for performance reasons).

    The titles should be read from the metadata and used in the selection screen if they are already cached. (They are always read when you select a movie and go to the selection screen). They are cached in one of two ways:
    1) If you select a movie go to the "play" screen the metadata is read, displayed, and title cached. If you go back to the selection screen (immediately or anytime later, as it is cached on disk), then the real title will be displayed
    2) Pressing the ENTER button while looking at the selection screen will read and cache (and redisplay) all of titles using the metadata.

    You can also make streambaby use metadata even if it is not cached by setting:
    use.title.cachedonly=false

    The metadata is parsed using XSLT templates and has the ability to extract and display images. (However image display is only implemented currently for MP4 embedded thumbnails.)

    To support your new img.cover tag, you would need to do the following:
    1) Add the following line in the streambaby.ini:
    xsl.pytivo=pytivo-html.xsl
    (The default is pytivo-text.xsl which outputs the parsed metadata as pure text. Switching to pytivo-html.xsl outputs HTML which can contain images)
    2) edit stylesheets/pytivo-html.xsl (or create a new xsl file and use the appropriate name in step 1) to parse the img.cover tag and output HTML containing the image. You can look at meta-html.xsl for an example, as it is the template for MP4 metadata and looks for the artwork tag and uses it as a thumbnail)

    The XSL templates I provide are very basic (I'm no good with XSL) and need some work, so if anyone is willing to play around ;-)
     
  16. Feb 9, 2009 #376 of 3415
    moyekj

    moyekj Well-Known Member

    11,150
    33
    Jan 23, 2006
    Mission...
    Keary, is it possible to add a config entry for font size when in file browser mode? The default font size is too big for my liking resulting in few lines per screen and some long file names being truncated. Not a big deal but if it's easy enough to add would be appreciated. Thanks.
     
  17. Feb 9, 2009 #377 of 3415
    jannlinder

    jannlinder New Member

    106
    0
    Oct 17, 2004
    San Jose, CA
    Does this mean that my .txt metadata files in the directories SHOULD be being used? I am using PyTivoX 1.1b14 that includes the changes at least up to and including the changes from moyekj on 2/7/2009?

    :)

    I really hate that I cannot see the metadata when using streambaby!

    TIA
     
  18. Feb 9, 2009 #378 of 3415
    Yoav

    Yoav New Member

    1,048
    0
    Jan 12, 2007
    I believe there are some streambaby.ini flags that need to be set for it to try using them? keary? I'm happy to turn those on if you tell me what :)

    Right now I do add
    Code:
    use.title=false
    sort.filename=true
    
    (per moyekj) to work around some sort of bug that was causing stalling. That might turn off the metadata parsing... Can I take those lines out now?
     
  19. Feb 9, 2009 #379 of 3415
    jannlinder

    jannlinder New Member

    106
    0
    Oct 17, 2004
    San Jose, CA
    Yoav,

    Did you get my PM about allowing us to add our own lines to the .ini file?

    J
     
  20. Feb 9, 2009 #380 of 3415
    rfryar

    rfryar My Media, My Way

    222
    0
    Feb 15, 2008
    Cottage...
    I did not see any my .txt files being loaded, although I did see the new enhancements in the SVN (My code was based on a pull from the SVN on Sunday night). But I did not see them being loaded until I put my own code in.

    Regardless I would be happy with anything that allowed them to be used, so will look into the XSL approach. :)

    What needs to be set in the ini to use this XSL metadata feature?

    Thanks,

    Rick
     

Share This Page