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. Jan 22, 2009 #81 of 3404
    moyekj

    moyekj Well-Known Member

    11,134
    27
    Jan 23, 2006
    Mission...
    streambaby is set to transcode to mpeg2 anything that cannot be natively streamed to Tivo which is why you don't see the issue for those.
     
  2. Jan 22, 2009 #82 of 3404
    Yoav

    Yoav New Member

    1,048
    0
    Jan 12, 2007
    Ok making progress.. I've been sticking a bunch of prints all over the place, and here's what I caught when it tried to load the libavutil:
    Code:
    getLibraryInstance1 : /Applications/pyTivoX.app/Contents/Resources/libavutil.dylib
    catch getLibraryInstance2 : java.lang.UnsatisfiedLinkError: Unable to load library '/Applications/pyTivoX.app/Contents/Resources/libavutil.dylib': dlopen(/Applications/pyTivoX.app/Contents/Resources/libavutil.dylib, 1): Symbol not found: ___stderrp
      Referenced from: /Applications/pyTivoX.app/Contents/Resources/libavutil.dylib
      Expected in: /Applications/pyTivoX.app/Contents/Resources/libavutil.dylib
    
    So it looks like something needs to be dynamically loaded first... Will update more in a bit...
    edit: Looks like that symbol is defined in libSystem.dylib..
     
  3. Jan 22, 2009 #83 of 3404
    milkrun

    milkrun Milk Run

    10
    0
    Jul 2, 2004
    Menlo Park, CA
    I will try the latest pyTivoX with streambaby and report on how idiot proof it is.
    Thanks
     
  4. Jan 22, 2009 #84 of 3404
    ajayabb

    ajayabb Member

    429
    0
    Jan 11, 2007
    Moorestown NJ
    Microsoft Windows XP [Version 5.1.2600]
    I get the following error when I try to run the logs


    (C) Copyright 1985-2001 Microsoft Corp.

    C:\Documents and Settings\AJAY>cd C:\Program Files\streambaby-0.18

    C:\Program Files\streambaby-0.18>streambaby.bat
    'java' is not recognized as an internal or external command,
    operable program or batch file.

    C:\Program Files\streambaby-0.18>
     
  5. Jan 22, 2009 #85 of 3404
    herbman

    herbman Member

    114
    0
    Apr 8, 2008
    You'll need to install the JRE. It can be downloaded at http://java.com
     
  6. Jan 22, 2009 #86 of 3404
    herbman

    herbman Member

    114
    0
    Apr 8, 2008
    Hi, I'm trying your application out (albeit, under pyTivoX), and when I start the program it hangs on "Initializing..." for a few minutes and then prints this trace:
    nitializing...
    Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
    at java.lang.AbstractStringBuilder.<init>(AbstractStringBuilder.java:44)
    at java.lang.StringBuffer.<init>(StringBuffer.java:92)
    at java.net.URI.decode(URI.java:2743)
    at java.net.URI.getPath(URI.java:1303)
    at java.io.File.<init>(File.java:345)
    at com.unwiredappeal.tivo.dir.DirEntry.<init>(DirEntry.java:39)
    at com.unwiredappeal.tivo.dir.DirEntry.fillEntryList(DirEntry.java:142)
    at com.unwiredappeal.tivo.dir.DirEntry.loadEntries(DirEntry.java:98)
    at com.unwiredappeal.tivo.dir.DirEntry.getEntryList(DirEntry.java:83)
    at com.unwiredappeal.tivo.streambaby.PreviewCacheUtils.recursiveFill(PreviewCacheUtils.java:52)
    at com.unwiredappeal.tivo.streambaby.PreviewCacheUtils.recursiveFill(PreviewCacheUtils.java:93)
    at com.unwiredappeal.tivo.streambaby.PreviewCacheUtils.recursiveFill(PreviewCacheUtils.java:93)
    at com.unwiredappeal.tivo.streambaby.PreviewCacheUtils.recursiveFill(PreviewCacheUtils.java:93)
    at com.unwiredappeal.tivo.streambaby.PreviewCacheUtils.recursiveFill(PreviewCacheUtils.java:93)
    at com.unwiredappeal.tivo.streambaby.PreviewCacheUtils.recursiveFill(PreviewCacheUtils.java:93)
    at com.unwiredappeal.tivo.streambaby.PreviewCacheUtils.recursiveFill(PreviewCacheUtils.java:93)
    at com.unwiredappeal.tivo.streambaby.PreviewCacheUtils.recursiveFill(PreviewCacheUtils.java:93)
    at com.unwiredappeal.tivo.streambaby.PreviewCacheUtils.recursiveFill(PreviewCacheUtils.java:93)
    at com.unwiredappeal.tivo.streambaby.PreviewCacheUtils.recursiveFill(PreviewCacheUtils.java:93)
    at com.unwiredappeal.tivo.streambaby.PreviewCacheUtils.recursiveFill(PreviewCacheUtils.java:93)
    at com.unwiredappeal.tivo.streambaby.PreviewCacheUtils.recursiveFill(PreviewCacheUtils.java:93)
    at com.unwiredappeal.tivo.streambaby.PreviewCacheUtils.recursiveFill(PreviewCacheUtils.java:93)
    at com.unwiredappeal.tivo.streambaby.PreviewCacheUtils.recursiveFill(PreviewCacheUtils.java:93)
    at com.unwiredappeal.tivo.streambaby.PreviewCacheUtils.recursiveFill(PreviewCacheUtils.java:93)
    at com.unwiredappeal.tivo.streambaby.PreviewCacheUtils.recursiveFill(PreviewCacheUtils.java:93)
    at com.unwiredappeal.tivo.streambaby.PreviewCacheUtils.recursiveFill(PreviewCacheUtils.java:93)
    at com.unwiredappeal.tivo.streambaby.PreviewCacheUtils.recursiveFill(PreviewCacheUtils.java:93)
    at com.unwiredappeal.tivo.streambaby.PreviewCacheUtils.recursiveFill(PreviewCacheUtils.java:93)
    at com.unwiredappeal.tivo.streambaby.PreviewCacheUtils.recursiveFill(PreviewCacheUtils.java:93)
    at com.unwiredappeal.tivo.streambaby.PreviewCacheUtils.recursiveFill(PreviewCacheUtils.java:93)
    at com.unwiredappeal.tivo.streambaby.PreviewCacheUtils.recursiveFill(PreviewCacheUtils.java:93)
    at com.unwiredappeal.tivo.streambaby.PreviewCacheUtils.recursiveFill(PreviewCacheUtils.java:93)

    Edit I tried bumping up to -Xmx1024m but the same problem exists.. My movies folder has 2367 files (not necessarily all supported by streambaby), and there's also a symlink in there. Are either of these problems?
     
  7. Jan 22, 2009 #87 of 3404
    windracer

    windracer joined the 10k club

    11,580
    3
    Jan 3, 2003
    St. Pete, FL
    Looks like you don't have java installed ... which is weird because aren't you also running Galleon?
     
  8. Jan 22, 2009 #88 of 3404
    ajayabb

    ajayabb Member

    429
    0
    Jan 11, 2007
    Moorestown NJ
    Yep
     
  9. Jan 22, 2009 #89 of 3404
    kearygriffin

    kearygriffin New Member

    346
    0
    Jan 31, 2008
    The symlnik is probably the problem, as it looks like it is going into endless recursion trying to clean out the cache directory (which I actually thought was disabled by default, but I could be wrong)

    Could you check your streambaby.ini file and see if you see a line:
    autogenerate.delete=true

    And if so, setting it false should work-around problem.
     
  10. Jan 22, 2009 #90 of 3404
    kearygriffin

    kearygriffin New Member

    346
    0
    Jan 31, 2008
    Galleon is probably smarter. Streambaby just assumes the java command is on the path. This was fine for my testing for Vista, but maybe it's not true for some (most?) versions of windows?
     
  11. Jan 22, 2009 #91 of 3404
    Yoav

    Yoav New Member

    1,048
    0
    Jan 12, 2007
    Oh that's probably my bad.. I set it to true by default assuming that it cleans up garbage... should it be set to false?
     
  12. Jan 22, 2009 #92 of 3404
    moyekj

    moyekj Well-Known Member

    11,134
    27
    Jan 23, 2006
    Mission...
    It could be that java is installed but it's just not in his path. For that case you need to find where java.exe is installed and edit the streambaby.bat file to add the full path to java.exe OR fix your windows path to include java.
     
  13. Jan 22, 2009 #93 of 3404
    ajayabb

    ajayabb Member

    429
    0
    Jan 11, 2007
    Moorestown NJ
    looks like my java.exe is in the following folder c:\I386. How do I edit this into the .bat file.
     
  14. Jan 22, 2009 #94 of 3404
    moyekj

    moyekj Well-Known Member

    11,134
    27
    Jan 23, 2006
    Mission...
    Just edit streambaby.bat file with notepad or some other editor and change java to c:\I386\java.exe
    You also may want to check that it's the right version of java.
    * Open a "cmd" window and type the following:
    cd I386 <enter>
    java -version <enter>

    If it reports 1.5.x or later then it's fine.
     
  15. Jan 22, 2009 #95 of 3404
    windracer

    windracer joined the 10k club

    11,580
    3
    Jan 3, 2003
    St. Pete, FL
    That's a strange place for it. Usually C:\i386 is where PC manufacturers dump the Windows installation files (i.e., a copy of the CD).

    I would recommend downloading a JRE from Sun and installing fresh, unless you're worried about it breaking Galleon. Have you looked at the Galleon startup script to see where it's getting java from?
     
  16. Jan 22, 2009 #96 of 3404
    kearygriffin

    kearygriffin New Member

    346
    0
    Jan 31, 2008
    It does cleanup garbage, but because of they way I implemented the cache, it is difficult to look at the cached file and figure out if the original movie the cached file is for still exists. (The cached file is the movie name + file length + pvw extension, so it's impossible to tell which dir it came from). So instead of looking through the cache and then seeing if the movie exists, I do the opposite, going through all the videos.

    I disabled it by default because for people with large collections of videos, it could take a long time (and it looks like recursive symlinks will cause issues also). People can then clean the cache manually by running:
    streambaby --cleancache
    (which will also break for recursive symlinks at the moment..)

    So bottom line is, it's probably best for the moment to leave it disabled, until I come up with a more sane way to handle lots of videos and symlinks.
     
  17. Jan 22, 2009 #97 of 3404
    Yoav

    Yoav New Member

    1,048
    0
    Jan 12, 2007
    Sounds good (my only worry is that this is gonna be in pyTivoX, so your average user won't know to ever clean their cache...). On the plus side, I put the cache in tmp, so it will get cleaned for them after reboots at least...

    Also, on the mac front. I seem to have made some progress.. Looks like the libraries were not built right in terms of dependencies.. I manually made some libs to check and things look good now, so rebuilding everything and will see how that works <crossing fingers>
     
  18. Jan 22, 2009 #98 of 3404
    Sicklybutsexy

    Sicklybutsexy New Member

    179
    0
    May 5, 2007
    I can't get any mkv to transfer. Doesn't matter what codec, container, etc...AVI's, mpeg, mp4 no problem.
     
  19. Jan 22, 2009 #99 of 3404
    herbman

    herbman Member

    114
    0
    Apr 8, 2008
    It's working now, thanks. I was able to stream one video, but another gave me trouble. This log shows the troubled one first, and then a successful one.

    Code:
    01/22/09 21:47:07 Listener: added factory
    01/22/09 21:47:07 Main: streambaby ready & listening.
    01/22/09 21:47:19 Listener: 192.168.0.11 icon.png HTTP GET - to factory /streambaby/
    log after close : initContext version=47
    01/22/09 21:47:25 Factory: HME receiver connected
    StreamBabyStream[#1,uri=null] warning: resource 2057 not found.
    StreamBabyStream[#1,uri=null] warning: resource 2057 not found.
    java.lang.ArrayIndexOutOfBoundsException: 41099
    	at com.unwiredappeal.mediastreams.mp4.StreamableMP4.trak_write_index(StreamableMP4.java:1250)
    	at com.unwiredappeal.mediastreams.mp4.StreamableMP4.moov_seek(StreamableMP4.java:2115)
    	at com.unwiredappeal.mediastreams.mp4.StreamableMP4.processMP4Headers(StreamableMP4.java:415)
    	at com.unwiredappeal.mediastreams.mp4.StreamableMP4.<init>(StreamableMP4.java:94)
    	at com.unwiredappeal.mediastreams.MP4StreamingModule.openStreamableVideo(MP4StreamingModule.java:164)
    	at com.unwiredappeal.tivo.videomodule.VideoModuleHelper.openStreamableVideo(VideoModuleHelper.java:112)
    	at com.unwiredappeal.tivo.videomodule.VideoModuleHelper.openVideo(VideoModuleHelper.java:203)
    	at com.unwiredappeal.tivo.streambaby.ViewScreen.finishGoto(ViewScreen.java:338)
    	at com.unwiredappeal.tivo.streambaby.ViewScreen.tick(ViewScreen.java:985)
    	at com.tivo.hme.sdk.util.Ticker.run(Ticker.java:143)
    01/22/09 21:47:53 Listener: 192.168.0.11 642d7195-0bc4-4e32-9cde-13b07d7cdd49.stream HTTP GET - to factory /streambaby/
    StreamBabyStream[#1,uri=null] warning: resource 2551 not found.
    StreamBabyStream[#1,uri=null] warning: resource 2551 not found.
    01/22/09 21:48:12 Listener: 192.168.0.11 I/O Exception handling  HTTP GET 642d7195-0bc4-4e32-9cde-13b07d7cdd49.stream: Broken pipe
    01/22/09 21:48:21 Listener: connection to receiver closed
    01/22/09 21:48:21 Factory: HME receiver disconnected
    01/22/09 21:48:26 Listener: 192.168.0.11 icon.png HTTP GET - to factory /streambaby/
    
    The one that didn't work was mp4, and the one that did was .avi. What can I run to post more info for you?
     
  20. Jan 22, 2009 #100 of 3404
    Sicklybutsexy

    Sicklybutsexy New Member

    179
    0
    May 5, 2007
    This is what I seem to get for any mkv file:

    01/22/09 20:51:40 Listener: Unexpected error: java.lang.NumberFormatException: For input string: ""
     

Share This Page