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

pyTivo - Transcoding server

Discussion in 'TiVo Home Media Features & TiVoToGo' started by armooo, Nov 25, 2006.

  1. psywzrd

    psywzrd New Member

    219
    0
    Mar 25, 2003
    Thank you for that! It does seem to be working better now since I started transferring an MKV file and it didn't quit after a second or two like it was before. I'll let it run all the way through just to make sure it grabs the whole file.

    Since you mentioned that pyTivoX is no longer being updated, I'm wondering if there's anything similar out for Mac that is still being updated. Do you know of anything (preferably free or at least cheap)?
     
  2. Iluvatar

    Iluvatar New Member

    377
    0
    Jul 22, 2006
    pyTivoX is the only frontend for pyTivo on the Mac that I am aware of. If you dont care about losing the pretty frontend you may want to check out the original pyTivo website. This is the real program that runs in the background and transfers the videos to and from your TiVo and is still developed by wmcbrine and others. The current snapshot can be downloaded here by selecting the tar.gz or zip links on the right. As it doesn't have a pretty frontend you may find it more difficult to utilize than pyTivoX but it's the best way to stay up to date with pyTivo developments.
     
  3. psywzrd

    psywzrd New Member

    219
    0
    Mar 25, 2003
    Thx iluvatar. I'll just stick with pytivox for now. I don't use it all that much anyway so it should suffice for my needs.
     
  4. jbernardis

    jbernardis New Member

    1,072
    0
    Oct 21, 2003
    Princeton NJ
    pytivo filed to push an mp4 video file to my tivo. I find the following in my log file. ANy clue as to what's wrong here? Could it be something is wrong with the file? I am concerned about "moov atom not found" message, but I don't know what that means. It seems to try to send it anyway. I can play it with VLC.

    2010-08-26 00:42:00,578 INFO pyTivo.video.video: [26/Aug/2010 00:42:00] Start sending "\\BSERVER\media\My Videos\NHL\2009 Playoffs\Round 1 - Philadelphia\Game 4.mp4" to Master Bedroom
    2010-08-26 00:42:00,578 DEBUG pyTivo.video.video: "\\BSERVER\media\My Videos\NHL\2009 Playoffs\Round 1 - Philadelphia\Game 4.mp4" is tivo compatible
    2010-08-26 00:42:00,671 DEBUG pyTivo.video.qt-faststart: moov atom not found, is this a valid MOV/MP4 file?
    2010-08-26 00:42:00,671 DEBUG pyTivo.video.qt-faststart: mp4 already streamable -- copying
    2010-08-26 00:42:01,750 INFO pyTivo.video.video: [Errno 10054] An existing connection was forcibly closed by the remote host
    2010-08-26 00:42:01,750 INFO pyTivo.video.video: [26/Aug/2010 00:42:01] Done sending "\\BSERVER\media\My Videos\NHL\2009 Playoffs\Round 1 - Philadelphia\Game 4.mp4" to Master Bedroom, 0 bytes, 0.00 KBps
    2010-08-26 00:55:19,765 DEBUG pyTivo.mind: __login

    this file was encoded using kmttg profile ff_tivo_hd
     
  5. moyekj

    moyekj Well-Known Member

    11,143
    32
    Jan 23, 2006
    Mission...
    qt-faststart (at least the one built into pyTivo) is failing find the moov atom and move it to the front of the file which is required for TiVo playback of mp4 files. Have you pushed mp4 files via pyTivo from a network share (i.e. \\BSERVER) before? I'm not sure if the qt-faststart method works from a network share or not which is why I ask.

    Perhaps try streaming it with streambaby and/or manually run qt-faststart on it:
    qt-faststart file.mp4 file_new.mp4
    (Then of course try pushing file_new.mp4 if qt-faststart works)
     
  6. jbernardis

    jbernardis New Member

    1,072
    0
    Oct 21, 2003
    Princeton NJ
    Thank you!!

    I ran qt-faststart directly on the file and it was successful. At this moment, the file is pushing. I will let you know if it was successful.

    I'm not sure what the issue was - qa-faststart did not complain, although it did take a good 20 minutes to process the file. This is quite a large file ~5.5GB as an mp4; the original .tivo file was about 12GB.

    On a separate note, I am having good success with the latest version of curl in conjunction with kmttg. Prior to this, kmttg was almost unusable to me because of the frequent transmission failures. With curl 7.21.1 I haven't had a single failure yet.
     
  7. jbernardis

    jbernardis New Member

    1,072
    0
    Oct 21, 2003
    Princeton NJ
    ok - push was successful and file played perfectly on the tivo. I guess I just need to incorporate qa-faststart into my workflow between kmttg and pytivo.

    Thanks again.
     
  8. moyekj

    moyekj Well-Known Member

    11,143
    32
    Jan 23, 2006
    Mission...
    I used to run qt-faststart automatically in kmttg as part of encode tasks intended for playback on TiVo, but since both streambaby & pyTivo added qt-faststart processing if necessary I took it out a while back. Still would be curious to know why the built in pyTivo qt-faststart doesn't work in this case. I wonder if it's related to network share or some other problem?
     
  9. wmcbrine

    wmcbrine Ziphead

    10,367
    22
    Aug 2, 2003
    It's possible that I broke the bundled version of qt-faststart at some point. I don't have a good test suite of recordings for it. If you can point me to some that are known to require it, I'll check it out.
     
  10. moyekj

    moyekj Well-Known Member

    11,143
    32
    Jan 23, 2006
    Mission...
    Here is a very small 1 min SD clip with moov atom at the end. NOTE, I haven't updated my pyTivo installation in a couple of months but I know the version I have is working fine for that and various other clips.
     
  11. jbernardis

    jbernardis New Member

    1,072
    0
    Oct 21, 2003
    Princeton NJ
    I was thinking that it had to do with integer precision. The file is greater than 4 GB and so seekinh it at the end would require an offset of more than 32 bits. But I've also read that python (since 2.2} autotatically gives you as much precision as you need - so I don't know - unless it's a limitation of the seek/tell implementation.
     
  12. moyekj

    moyekj Well-Known Member

    11,143
    32
    Jan 23, 2006
    Mission...
    FYI, I created and tried pushing an mp4 file > 4GB (6.2GB) and get exactly the same issue. A bunch of smaller ones pushed fine. Manually running qt-faststart.exe on the big one worked and then pushed fine.
    Code:
    DEBUG:pyTivo.video.transcode:CACHE HIT! c:\home\dvd\I_Am_Legend.mp4
    DEBUG:pyTivo.video.transcode:TRANSCODE=NO, all compatible, c:\home\dvd\I_Am_Lege
    nd.mp4
    INFO:pyTivo:192.168.1.107 [27/Aug/2010 06:54:13] "GET /videos/I_Am_Legend.mp4?Fo
    rmat=video%2Fmp4 HTTP/1.1" 206 -
    INFO:pyTivo.video.video:[27/Aug/2010 06:54:13] Start sending "c:\home\dvd\I_Am_L
    egend.mp4" to Bedroom
    DEBUG:pyTivo.video.video:"c:\home\dvd\I_Am_Legend.mp4" is tivo compatible
    DEBUG:pyTivo.video.qt-faststart:moov atom not found, is this a valid MOV/MP4 fil
    e?
    DEBUG:pyTivo.video.qt-faststart:mp4 already streamable -- copying
    INFO:pyTivo.video.video:(10054, 'Connection reset by peer')
    INFO:pyTivo.video.video:[27/Aug/2010 06:54:15] Done sending "c:\home\dvd\I_Am_Le
    gend.mp4" to Bedroom, 0 bytes, 0.00 Mb/s
     
  13. PeskyPete

    PeskyPete New Member

    63
    0
    Mar 20, 2010
    When I push the files to tivo, they go into a directory, and adding 'Episode x" to the episodeTitle field, I get the episode number showing up ok.
    However, the directory is 'The Office (US)'
    I would like it to say: The Office Season 5.
    How to I modify the txt file to achieve this?
    Sample txt file:
    seriesTitle : The Office Season 5
    title : Weight Loss
    episodeTitle : Episode 1 Weight Loss
    originalAirDate : 2008-09-25T00:00:00Z
    description : Michael tries to motivate the Scranton branch to lose weight as part of an interoffice competition. Jim is lost after Pam leaves for art school in New York, and Angela continues to see Dwight even though she is now engaged to Andy.
    isEpisode : true
    seriesId : SH726133
    episodeNumber : 501
    vProgramGenre : Comedy
    vSeriesGenre : Comedy
    vDirector : Paul Feig
    vWriter : Lee Eisenberg
    vWriter : Gene Stupnitsky
    vGuestStar : Amy Ryan
    vActor : Steve Carell
    vActor : John Krasinski
    vActor : Jenna Fischer
    vActor : Rainn Wilson
    vActor : Craig Robinson
    vActor : David Denman
    vActor : Paul Lieberstein
    vActor : Melora Hardin
    vActor : Creed Bratton
    vActor : Mindy Kaling
    vActor : Kate Flannery
    vActor : Ed Helms
    vActor : Phyllis Smith
    vActor : Angela Kinsey
    vActor : B.J. Novak
    vActor : Oscar Nuñez
    vActor : Brian Baumgartner
    vActor : Leslie David Baker
    vActor : Ellie Kemper
     
  14. Rdian06

    Rdian06 New Member

    463
    0
    Apr 12, 2008
    I believe you need to use a different seriesId. If you use the real seriesId that already exists in the Tivo guide, the folder will be named according to the guide data.

    If you pick an unused seriesId and do a Push, then I believe the folder name will be whatever you specify as the seriesTitle in the first file pushed.
     
  15. PeskyPete

    PeskyPete New Member

    63
    0
    Mar 20, 2010
    Ok thanks for this tip.
    What would be a typical example of an used id? SH999999?
     
  16. wmcbrine

    wmcbrine Ziphead

    10,367
    22
    Aug 2, 2003
    If it's really a Push, the seriesId shouldn't matter. That is to say, they work for grouping purposes, but they don't get recognized as real, existing seriesIds. So it doesn't matter if it's unused or not. But for Push purposes, you might as well leave it out altogether.
     
  17. hotwire32

    hotwire32 New Member

    19
    0
    Aug 18, 2007
    Oh is that why I can get something from like Amazon VOD and it will list the right grouping even though the show isn't in the current listings, because they pushed it to my Tivo? Does pyTivo let you push?
     
  18. bwall23

    bwall23 New Member

    73
    0
    Jun 8, 2009
    Using Windows7-64-bit, Python version 2.6.5, snapshot wmcbrine-2010-07-02-af4ac219c26f90baa3a59daef57f91e13e920a36, FFmpeg version SVN-r21085

    Is there a debug setting left enabled?

    I get an ffmpeg like output in the "Hosts:" section of an MP4 file on my server that I'm browsing from my TiVo shares. It looks like a response from pyTiVo querying the container and deciding what to do with it. Is this the result of a debug setting not disabled?

    I ONLY see it when I have Global Server Settings->debug: True

    What does Global Server Settings->debug: True DO???

    I'm also having problems with the "threads=#" and the docs don't cover what it applies to. Currently it's a problem and without knowing what it applies to, I don't know how to solve it.
     
  19. bwall23

    bwall23 New Member

    73
    0
    Jun 8, 2009
    kmttg will give you accurate metadata in a .txt file. I also posted a Windows command script that will give you an xml file of metadata gen'd from a .TiVo file here.
     
  20. wmcbrine

    wmcbrine Ziphead

    10,367
    22
    Aug 2, 2003
    Yes... all pushes (aka TiVoCasts) create their own seriesIds/do their own grouping.

    Yes. As noted, you do it from the web interface.

    Yes, that's normal.

    Apart from the Hosts data, it adds extra log/console output.

    pyTivo doesn't have a "threads" option, although it's an option for ffmpeg. Where are you seeing this?

    Why?
     

Share This Page