Although there is a issue tracker on the code site, we wanted to use this thread for more informal discussion about any concerns, suggestions, etc.

Hope you like it...

To quote from the Readme:

cTiVo is a free Mac application to copy shows from your TiVo Premiere, HD, Series3 or Series2 devices. Simple to set up and use, it will download shows to your Mac, and convert them to many popular formats / devices. It is inspired by the great work done on iTiVo, but written in Cocoa/Objective C for better performance / compatibility.

cTiVo is an initial beta; give it a try and tell us what you think. In particular, let us know if you see any problems. We want cTiVo to be a great product for you: simple to use, but powerful in its configurability.
---------------------------------------------------------------------------------------------Features similar to iTiVo include:

'Subscriptions' to your regular shows: downloading them whenever new episodes are available.

Support for different encoders, including HandBrake, mencoder, ffmpeg.

Download queue for batch processing.

Optionally show non-downloadable copy-protected shows.

Automatically remove commercials from downloaded shows.

Download queue restored when restarting app.

Display filter in program list.

Automatic discovery of TiVos using Bonjour.

Folders optionally created for each series.

Automatic updates of the software.

Automatically perform an 'iTunes sync' to your device when the download is completed. With appropriate configuration, in the morning, you will find all your favorite shows from your TiVo loaded onto your iPhone or iPad.

Manual connect by IP address.

Detailed info on each show.

Growl or Apple notifications.

Scheduling of when the queue will be processed.

Built-in Elgato Turbo.264 support.

Generate metadata appropriate for use by tools such as pyTivoX.

Create subtitle files (.srt) from the closed caption info including removal of commercials.

Where does comskip.ini go? The wiki seems silent on the matter of comskip and I can't find any info about it elsewhere.

I enabled it in the GUI but it only seems to be work when I pick MPEG as the output format. As I understand things, MPEG-4/H.264 support in Comskip is an experimental feature and the OS X implementation uses an old version. If that's the case, could cTivo do a two-step process where it creates an MPEG output file, runs comskip against it, and then transcodes the MPEG version into the final target format?

Also, could there be an option to just generate chapter stops for the commercials instead of cutting them? Since Comskip isn't 100% accurate, the cut files sometimes end up missing part of the program.

That's the process I use on the Windows side using VideoRedo and some utility programs and it gives me good results. I'm trying to get out of Windows which is why I'm interested in cTivo. If you want some functionality ideas, you should take a look at VideoRedo AutoProcessor.

It looks like Comskip only doesn't work with Handbrake transcodes. Is that correct?

The Album field needs to include the season or the sort on some iOS devices and versions will look wonky, e.g. "The Americans, Season 1".

The Season/Episode info is blank for many shows both in CTivo and on the Tivo (a Premiere). VideoRedo Autoprocessor gets the season/episode number from thetvdb.com when it's missing so that's another idea for an enhancement.

Edit: I filed a problem report with Tivo about the missing Season/Episode info. I saw a bunch of posts about the problem at the end of January for a similar problem.

Where does comskip.ini go? The wiki seems silent on the matter of comskip and I can't find any info about it elsewhere.

I enabled it in the GUI but it only seems to be work when I pick MPEG as the output format. As I understand things, MPEG-4/H.264 support in Comskip is an experimental feature and the OS X implementation uses an old version. If that's the case, could cTivo do a two-step process where it creates an MPEG output file, runs comskip against it, and then transcodes the MPEG version into the final target format?

Also, could there be an option to just generate chapter stops for the commercials instead of cutting them? Since Comskip isn't 100% accurate, the cut files sometimes end up missing part of the program.

That's the process I use on the Windows side using VideoRedo and some utility programs and it gives me good results. I'm trying to get out of Windows which is why I'm interested in cTivo. If you want some functionality ideas, you should take a look at VideoRedo AutoProcessor.

tannelbill,

