New program for 1 step TTG downloads, decryption, encoding - kmttg

Discussion in 'TiVo Home Media Features & TiVoToGo' started by moyekj, Mar 15, 2008.

  1. Jun 9, 2015 #8021 of 12896
    species8472jj

    species8472jj Member

    61
    0
    Dec 23, 2009

    Advertisements

    I am having the same issue as is mentioned in the conversation below. I am using v1.1o on a Windows 7 machine, and I have 2 TiVo Premiers.

    I configured them, so I can access them remotely, and everything seems to be okay except for the error, I'm getting (detailed below). This error only happens on one of my two TiVos. Additionally, in spite of the error, I am getting the shows displayed with no issues from both TiVos.

    I tried the suggestions below (i.e. change to TiVo beacon and refresh, so the TSN is recognized). However, I'm still getting the error.

    Thank you in advance.



     
  2. Jun 9, 2015 #8022 of 12896
    moyekj

    moyekj Well-Known Member

    12,280
    935
    Jan 23, 2006
    Mission...
    Are you forwarding WAN side ports to respective 1413 LAN side ports for both your Premieres? You need to do that and specify the WAN side ports for each in kmttg config.
    The fact that middlemind is being used at all for a series 4 unit suggests at least 1 of the Premieres doesn't have the proper forwarding setup.
     
  3. Jun 9, 2015 #8023 of 12896
    species8472jj

    species8472jj Member

    61
    0
    Dec 23, 2009
    I double checked my port forwarding against the ports entered in kmttg. I had one type-o. When I fixed it, everything worked fine.

    Sorry this was so trivial, but your suggestion did help me to correct the problem.

    Thank you.
     
  4. Jun 10, 2015 #8024 of 12896
    mattack

    mattack Well-Known Member

    25,309
    635
    Apr 9, 2001
    sunnyvale
    Hopefully I didn't ask this before.

    What does the Tivo mobile app (I've only used the iOS one, presumably the Android one also has this quality) do to get the now playing list SO FAST? That's about the only thing about it I would say is fast.

    And yes, with a ton of programs, if you scroll down quickly, you can get it showing spinners waiting for more info.. But even waiting for all of that to fill in, it's WAY WAY faster than kmttg to get the full playlist info..

    and yes, I guess I'm implying that I wish kmttg would do the same thing to get the program info much quicker.
    With 2206 shows on my Roamio, it takes a while.

    (I do sometimes use the 1 page of program info loaded feature that you added for me long ago, but mostly on my other Tivo.)

    Also, I love that you automatically set the required things when you turn on 'Resume Downloads', which i'm using again sometimes lately.. But I guess I wish it were easier to switch back the other way -- maybe if you turn OFF resume downloads, switch BACK the other things you conveniently switched on.. e.g. go back to RPC, combine, not Java, etc...
     
  5. Jun 11, 2015 #8025 of 12896
    SteveDC

    SteveDC New Member

    12
    4
    Jun 11, 2015

    Advertisements

    Hopefully this is the right place to post this question ?

    I have just downloaded kmttg and pretty impressed with the look and feel. It connects to my TIVOs fine, recovers show listings etc... but when I try downloading & decrypting shows it seems to hang after downloading (regardless of what the next operation is) and then starts beeping almost like morse code intermittently. It never progresses past this.

    Once at this morse code stage the GUI will no longer respond and re-sizing the window causes black regions (i.e. does not repaint).

    Task manager shows javaw.exe taking most of the CPU.

    This is all on an i7 quad core running Windows 7.

    Thoughts?

    BR,
    Steve
     
  6. Jun 13, 2015 #8026 of 12896
    moyekj

    moyekj Well-Known Member

    12,280
    935
    Jan 23, 2006
    Mission...
    For non RPC methods you can limit # queries per TiVo (config-TiVos tab) so you don't have to wait for data on all shows to be obtained. For next release (tomorrow), I updated code to honor that setting when using RPC to get shows as well.
     
  7. Jun 13, 2015 #8027 of 12896
    moyekj

    moyekj Well-Known Member

    12,280
    935
    Jan 23, 2006
    Mission...
    I'd need to see the error messages to suggest anything. Save messages to a file if you can and post here. Without any clues as to what may be happening I can't help.
     
  8. Jun 13, 2015 #8028 of 12896
    moyekj

    moyekj Well-Known Member

    12,280
    935
    Jan 23, 2006
    Mission...
    Version v1.1p has been released. Note that this contains a new RPC certificate to replace the old one that expires in July.

    NOTE: this is likely last kmttg release to be based on Java Swing. Future kmttg releases will require Java 7 or later (currently the requirement is Java 5 or later) and GUI will be based on JavaFX.
     
  9. Jun 13, 2015 #8029 of 12896
    gonzotek

    gonzotek tivo_xml developer

    2,538
    59
    Sep 24, 2004
    Outside...
    Of course..I must have literally updated my install of kmttg to v1.1o about 30 seconds before you pushed out v1.1p. :) Oh well, it's not like it's hard to update, at least.
     
  10. Jun 13, 2015 #8030 of 12896
    jcthorne

    jcthorne Well-Known Member

    3,116
    196
    Jan 28, 2002
    Houston
    Thanks for the update. Look forward to seeing your new version.
     
  11. Jun 13, 2015 #8031 of 12896
    SteveDC

    SteveDC New Member

    12
    4
    Jun 11, 2015
    Hmm, issue seems to have cleared itself now.

    'Twas very strange.
     
  12. Jun 13, 2015 #8032 of 12896
    moyekj

    moyekj Well-Known Member

    12,280
    935
    Jan 23, 2006
    Mission...
    I just checked in preliminary code associated with the next release (lots of changes and new folder structure). Note that if you do attempt to make a build based on new code, make sure you download the new "css" folder that should reside by kmttg.jar file. Also if you do play with it and encounter problems would appreciate some feedback as it's impossible for me to test everything alone extensively.
     
  13. Jun 15, 2015 #8033 of 12896
    mattack

    mattack Well-Known Member

    25,309
    635
    Apr 9, 2001
    sunnyvale
    Yeah, you added the original feature at my request a few years ago. I then for a while stopped using it (since sometimes I want to find the biggest show to download, which obviously means I need all of the data).

    But do you have the answer for my main question -- why do the mobile apps (or even Tivo<>Tivo looking at the now playing lists) get it so much faster? Not quite instantaneously, but VERY fast.

    (The easier toggle between the preferred "more data" and "resume download" would still be great too..)

    oh yeah, and a bug.. POSSIBLY on my end, since I'm booting off of a different partition than I was recently, since something went bad with my other partition (possibly a physical disk error..) Anyway, when I do a resume download, ALMOST always (I think I saw it not do this ONCE last night out of maybe 10-15 uses of resume downloads recently), it gets an error and says the download failed and it's giving up... But strangely, it DID download successfully, and did download just from the resume point. So everything BUT the error (and the beep!) seem to be just fine.

    I will try to remember to copy/paste the exact text sometime soon-ish (probably by this weekend).
     
  14. Jun 15, 2015 #8034 of 12896
    moyekj

    moyekj Well-Known Member

    12,280
    935
    Jan 23, 2006
    Mission...
    That's easy - they download incrementally as needed for what's being displayed, and probably in low detail mode until more detail is needed. kmttg is downloading data for everything in high detail mode. Not to mention they have the advantage of actually having documented protocols vs reverse engineering. I looked into perhaps displaying data incrementally as it's retrieved but it would mean a LOT of changes to implement that, and that doesn't fit well with auto transfers mode which needs all the data at once anyway, so unlikely I'll implement it. In my case I only have a max of about 50 shows recorded on my Roamio Pro, so don't think too much about people that have thousands. I have a hard time keeping up with watching as it is - I couldn't fathom having thousands of recordings I'd never watch. I suppose people that have many are using suggestions?
     
  15. Jun 16, 2015 #8035 of 12896
    innocentfreak

    innocentfreak Well-Known Member

    9,225
    54
    Aug 25, 2001
    Florida
    Not necessarily. Some of us just have plenty of storage for if we feel like watching something later.

    I am also bad about cleaning out season passes so I usually have a ton of season passes. I am over 500 last I checked, but I record anything and everything that looks interesting. Most of it gets dumped to my Synology until I go on binge marathons. My Pro is always in 95%+ and I have suggestions turned off.

    Obviously if this wasn't possible, I would just record what I could keep up with and a handful of filler shows.
     
  16. Jun 16, 2015 #8036 of 12896
    mattack

    mattack Well-Known Member

    25,309
    635
    Apr 9, 2001
    sunnyvale
    Maybe it's just the Java downloading that's giving errors.. but again, the download IS succeeding fully..

    Download failed to file: /Volumes/Tivo3/kmttgdownloads/Charlie Rose/12_10_2014 20252.mpg
    Exit code: -1
    Encryption by QUALCOMM ;)

    End of File
    12_10_2014 20252.mpg: Too many failed downloads, GIVING UP!!
     
  17. Jun 16, 2015 #8037 of 12896
    mattack

    mattack Well-Known Member

    25,309
    635
    Apr 9, 2001
    sunnyvale
    I only use suggestions as a "secondary free space meter".. I only did that after realizing I could hit 100% and not really be full..

    But I record LOTS of random shows, e.g. all of the late night talk shows.. and lots of various music shows (on PBS and such)... many of which yeah I never get around to watching.. but others I skim through and watch parts and download parts at some point.

    ok, I wasn't sure if there was a "low resolution" form. I know you said you didn't want to do incremental updating of the list a long time ago.. But personally, for my own use case, I think it would make my actual day to day use a lot faster if it were possible to just get the show and episode title info as quickly as possible, then get more either in the background _or_ as you select individual items. In most cases, I'd hate a UI like that, but in this case, it'd make me not wait minutes when I did want to do a full download of all of the data.

    Especially if I could get pause point of individual shows, since lets say I knew I was going through my Tonight Show folder to save off the musical performances (which I was doing the other day -- I saved like 5 in a batch)
     
  18. Jun 16, 2015 #8038 of 12896
    Wil

    Wil Unknown Member

    4,767
    302
    Sep 26, 2002
    I've been using that for awhile. Thanks. I finally got around to compiling a newer version, 0.76, on a Mac running OS10.9.5 and the resulting ccextractor seems to work on a couple of shows, but I did get a lot of errors on the compile. Anyone have a clean compile on a newer ccextractor or have an opinion whether using a binary executable of ccextractor with these errors is going to cause problems?

    Code:
    ../src//lib_ccx/file_functions.c:259:45: warning: comparison of unsigned
          expression < 0 is always false [-Wtautological-compare]
                            if ((filebuffer_pos+ctx->startbytes_pos) < 0)
                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~
    1 warning generated.
    ../src//lib_ccx/ts_functions.c:69:22: warning: passing 'char [4]' to parameter
          of type 'unsigned char *' converts between pointers to integer types with
          different sign [-Wpointer-sign]
                    buffered_read(ctx, tp_extra_header, 4);
                                       ^~~~~~~~~~~~~~~
    ../src/lib_ccx/lib_ccx.h:246:41: note: expanded from macro 'buffered_read'
    } else { result=buffered_read_opt (ctx, buffer,bytes); if (ccx_options.g...
                                            ^
    ../src/lib_ccx/lib_ccx.h:263:66: note: passing argument to parameter 'buffer'
          here
    LLONG buffered_read_opt (struct lib_ccx_ctx *ctx, unsigned char *buffer, unsig...
                                                                     ^
    1 warning generated.
    ../src//lib_ccx/ts_tables_epg.c:79:62: warning: format specifies type 'int' but
          the argument has type 'long' [-Wformat]
      ...sprintf(event->start_time_string, "%02d%02d%02d%06x +0000",y,m,d,time&0x...
                                            ~~~~                    ^
                                            %02ld
    /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/usr/include/secure/_stdio.h:47:56: note: 
          expanded from macro 'sprintf'
      __builtin___sprintf_chk (str, 0, __darwin_obsz(str), __VA_ARGS__)
                                                           ^
    ../src//lib_ccx/ts_tables_epg.c:79:64: warning: format specifies type 'int' but
          the argument has type 'long' [-Wformat]
      ...sprintf(event->start_time_string, "%02d%02d%02d%06x +0000",y,m,d,time&0x...
                                                ~~~~                  ^
                                                %02ld
    /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/usr/include/secure/_stdio.h:47:56: note: 
          expanded from macro 'sprintf'
      __builtin___sprintf_chk (str, 0, __darwin_obsz(str), __VA_ARGS__)
                                                           ^
    ../src//lib_ccx/ts_tables_epg.c:79:66: warning: format specifies type 'int' but
          the argument has type 'long' [-Wformat]
      ...sprintf(event->start_time_string, "%02d%02d%02d%06x +0000",y,m,d,time&0x...
                                                    ~~~~                ^
                                                    %02ld
    /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/usr/include/secure/_stdio.h:47:56: note: 
          expanded from macro 'sprintf'
      __builtin___sprintf_chk (str, 0, __darwin_obsz(str), __VA_ARGS__)
                                                           ^
    ../src//lib_ccx/ts_tables_epg.c:79:68: warning: format specifies type
          'unsigned int' but the argument has type 'unsigned long long' [-Wformat]
      ..."%02d%02d%02d%06x +0000",y,m,d,time&0xffffff);
                      ~~~~              ^~~~~~~~~~~~~
                      %06llx
    /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/usr/include/secure/_stdio.h:47:56: note: 
          expanded from macro 'sprintf'
      __builtin___sprintf_chk (str, 0, __darwin_obsz(str), __VA_ARGS__)
                                                           ^
    ../src//lib_ccx/ts_tables_epg.c:364:8: warning: initializing 'char *' with an
          expression of type 'uint8_t *' (aka 'unsigned char *') converts between
          pointers to integer types with different sign [-Wpointer-sign]
            char *dp = &decode_buffer[0];
                  ^    ~~~~~~~~~~~~~~~~~
    ../src//lib_ccx/ts_tables_epg.c:373:10: warning: returning 'uint8_t *'
          (aka 'unsigned char *') from a function with result type 'char *' converts
          between pointers to integer types with different sign [-Wpointer-sign]
                    return decode_buffer;
                           ^~~~~~~~~~~~~
    ../src//lib_ccx/ts_tables_epg.c:481:15: warning: passing 'uint8_t *'
          (aka 'unsigned char *') to parameter of type 'const char *' converts
          between pointers to integer types with different sign [-Wpointer-sign]
            osize=strlen(decode_buffer);
                         ^~~~~~~~~~~~~
    /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/usr/include/string.h:82:28: note: 
          passing argument to parameter here
    size_t   strlen(const char *);
                                ^
    ../src//lib_ccx/ts_tables_epg.c:488:9: warning: returning 'uint8_t *'
          (aka 'unsigned char *') from a function with result type 'char *' converts
          between pointers to integer types with different sign [-Wpointer-sign]
            return out;
                   ^~~
    ../src//lib_ccx/ts_tables_epg.c:553:23: warning: assigning to 'char *' from
          'uint8_t *' (aka 'unsigned char *') converts between pointers to integer
          types with different sign [-Wpointer-sign]
                    event->extended_text=net;
                                        ^~~~
    ../src//lib_ccx/ts_tables_epg.c:563:12: warning: initializing 'uint8_t *'
          (aka 'unsigned char *') with an expression of type 'char *' converts
          between pointers to integer types with different sign [-Wpointer-sign]
                    uint8_t *old = event->extended_text;
                             ^     ~~~~~~~~~~~~~~~~~~~~
    ../src//lib_ccx/ts_tables_epg.c:564:48: warning: passing 'char *' to parameter
          of type 'uint8_t *' (aka 'unsigned char *') converts between pointers to
          integer types with different sign [-Wpointer-sign]
      ...event->extended_text = EPG_DVB_decode_string(event->extended_text, strle...
                                                      ^~~~~~~~~~~~~~~~~~~~
    ../src//lib_ccx/ts_tables_epg.c:360:38: note: passing argument to parameter 'in'
          here
    char* EPG_DVB_decode_string(uint8_t *in, size_t size) {
                                         ^
    11 warnings generated.
     
  19. Jun 16, 2015 #8039 of 12896
    moyekj

    moyekj Well-Known Member

    12,280
    935
    Jan 23, 2006
    Mission...
    Looks like you're using combined download/decrypt with tivodecode and tivodecode is giving non-zero exit status upon completion triggering the error message. Try just a download without decrypt to see if the same thing happens or not. Could be tivodecode doesn't like the partial file.
     
  20. Jun 17, 2015 #8040 of 12896
    PLargent

    PLargent New Member

    17
    0
    Nov 13, 2013
    FIOS...
    If I ask kmttg to download a video from my Tivo Roamio with the metadata box checked I get the expected .txt file created in the expected place.

    If I use the files tab, select a .tivo file and ask to do any work with the metadata file checked I get errors. Here is an example:

    >> CREATING T:\_FreshDownloads\CSI Crime Scene Investigation s06e13 Kiss-Kiss, Bye-Bye USAHD550.TiVo.txt ...
    C:\kmttg_v1.1o\tivodecode\tivodecode.exe --mak MAK -D -x "T:\_FreshDownloads\CSI Crime Scene Investigation s06e13 Kiss-Kiss, Bye-Bye USAHD550.TiVo"
    Saved 6 queued jobs to file: jobData.dat
    IOException - chunk-02-0002.xml (The system cannot find the file specified)
    Failed to generate metadata file: T:\_FreshDownloads\CSI Crime Scene Investigation s06e13 Kiss-Kiss, Bye-Bye USAHD550.TiVo.txt
    Exit code: 0
    Encryption by QUALCOMM ;)

    If I try to execute the command manually from the command line I get odd results:

    C:\Users\root>C:\kmttg_v1.1o\tivodecode\tivodecode.exe --mak 3457040572 -D -v -x "T:\_FreshDownloads\CSI Crime Scene Investigation s06e13 Kiss-Kiss, Bye-Bye USAHD550.TiVo"
    Encryption by QUALCOMM ;)
    Creating turing stream for packet type 00
    C:\Users\root>​

    I do get some files created in my current directory:
    C:\Users\root>dir
    Volume in drive C has no label.
    Volume Serial Number is F095-77C7
    Directory of C:\Users\root
    06/17/2015 12:23 PM <DIR> .
    06/17/2015 12:23 PM <DIR> ..
    06/17/2015 10:17 AM 1,462 .kmttg_settings
    06/17/2015 12:27 PM 9,787 chunk-01-0001.xml
    06/17/2015 12:27 PM 10,622 chunk-02-0002.xml
    3 File(s) 21,871 bytes​
    but no metadata file (.txt) is actually created anywhere. The .xml files have the data needed to create the metadata file (.txt) but it is not in the metadata file format.

    I do have rights to the directory and kmttg can create and make its files there when operating in the file download mode.

    This was working in previous versions of kmttg on a different computer. I can currently on windows7 running kmttg v1.1o.

    Does this make sense to anyone? How do I get kmttg to create the metadata files from the files tab? I have a lot of files that were downloaded without metadata and want to create these now.
     

Share This Page

spam firewall

Advertisements