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. May 6, 2009 #1141 of 3405
    Yoav

    Yoav New Member

    1,048
    0
    Jan 12, 2007
    What's wrong with just running 'route get default' ?
    (you'll need to do an OS detect and do the equivalent in windows of course.. )
     
  2. May 7, 2009 #1142 of 3405
    wmcbrine

    wmcbrine Ziphead

    10,364
    22
    Aug 2, 2003
    Well, there's one thing that's wrong with it. Plus to me it's a big lose, shelling out when you don't have to. I realize it's kludgy as is, though.

    You can see a more elaborated version of the function in HME for Python's start.py. There, I first try the method you're supposed to use -- socket.gethostbyname(socket.gethostname()). The trouble is that this always comes up with 127.0.0.1, on my system. (Actually it worked on my Windows system, IIRC, but not Ubuntu. Checking it now, I see that it also works on my Mac.) So, in that case, it falls back to the fake connection.

    In bringing this function over to pyTivo, I was replacing two instances of code which armooo had come up with independently that worked in the same way, except that he used tivo.com and port 123 where I used 4.2.2.1 and port 0 -- and he didn't first try gethostbyname(). So, I thought, if I used gethostbyname(), it might unintentionally change pyTivo's behavior for someone, by finding the wrong interface. So I decided to omit it, and thought I'd be keeping pyTivo's old behavior if only the address and port were changed (for the reasons mentioned above). In that, it appears I was mistaken.
     
  3. May 7, 2009 #1143 of 3405
    myarken

    myarken New Member

    4
    0
    May 6, 2009
  4. May 7, 2009 #1144 of 3405
    pmd

    pmd New Member

    32
    0
    Dec 14, 2004
    Here's what I got using Python on my Mac running 10.5.6:

    Code:
    Python 2.5.1 (r251:54863, Jan 13 2009, 10:26:13) 
    [GCC 4.0.1 (Apple Inc. build 5465)] on darwin
    Type "help", "copyright", "credits" or "license" for more information.
    >>> import socket
    >>> s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
    >>> s.connect(('4.2.2.1',0))
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
      File "<string>", line 1, in connect
    socket.error: (49, "Can't assign requested address")
    >>> s.connect(('4.2.2.1',1))
    >>> print s.getsockname()[0]
    192.168.1.2
    >>> print socket.gethostbyname(socket.gethostname())
    172.16.115.1
    
    
    Not sure what the gethostbyname() method is doing returning that IP - earlier I tried the same thing and it failed, then worked:

    Code:
    Python 2.5.1 (r251:54863, Jan 13 2009, 10:26:13) 
    [GCC 4.0.1 (Apple Inc. build 5465)] on darwin
    Type "help", "copyright", "credits" or "license" for more information.
    >>> import socket
    >>> print socket.gethostbyname(socket.gethostname())
    172.16.115.1
    >>> s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
    >>> s.connect(('4.2.2.1',0))
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
      File "<string>", line 1, in connect
    socket.error: (49, "Can't assign requested address")
    >>> print socket.gethostbyname(socket.gethostname())
    192.168.1.2
    
    
    Anyway, connecting to a port other than 0 seems to work. This isn't unheard of: http://www.nabble.com/socket-code-works-on-Win32-but-not-Mac-:-(-td21475137.html

    Has anyone else tried pushing to symind.tivo.com yet? I'd like to know whether it's specifically for Australian Tivos, or whether it's a new system that all units can use. I don't know how to debug further, as it looks like I'd need to replicate the original SSL man-in-the-middle attack, and that's way beyond me at the moment!
     
  5. May 7, 2009 #1145 of 3405
    jcthorne

    jcthorne Active Member

    2,720
    3
    Jan 28, 2002
    Houston
    have you tried changing mind.tivo.com to symind.tivo.com in mind.py? (2 instances)

    Has worked for me when I needed to address a different tivo server.
     
  6. May 7, 2009 #1146 of 3405
    pmd

    pmd New Member

    32
    0
    Dec 14, 2004
    Yes, I have. The push didn't come through. I was just hoping someone else would give it a go to confirm my results in case I'm doing something wrong. Using mind.tivo.com doesn't work with Australian accounts - the login fails.

    I'm interested in the possibility that symind.tivo.com might accept connections from all Tivos (and then there would be more people possibly willing to crack that one too - not that there's much incentive for US owners I know :) )
     
  7. May 7, 2009 #1147 of 3405
    kearygriffin

    kearygriffin New Member

    346
    0
    Jan 31, 2008
    And just to note, in streambaby there is an INI setting:
    tivo.mind=
    Which defaults to:
    tivo.mind=mind.tivo.com:8181

    Which points streambaby to the "mind" server to use.

    Keary
     
  8. May 7, 2009 #1148 of 3405
    MighTiVo

    MighTiVo TiVotarian

    2,380
    0
    Oct 26, 2000
    Nashville, TN
    I have searched but can not find the asnwers, these have to have been asked before though...

    1) I have movies on WHS so I understand I can't run streambaby as a service on my computer as it wouldn't have access to networked drives.
    Q) How do I set up Streambaby to auto start when he computer boots?
    (Note there is a user "media" on this windows 7 HTPC that logs in automatically so I just need to program to start on the users login and somehow run hidden)

    2) I understand SB ignores dot names for directories
    Q) Can I add another ignore rule such as VIDEO_TS

    3) SB seems to have an understanding of meta information, although it is a bit buggy as the title changes after viewing the data.
    Q) Is there some way to configure the name of the program as displayed in the playback menu
    For example:
    don't display extension
    convert _ to space
    use the meta tag initially instead of after the program is selected

    Thanks for a super app, and apologies ahead of time for not being able to find this info...
     
  9. May 7, 2009 #1149 of 3405
    m_jonis

    m_jonis Member

    625
    0
    Jan 3, 2002
    Albany, NY
    Not sure what WHS is, but normally any service (meaning it's in the services section on your PC--ie: start -> run -> services.msc) can access network drives, whether it be SMB (Windows, Unix/Linux via SAMBA, NetWare via CIFS) or NFS, etc.

    You have to reconfigure the service though to:

    a) Access the data via UNC paths (ie: \\server\share\something)
    b) Change the Run As (normally it would be System or something like that) so that it runs as a local user with the same userid/password as what would exist on the server you intend to access.

    So if you have a windows server (or SAMBA or something) and the account is say: jsmith, with a password of: password (either in the AD domain, workgroup, local account, etc.)

    You'd have the service run as:
    jsmith (you have to create a local account usually on your PC and I find it easier to browse/choose the userid)
    and specify the password of: password

    Then as long as your PC is booted up (you don't have to login), if the service is set to start automatically, when it tries to access the UNC path, it should make the appropriate calls to the OS (Windows in this case) to access the data with the credentials you specified in the service.
     
  10. May 8, 2009 #1150 of 3405
    MighTiVo

    MighTiVo TiVotarian

    2,380
    0
    Oct 26, 2000
    Nashville, TN
    Thanks, I'll give it a shot.
    WHS = Windows Home Server
     
  11. May 8, 2009 #1151 of 3405
    Kershek

    Kershek New Member

    125
    0
    Oct 10, 2002
    Mesa, AZ
    I was asked to provide debug information as to why my TiVo doesn't see Streambaby, which is copied below. Any help is appreciated.
     
  12. May 8, 2009 #1152 of 3405
    jcthorne

    jcthorne Active Member

    2,720
    3
    Jan 28, 2002
    Houston
    I tried symind.tivo.com from here and it does not work. Must be for non-us accounts or something. Anyway, did not work with my US account.
     
  13. May 9, 2009 #1153 of 3405
    kearygriffin

    kearygriffin New Member

    346
    0
    Jan 31, 2008
    I just added a couple of new features to the current SVN streambaby. If this seems to work pretty well I will probably compile it as a new "release" and put it on the streambaby front page. (The current "release" actually has far more problems than the most recent SVN builds, so it's about time)

    - Push of series should end up in a series folder on the tivo. This can be disabled in the INI with push.folders=false
    - Changed the default to always try to parse all pyTivo metadata and use it to display on the selection screen. (As opposed to only using it after selecting a movie). The selection screen will no longer (by default) use the mp4 metadata title.
    - The two settings that affect the above are use.title.cachedonly=false (old default was true) and use.title.simpleonly=true (new parameter) which tells streambaby to only use easily parseable (pyTivo/XSL) metadata titles on the selection screen.
    - The ability to use multiple "--config /path/to/config.ini" entries on the command line, so specify multiple INI files. They are processed in the order they are found on the command line. (And note to Yoav: Specifying a file that does not exist will not cause an error, if it makes a difference)

    I think thats it. Here is the URL:
    http://streambaby.googlecode.com/files/streambaby-svn-r235.zip
     
  14. May 9, 2009 #1154 of 3405
    mikek2

    mikek2 New Member

    16
    0
    May 2, 2009
    Perth,...
    I tried adding tivo.mind=symind.tivo.com:8181 to my streambaby INI with my Australian account tivo and push still didn't recognize my account. Its a pity we can't get this working with Aussie Tivo's. Are there any other avenues to try?

    Mike
     
  15. jasa

    jasa New Member

    23
    0
    Nov 5, 2008
    Earth
    kearygriffin everything works great only request I have is to document all new functionality so users can read what functions they can use and what lines to put in .ini file


    thanks again this app added tivo the missing functionality only thing that i would want my tivo to do now is to show my live desktop.
     
  16. jannlinder

    jannlinder New Member

    106
    0
    Oct 17, 2004
    San Jose, CA
    Could we get a "generated" 'Recently Added' folder at the top of each listing that displays (using modification time of the files) recent additions to any one section?

    For instance, say your ini file has the following:
    Code:
    dir.1=/Volumes/Drobo/TV Shows
    dir.1.name=TV Shows
    dir.2=/Volumes/Drobo/Movies
    dir.2.name=Movies
    
    Then going into TV Shows would yield the following
    Code:
    Recently Added (this is a folder that when you selected it would display the items)
    Folder or item 1
    Folder or item 2
    Folder or item 3
    
    and going into Movies would yield:
    Code:
    Recently Added (this is a folder that when you selected it would display the items)
    Folder or item 1
    Folder or item 2
    Folder or item 3
    
    Recently Added would only be initiated (to save scanning time) when the user entered that folder. That way the spouse/family could quickly see the files you have most recently put in the repository. I would, of course, list the files found alphabetically by series, then by filename sort (if that value is true) with files that have no series (in the .txt or mp4 metadata) coming first in the list.

    My family loves to watch tv after I have killed the commercials and this would make the Streambaby (or for that matter the PyTivoX product) a massive hit in our home.

    The other thing I would suggest is the displaying of parental ratings. If the ratings field of the MP4 metadata (AtomicParsley uses the iTunEXTC Atom -- for PyTivo the metadata uses the tvRating field ) .. It would be nice to put this at the beginning of the description. This would make the info screen REALLY useful for those of us that use ratings for our MP4 files.

    The format of the iTunEXTC is simple:
    standard|rating|score|reasons

    Standard is:
    us-tv or mpaa for TV SHOW or MOVIE
    Rating is:
    textual rating for score.
    Score is:
    a number that is country-independant.
    Reasons is:
    TV: Violence (V), Language (L), Sexual Content (S), Dialogue (D), or Fantasy Violence (FV)
    MOVIE: random ... but simply display the string

    At the very least, I would hope the REASONS field would be displayed regardless of parsing the rest of the data. (Some of it...like the RATING field itself is country dependant for the wording.)

    This is all displayed and described at: http://shadowofged.blogspot.com/2008/06/itunes-content-ratings.html


    Comments?

    Jann
     
  17. jannlinder

    jannlinder New Member

    106
    0
    Oct 17, 2004
    San Jose, CA
    Ben Franklin said "They who can give up essential liberty to obtain a little temporary safety, deserve neither liberty nor safety." Doesn't this also apply to other aspects of our lives?

    As far as how this option works on TiVos: Demand what you want. You are paying them! I am paying TiVo $38.85 + taxes each month. I want the ability to transfer any shows that are NOT required to be DRM'd. DRM is a slippery slope. If we, as developers, do not demand this, then the general public does not necessarily know it can be any other way.

    Remember the hard drive DRM fiascos a couple of years ago? http://www.google.com/search?hl=en&...ard+drive+western+digital+seagate&btnG=Search

    This is now a no-brainer. It is also stupid. For instance: I can get the cable companies' DVR and it is federally mandated for them to put a firewire connection unencrypted on the back of it so i can do what I like for personal use (legally speaking) with the video that I pay for. This was originally because firewire was to be the transfer medium from by box to my tv to my High-def digital recording device and on and on to the other parts of my stereo system.

    Transferring to a different medium is a legally protected right that I have under that situation. BUT the cable company has given the right to the content providers by essentially agreeing to put in place the copy once (to the tivo) flag under ANY NEW contract they have with ANY premium provider. This is essentially cos the cable companies have also become the media companies and have a built-in reason to agree to this insane copy definition. Can you say Video-On-Demand?

    BUT TiVo does not have that requirement. TiVo has buckled under and agreed, though they were NEVER required to agree to this, that Copy Once means the copy stored on their sealed hard drive. The TiVo argument that has never taken place with Cable Labs should be that this is NOT the Copy Once. They did not previously have the "capital" or the political muscle to take on Cable Labs, but considering the huge profits they are now seeing from the Echostar lawsuits, etc, couldn't thet take this on now?

    My point being that when DRM wins, end users lose and if we are not willing to push them when it does not make sense to DRM something, we are buckling ourselves and only have ourselves to blame.

    Come to think of it, it is against federal law for cable companies to DRM local SD or HD broadcasts on their own cable systems. Why does TiVo think they can initiate DRM on our own content (no matter where that content comes from)?

    By the way, the "Digital Tuning Adapter" that cable companies are bringing out and that Tivo has signed on to is NOT just for preserving their much needed bandwidth to your home, it also disables EVERY SINGLE cable-card television on the market today.

    Think about it, your TV with a cable card slotc now decrypts the signal from the cable company and displays it on your TV. When the cable companies put this tuning adapter on the market in each of their markets, all cable card ready TVs will become useless! The TVs were never engineered to use DTAs. TiVo owners do not worry about that right now, however, think about it, DTAs are NOT fully compatible with SERIES 2 TiVos. (See http://tivocommunity.com/tivo-vb/showthread.php?p=6975004#post6975004 ) How many of them are on the market? How many TiVo users will this affect (can you say Millions)?

    TiVo owners are generally more tech-savvy than other cable viewers. We need to be at the forefront of this fight.

    This is another step that, if one thinks about it, is just wrong!

    Just some food for thought.

    Jann
     
  18. westside_guy

    westside_guy Annoyingly ephemeral

    462
    1
    Mar 13, 2005
    The soggy...
    That's a great quote. Problem is, I don't see how it's even remotely applicable to the subject that was being discussed. :p

    I'm not giving up anything, since I have the original file. I can transfer it wherever I want to. I can push it (or pull it) to any Tivo I own. What, exactly, is it you think you're giving up in this scenario?
     
  19. jannlinder

    jannlinder New Member

    106
    0
    Oct 17, 2004
    San Jose, CA
    I am applying that to DRM in general and the heavy hand in which TiVo applies it to MY hardware and MY media in particular.

    Franklin was specifically speaking of anyone giving up ANY of their rights. In this case, TiVo is imposing their idea of what I can do with that specific file once it is on my TiVo. If all TiVo shows were uncopyable, that would be one thing. By not implementing an interface allowing the PUSHER to specify whether or not to apply copy protection, TiVo is using too heavy a hand.

    It equates to the following:

    "They who give the right NOT to have DRM imposed in order to obtain the ability to view their media on a TiVo, deserve neither a DRM-free world nor the ability to view their own media on a TiVo"

    I am not equating liberty to the right to watch TV (as there is no such right), I am equating liberty to the imposition of DRM.

    There should be a law against imposing DRM when the Federal government does NOT say you should and when contracts with your vendors does not say you should. In this case the Cable Labs (as flawed as that agreement is) says you must honor the Copy Once flag, but it does NOT say and has no authority over applying DRM to MY MEDIA. There is such a law in regards to cable operators and local networks but there is no law against device manufacturers applying DRM to media that is not covered by copyright. They are assuming all media is covered by copyright and are playing babysitter. This is not valid. TiVo is usually better than this.

    </end of rant>

    Jann
     
  20. sullydavid

    sullydavid New Member

    4
    0
    Dec 29, 2003
    I have installed this on WHS and have no problems with it as a service. At this point I do not use it for any networked drives, but you can specify a username and password under the service options for it to run as. As long as that user has access to the network share, then it should be fine.
     

Share This Page