Regarding comskip. First, we are currently using comskip 0.92r which I did get to compile on OS X. That said, I haven't really explored the use of any newer features in the later versions of com skip. There is a comskip.ini included in the app bundle which is used by default but in the Format editor you can create a format which points cTiVo to use a comskip.ini of your choosing. In addition to other command line parameter you can specify your own comskip.ini file. This is done in the ComSkip Option entry in the format editor by entering --ini=<full path>/comskip.ini providing the full path to your ini file.
Please note that in using the 0.92r version on OS X, a number of the filters are not working as I would expect (although I'm no expert). Specifically, to get reasonable results I had to basically turn off the uniformity filter by setting non_uniformity=0 and I also found I had to set max_volume=10000.

Regarding the workflow you suggest, that is what is implemented in cTiVo. The .tivo file is downloaded and decrypted to a .mpg file, using tivodecode. That mpg is used for subsequent processing. if the encoder can accept a .edl file (output from comskip), and the user wants to, the mpg file is processed by comskip and the edl file sent to the encoder. HandbrakeCLI and ffmpeg do not accept edl files, mencoder and elgato do.

One nice feature of cTiVo is that it will also edit the .srt (subtitle) files to account for the removal of commercials.

We're looking at the possibility of including the .edl file information as chapter markers but don't have a solution for that in place yet.

Regarding comskip. First, we are currently using comskip 0.92r which I did get to compile on OS X. That said, I haven't really explored the use of any newer features in the later versions of com skip. There is a comskip.ini included in the app bundle which is used by default but in the Format editor you can create a format which points cTiVo to use a comskip.ini of your choosing. In addition to other command line parameter you can specify your own comskip.ini file. This is done in the ComSkip Option entry in the format editor by entering --ini=<full path>/comskip.ini providing the full path to your ini file.
Please note that in using the 0.92r version on OS X, a number of the filters are not working as I would expect (although I'm no expert). Specifically, to get reasonable results I had to basically turn off the uniformity filter by setting non_uniformity=0 and I also found I had to set max_volume=10000.

Regarding the workflow you suggest, that is what is implemented in cTiVo. The .tivo file is downloaded and decrypted to a .mpg file, using tivodecode. That mpg is used for subsequent processing. if the encoder can accept a .edl file (output from comskip), and the user wants to, the mpg file is processed by comskip and the edl file sent to the encoder. HandbrakeCLI and ffmpeg do not accept edl files, mencoder and elgato do.

One nice feature of cTiVo is that it will also edit the .srt (subtitle) files to account for the removal of commercials.

We're looking at the possibility of including the .edl file information as chapter markers but don't have a solution for that in place yet.

Hope off of that help.

scott buchanan

I used cTivo on the latest episode of The Big Bang Theory and, while not perfect, the cut file didn't lose any of the program which is a good start. That was without pointing to the comskip.ini file.

If you are interested in pursuing chaptering, my current flow uses Drax to embed chapter stops into existing mp4 files. It's open source (Windows) but the heavy lifting is done by mp4v2 which is supported on multiple platforms including OS X so making an OS X version of Drax might be fairly easy for someone with the right skill-set.

I've been using VideoRedo Autoprocessor for a couple of years and the author has had to make a number of tweaks to metadata handling in order to get seasons and episodes to display properly on various iOS devices. I still see problems on occasion, e.g. I've got a couple of shows where all the metadata looks fine in iTunes and AtomicParsley but the episodes are displayed out of sequence on my iPhone/iPad. But only for a couple of shows. It's very odd. The problems encountered and fixed are documented in the VAP discussions on the VideoRedo forum:

Another nice feature in VAP is that it embeds artwork for a show from an artwork library (just a set of jpg/png files named ShowName_thumbnail.jpg) when it updates the metadata on the encoded file.

I've been using Handbrake rather than VideoRedo for a variety of reasons but the biggest one currently is that I want output files that have both AAC-LC and 5.1 audio tracks. The AAC track is needed when playing the file on an iOS device and the surround track is used when playing the file on Apple TV. It doesn't look like that's supported by any of your built-in formats. I realize I can do it with a custom HB encode but it might be a nice option for some of your built-ins.

As an aside, I see the season/episode in the HD Menus, just not in the SD Menus and cTivo.

In the HDUI, these and other items are derived from the programId. The SDUI uses the actual episodeNumber metadata field. This is only one of many puzzling differences between the SDUI and HDUI, in areas where you'd think they'd be using a common back-end, but they aren't. But, it's normal, and I wouldn't expect it to change.

__________________

To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts.

It looks like Comskip only doesn't work with Handbrake transcodes. Is that correct?

The Album field needs to include the season or the sort on some iOS devices and versions will look wonky, e.g. "The Americans, Season 1".

The Season/Episode info is blank for many shows both in CTivo and on the Tivo (a Premiere). VideoRedo Autoprocessor gets the season/episode number from thetvdb.com when it's missing so that's another idea for an enhancement.

Edit: I filed a problem report with Tivo about the missing Season/Episode info. I saw a bunch of posts about the problem at the end of January for a similar problem.

Thank you, the comskip issue is with HB, picked another and I could select it. With Respect To the Season, KMTTG seems to pick them up but not this one

@Stevesreed, thanks for the nice thoughts, and sorry to hear about the download problem. To figure out what the issue is, can you send us a detailed log? To do that, turn verbose tracking on in cTivo Preferences, run a few shows until a couple fail, then go to Console>Utilities, filter on cTivo (upper right), Select All, and copy/paste into a file to post on this site. (you can then turn tracking off. You can post the file here, or I can send you my email.

Looks great so FAR - certainly the painfully slow performance I encountered with iTivo is GONE.
I agree with the enhancement request - we need more present encoding format/settings for new devices. I.e iPad normal, retina, MBA, etc.
Thanks,
-Shaown

Ok. I'm a very late adopter, with SL still on my main Mac. But I was curious about cTiVo and loaded it on a ML system I also use.

So far, it looks great. A lot of choices for encoding, almost too many. I need to find a 'cheat sheet' to give me a few best choices.

One small comment/request. When downloading, there's a progress bar but no countdown timer. There are times I'd like to know when a file transfer will be complete, even if it's a moving target. (i.e. I know the traffic on my network will impact transfer.)

And last, this avoids whatever the iTiVo issue is with multiple TiVos not transferring. Great job.

One small comment/request. When downloading, there's a progress bar but no countdown timer. There are times I'd like to know when a file transfer will be complete, even if it's a moving target. (i.e. I know the traffic on my network will impact transfer.)

Downloads were implemented by Project Hosting on Google Code to enable open source projects to make their files available for public download. Unfortunately, downloads have become a source of abuse with a significant increase in incidents recently. Due to this increasing misuse of the service and a desire to keep our community safe and secure, we are deprecating downloads.

More detail at the links above.

__________________
Follow @pytivo on Twitter for project updates and more! To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts. | To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts. A Web app for Roku Remote Control

It's a much higher quality rip than needed for an iPhone/iPad but looks great when played on an Apple TV. I decided that I'd take the file size hit to get a single file that looked good on ATV and still worked with my iOS devices. It also means that if I use AirPlay with my ATV, the video looks great (although I only get stereo sound).

Another recent glitch I've encountered with metadata is that the track number has to be set to the episode number or the episodes on iOS6 will sort alphabetically by episode name rather than in episode number sequence.

Most of my artwork was downloaded from thetvdb.com. VideoRedo AutoProcessor looks for jpg/png artwork in files named "<show title>_thumbnail" located in a folder set in the program preferences.

The issue with the Videos app needing an Album field with "<show name>, Season x" came up with iOS5 on an iPad3. I retested and the problem doesn't exist in iOS6 (latest version of iOS6 tested on an iPhone 4S and an iPad Mini) or iOS5 (latest version of iOS5 tested on an iPod Touch (3rd Generation). Unfortunately, I no longer have an iPad running iOS5 so I can't retest it.

Another recent glitch I've encountered with metadata is that the track number has to be set to the episode number, or the episodes on iOS6 will sort alphabetically by episode name rather than in episode number sequence.

We'll add this.

Quote:

Most of my artwork was downloaded from thetvdb.com. VideoRedo AutoProcessor looks for jpg/png artwork in files named "<show title>_thumbnail" located in a folder set in the program preferences.

Just to clarify, you're downloading these files manually, correct? I don't see anything in thetvdb.com API to get them.

I am manually downloading my images from a variety of sources. Most are from thetvdb.com but sometimes I prefer an image from elsewhere.

There's usually a dozen or so different images on the thetvdb.com to pick from so I don't see it being an automated process. iFlicks gets a default image from thetvdb.com somehow but the results have not been satisfactory. iFlicks does a pretty good job with completing the rest of the metadata though.

One challenge with using thetvdb.com for metadata is that you need a system for handing mismatches between the show and episode names in TiVo and in thetvdb.com. For example, there are two shows named "Castle" in thetvdb.com so you have to use "Castle (2009)" to get the current show. Hawai Five-O is another example. Similar problems exist with episode names.

A nice enhancement would be to be able to have the option to use different images for different seasons by including the season number in the file name, e.g. fringe.jpg is the default image but if fringe_S02.jpg exists, it's used for season 2 episodes.

I ran a five shows through cTiVo Beta 3 yesterday using my custom Handbrake configuration (HB version 0.9.9 w/ a custom encode) and it worked great. Nice work.

How do I get just a decrypted TiVo file? If I use the encoding format "Decrypted TiVo Show", I get a .mpg file rather than a .tivo file.

Edit: Actually, sometimes I get an .mpg file and sometimes I get a .tivo file so maybe there's a bug somewhere. Restarting cTiVo seems to give .tivo files until I cancel a download. After that, I get .mpg files.

Edit2: It's not as simple as that as now I'm getting .mpg files even after a restart.

Technically, I would argue that .mpg is correct, as the file as created by tivo is indeed an mpeg format, albeit MPEG2. In fact, a .tivo file is really an mpeg file as well, but still encrypted with your MAK. Regardless, .mpg is what cTivo is supposed to be creating.

As background on extensions, with different encoders, we either do sequential encoding or simultaneous (depending on whether it is designed to accept an input file from a pipe). So for Handbrake, we mark the original downloaded file as .tivo, then the decrypted file as .tivo.mpg, then the "encoded" version as .mpg. With encoders that can support pipes , we use a buffer file .bin where necessary.

To avoid creating a whole separate code path for decrypt-only files, we use a "encoder" that simply renames the .tivo.mpg file to .mpg. So, the odd thing would be if you got a .tivo file from the decode-only process. Maybe this was an in-process file on the HB side? FYI, this whole area is being redone to improve parallelism as much as possible in the next version.

To confirm that you're getting a decode-only version, look at the file size of the .mpg file, it should be essentially the same on disk as on your tivo (shown as "size" column in cTivo; possibly a hidden column).

The metadata is important to me because I'm taking the file and feeding into a Windows process that uses the metadata to populate the .m4v file. Encrypted or unencrypted doesn't really matter to my process.

I was trying to trick cTiVo by setting "don't delete tmp files" in advanced settings to leave the .tivo file behind. It worked for a bit but doesn't seem to be working now.