Comskip

From ARGUS TV Wiki
(Difference between revisions)
Jump to: navigation, search
(Update Comskip Step 2)
m (added tags)
 
(18 intermediate revisions by one user not shown)
Line 1: Line 1:
{{BOX_EDIT_PAGE}}
 
 
  
 
== About ==
 
== About ==
Line 6: Line 4:
 
Comskip can read MPEG and h.264 video, MPEG2, AC3 and AAC audio from PS , TS and dvr-ms files upto HD resolution (max 2000x1200) at 25fps (PAL) and 29.97fps (NTSC).<br>
 
Comskip can read MPEG and h.264 video, MPEG2, AC3 and AAC audio from PS , TS and dvr-ms files upto HD resolution (max 2000x1200) at 25fps (PAL) and 29.97fps (NTSC).<br>
 
Comskip can NOT read copy protected recordings.<br>
 
Comskip can NOT read copy protected recordings.<br>
The h.264 (HD) and WTV version is still in beta test and currently available for donators only.
+
'''The h.264 (HD) and WTV version just recently also got publicly available.'''
  
 
To experience the effect of Comskip, you need a Client (front-end; player) that supports skipping of commercials.<br>
 
To experience the effect of Comskip, you need a Client (front-end; player) that supports skipping of commercials.<br>
Line 22: Line 20:
  
  
== Versions ==  
+
== Versions & Download ==  
At the time of writing there are two main versions of Comskip (although it's over all officially still a 0.x version - a beta).<br>
+
Generally there are two main versions of Comskip (although it's over all officially still a 0.x version - a beta).<br>
The basic version, and the Donator version. The Donator version is capable of processing h.264 (HD) and supports latest analyzing features (of logos, ratio change, etc.) amongst some other things.
+
The basic version, and the Donator version.<br>
{{BOX_WEB}}'''''Web Site & Download''''<br>
+
At the time of writing the public and donator's version are the same and the public version is now capable of processing h.264 (HD) and supports latest analyzing features (of logos, ratio change, etc.) amongst some other things.
* Find the official Comskip Website under {{LINK-WEB}} [http://www.kaashoek.com/comskip]
+
{{BOX_WEB}}'''''Web Site & Download'''''<br>
* Download of public versions (Non-Donators) can be found under {{LINK-WEB}} [http://www.kaashoek.com/files]
+
* Find the official Comskip Website under {{LINK-WEB}} [http://www.kaashoek.com/comskip http://www.kaashoek.com/comskip]
* Find the Comskip Forum under {{LINK-WEB}} [http://www.kaashoek.com/comskip/index.php]{{/BOX_WEB}}
+
* Download of public versions (Non-Donators) can be found under {{LINK-WEB}} [http://www.kaashoek.com/files http://www.kaashoek.com/files]
 +
* Find the Comskip Forum under {{LINK-WEB}} [http://www.kaashoek.com/comskip/index.php http://www.kaashoek.com/comskip/index.php]{{/BOX_WEB}}
  
  
== Installing and Configuring Comskip ==
+
== Installing & Configuring Comskip ==
 
Comskip is supplied as a .zip file, installing it is as simple as unzipping it and placing it to the location of your choice.<br>
 
Comskip is supplied as a .zip file, installing it is as simple as unzipping it and placing it to the location of your choice.<br>
 
The included settings ("comskip.ini") is suitable for many users already and applies "moderate severe commercial detection".<br>
 
The included settings ("comskip.ini") is suitable for many users already and applies "moderate severe commercial detection".<br>
Three very profound guides, absolutely worth to be read, are available from Comskip Website under {{LINK-WEB}} [http://www.kaashoek.com/comskip].
+
Three very profound guides, absolutely worth to be read, are available from Comskip Website under {{LINK-WEB}} [http://www.kaashoek.com/comskip http://www.kaashoek.com/comskip].
  
 
{{BOX_INFO}}<b>Information</b><br>All examples and references in this article will assume that "comskip.exe" is located in "C:\Program Files\Comskip\comskip.exe".<br>If this is not the case, use your chosen location instead. eg. "C:\Program Files (x86)\comskip81_049_donators\comskip.exe"{{/BOX_INFO}}
 
{{BOX_INFO}}<b>Information</b><br>All examples and references in this article will assume that "comskip.exe" is located in "C:\Program Files\Comskip\comskip.exe".<br>If this is not the case, use your chosen location instead. eg. "C:\Program Files (x86)\comskip81_049_donators\comskip.exe"{{/BOX_INFO}}
  
Configuring Comskip means editing "comskip.ini" - carefully read the included "manual.html". To tweak the configuration may be quite complex and may lead to side-effects, thus, it is recommended to tweak settings step by step and looking at the result. During this time, you should not enable cutters or Comclean as the result may be - depending on your settings - irreversible.<br>
 
Also, the result is strongly depending on your channels, it's quite strongly depending on "broadcast policies" of the individual providers: some show their logos for some more seconds, some move it to a different location showing a kind of PIP ad, some do not change aspect ratio, etc. In addition, it depends on your own preference.<br>
 
The default comskip.ini tries to avoid "too early and rigid" cuts, but you might make this more "severe".
 
We recommend that you contact users within your area through the Comskip Forum to ask for specific assistance
 
  
Before you have {{ATV}} call Comskip to process files you need to be sure the configuration works for your recordings. This is beyond the scope of this article, and we encourage you to visit the Comskip {{LINK-WEB}} [http://www.kaashoek.com/comskip/ web site] and consult it's {{LINK-WEB}} [http://www.kaashoek.com/comskip/index.php forums] to achieve this step.
+
Configuring Comskip basically means editing ''"comskip.ini"'' - carefully read the included "manual.html" and make a backup before editing. To tweak the configuration may be quite complex and may lead to side-effects, thus, it is recommended to tweak settings step by step and looking at the results for a certain time. During this time, you should not enable cutters or Comclean as the result may be - depending on your settings - irreversible.<br>
 +
The result is strongly depending on your providers and channels, it's quite strongly depending on "broadcast policies" of the individual providers: some show their logos for some more seconds, some move it to a different location showing a kind of PIP ad, some do change aspect ratio, some not, etc.<br>
 +
In addition, of course, it strongly depends on your own preferences.<br>
 +
The default comskip.ini tries to avoid "too early and rigid" cuts, but nevertheless cuts "within 30 seconds" (personal experience); you might want to make this more "severe"...<br>
 +
Thus we recommend that you, if you're not sure what to change, contact users within your region through the {{LINK-WEB}} [http://www.kaashoek.com/comskip/index.php Comskip Forum] to ask for specific assistance.
  
== Calling Comskip ==
+
 
To have {{ATV}} call Comskip, we use Processing Commands.
+
The author of this article made pretty good experience by changing the default ini settings to the following more severe through change of these parameters:
 +
{{BOX_CODE}}cut_on_ar_change=2{{BLUE}}; set to 1 if you want to cut also on aspect ratio changes when logo is present, set to 2 to force cuts on aspect ratio changes. set to 0 to disable{{/BLUE}}<br>
 +
delete_show_before_or_after_current=1{{BLUE}}; set to 1 if you want to delete the previous and the next show in the recording, this can lead to the deletion of trailers of next show{{/BLUE}}<br>
 +
after_logo=1{{BLUE}}; set to number of seconds after logo disappears comskip should start to search for silence to insert an additional cutpoint{{/BLUE}}<br>
 +
before_logo=1{{BLUE}}; set to number of seconds after logo appears comskip should start to search for silence to insert an additional cutpoint{{/BLUE}}<br>
 +
{{BLUE}}; some further optimization - not related to commercial detection{{/BLUE}}<br>
 +
delete_logo_file=1{{BLUE}}; set to 1 if you want comskip to tidy up after finishing{{/BLUE}}<br>
 +
output_edl=0{{BLUE}}; 0=no edl file output, 1=edl file creation; edl file for XBMC not needed{{/BLUE}}<br>
 +
verbose=0{{BLUE}};show a lot of extra info, level 5 is also OK, set to 0 to disable{{/BLUE}}{{/BOX_CODE}}
 +
 
 +
 
 +
== Using & Calling Comskip ==
 +
Comskip policies<br>
 +
There are three basic policies of using comskip - depending on your own preferences and your infrastructure.
 +
# Comskip processing after each recording ended (designed for and recommended)
 +
# Comskip Batch Processing while your system is less loaded or idle (reducing resource load)
 +
# Comskip Real-time Processing - watch the ad-less result while being broadcasted
 +
 
 +
=== Comskip Processing after each Recording ended ===
 +
{{BOX_WARNING}}<b>Important</b><br>Running Comskip while watching TV or recordings could adversely affect the user experience. In this case, you may need to run {{LINK-WIKI}} [[#Comskip On-Idle or Batch Processing|Comskip On-Idle or Batch Processing]] at a low/no use time.{{/BOX_WARNING}}
 +
 
 +
To have {{ATV}} call Comskip, we use {{ATVSC}} Processing Commands.
  
 
First we need to create the command. Start by opening the {{ATVSC}} and going to Processing Commands.  
 
First we need to create the command. Start by opening the {{ATVSC}} and going to Processing Commands.  
 
* Create a new command and give the it a name that will easily identify it later.  
 
* Create a new command and give the it a name that will easily identify it later.  
* Set the path to "C:\Program Files\Comskip\comskip.exe".
+
* Set the path to "C:\Program Files\Comskip\comskip.exe" (adopt to your individual setup or use a *.cmd/*.bat file you created).
 
* Set when the command should run.  
 
* Set when the command should run.  
 
* Set whether this command should apply to all new schedules.
 
* Set whether this command should apply to all new schedules.
 
* Save the command.
 
* Save the command.
 +
* Apply this post-processing entry to any schedules you already defined, that should be processed.
 +
 +
Be aware, that this means an additional load to your machine after each recording (and potentially parallel to other recordings). From our experience, this load is considerable low, but you should watch your (other) recordings if you're running your machines "near the limits".<br>
 +
Comskip as a processing command is running invisibly, no CMD window will appear on your screen. The processing time per recording takes, depending on length and resolution of your recording, approx. 1-5 minutes, even on weaker systems.
 +
 +
=== Comskip On-Idle or Batch Processing ===
 +
You may want to decide, that your Comskip application runs as a kind of batch process, compiling all the non-scanned recordings (yet) at a time when your system is idle or at a specific time.<br>
 +
This is especially recommended, if your system tends to be "fully loaded" and you encounter already from time to time broken records. It means, of course, that the Comskip information for your front-end or client is only provided some other time, means: later than "some minutes after the recording".<br>
 +
 +
There are basically two ways to get this done:<br>
 +
# Defining a {{ATV}} Processing Command that only starts at a specific time
 +
# Creating cmd files that are called from your task manager
 +
 +
'''Ad 1.'''<br>
 +
Advantage: no cmd window is shown, it runs "silent"<br>
 +
Disadvantages: first, as Comskip (especially in the older (non-donator) versions sometimes tends to fail or even crash (as the time of writing this article), you'll not know about this. Second, it is not known to the author, if these process commands are run in parallel when having recorded multiple shows. Which would turn the partial instability of Comskip even much worse. Third, this is not a real ''idle processing''. It runs at a time that you ''assume'' the system to be idle.<br>
 +
 +
'''Ad 2.'''<br>
 +
Advantages: you visually can trace the procedure of Comskip. Task manager gives you a large flexibility and a real idle time processing is possible through the task parameters. The process can be starting at a certain time (as above) but then wait until the system turns idle and then start the process. In addition, you can delay, repeat, and last but not least also manually evoke the process. As this way reflects a real batch processing, Comskip is run only sequentially file per file (but of course in the same process/cmd window). In addition, you may simply add the process to your maybe already existing maintenance routine.<br>
 +
Disadvantage: you see a focused cmd box showing up. Nevertheless there are certain free tools available to avoid / suppress this.<br>
 +
 +
If you want to follow the first way, please proceed to {{LINK-WIKI}} [[#Activating Comskip from within ARGUS TV schedules|Activating Comskip from within {{ATV}} schedules]] and select the ''When''-Parameter of your created processing command accordingly.<br>
 +
If you want to follow the latter way, please read on.<br>
 +
 +
 +
'''Creating the Batch Cmd Files'''<br>
 +
The easiest way to get this batch processing running, is to create two *cmd / *.bat files to
 +
# Determine, which video files have not yet been comskip'ped
 +
# Call the "Create-Comskip" bat / cmd file for each file that has not been processed so far
 +
# Call the determination (the core cmd file) from within your task scheduler according to your desires
 +
 +
'''''The master/core cmd file could look like'''''
 +
{{BOX_CODE}}@echo off<br>
 +
{{BLUE}}REM The core cmd file, called from your task manager.<br>
 +
REM it calls the slave cmd for each *.ts file it finds
 +
REM search for all *.ts files and run check with it (cmd) if a corresponding *.txt file exists (with or w/o. subdirs){{/BLUE}}<br>
 +
FORFILES /m *.ts /s /c "cmd /c Slave-Cmd-File.cmd @fname"{{/BOX_CODE}}
 +
 +
'''''The called (slave) cmd/bat file that the above core refers to, could look like'''''
 +
{{BOX_CODE}}@echo off<br>
 +
{{BLUE}}REM The slave cmd file - called for every *.ts file the FORFILES command in core cmd file finds.<br>
 +
REM It checks for the existance of a corresponding *.txt file.{{/BLUE}}<br>
 +
{{RED}} REM You may have to adopt to *.edl, if you're using that output{{/RED}}<br>
 +
{{BLUE}}REM Calls Comskip, if not existent{{/BLUE}}<br>
 +
IF EXIST %1.txt GOTO FOUND_TXT_FOR_TS<br>
 +
GOTO NOT_FOUND_TXT_FOR_TS<br>
 +
<br>
 +
<nowiki>:FOUND_TXT_FOR_TS</nowiki><br>
 +
{{BLUE}}REM *************************************************<br>
 +
REM *.txt file found - no action required<br>
 +
REM You can add your own action here{{/BLUE}}<br>
 +
GOTO END<br>
 +
<br>
 +
<nowiki>:NOT_FOUND_TXT_FOR_TS</nowiki><br>
 +
{{BLUE}}REM *************************************************<br>
 +
REM NO TXT Files are found to  corresponding *.ts file -> RUN Comskip{{/BLUE}}<br>
 +
comskip %1.ts<br>
 +
GOTO END<br>
 +
<br>
 +
<nowiki>:END</nowiki><br>
 +
{{BLUE}}REM *************************************************<br>
 +
REM echo end of subjob.{{/BLUE}}{{/BOX_CODE}}
 +
 +
 +
{{BOX_INFO}}If you decide to solely use the above described batch processing through cmd files, you need not change anything within {{ATVSC}} - you're already done. No Processing Command or further setting has to be created for that case.<br>
 +
You might just want to read below section on how to {{LINK-WIKI}} [[#Cleanup of left-over files from Comskip & ARGUS TV|cleanup your directories from left-over files of Comskip & {{ATV}}]{{/BOX_INFO}}
 +
 +
 +
=== Comskip Real-time & Live TV Processing ===
 +
{{BOX_WARNING}}<b>Important</b><br>Running Comskip while watching TV or recordings could adversely affect the user experience. In this case, you may need to run {{LINK-WIKI}} [[#Comskip On-Idle or Batch Processing|Comskip On-Idle or Batch Processing]] at at a low/no use time.{{/BOX_WARNING}}
 +
 +
 +
With the proper settings, it is possible to run Comskip as a parallel process when the recording starts and have data available almost immediately, this means that you will be able to start watching the recording before it has finished and still skip the Commercial breaks (provided you don't catch up to the live point).<br>
 +
However, results may vary. Many people find Comskip to be unstable when running it "live".
 +
 +
 +
The following parameters influence the live TV behavior, you usually only have to set "live_tv" to 1 to get it properly working together with {{ATV}}:
 +
{{BOX_CODE}}live_tv=0{{BLUE}}; set to 1 if you use parallel processing and need the output while recording{{/BLUE}}<br>
 +
live_tv_retries=4{{BLUE}}; change to 16 when using live_tv in BTV, used for mpeg PS and TS{{/BLUE}}<br>
 +
dvrms_live_tv_retries=300{{BLUE}}; only used for dvr_ms{{/BLUE}}<br>
 +
standoff=0{{BLUE}}; change to 8000000 when using live_tv in BTV{{/BLUE}}{{/BOX_CODE}}
 +
 +
'''Don't forget:''' If you're running the real-time processing, you also need to "tell" this to your schedules:<br>
 +
Open {{ATVSC}}, and select ''Processing Commands''. Set the ''"When"''-Parameter of the intended real-time processing command to ''"Run when the recording starts (live)"''.
 +
 +
 +
== Activating Comskip from within {{ATV}} Schedules ==
 +
This section covers the following items:<br>
 +
# Creation of {{ATV}} Comskip processing command
 +
# Activation of Comskip processing for existing individual recordings
 +
 +
 +
{{BOX_INFO}}If you decide to solely use the above described batch processing through cmd files, you need not change anything within {{ATVSC}} - you're already done. No Processing Command has to be created for that case.<br>
 +
You might just want to read below section on how to {{LINK-WIKI}} [[#Cleanup of left-over files from Comskip & ARGUS TV|cleanup your directories from left-over files of Comskip & {{ATV}}]{{/BOX_INFO}}
 +
 +
 +
=== Creation of {{ATV}} Comskip Processing Command ===
 +
* Enter the {{ATVSC}} and select ''Processing Commands''
 +
* Hit the button ''Create'' to the top right.
 +
* Make sure, the newly created entry in the list box now called "-Unnamed-" is highlighted and then edit in the below part of the window the settings:
 +
** Choose your desired name
 +
** Set the full path to your ''comskip.exe'' including comskip.exe itself, e.g. ''C:\Program Files\Comskip\comskip.exe''
 +
** As "Arguments" enter ''%%FILE%%''
 +
** Decide when you want Comskip to be run - depending on your usage as described in the sections above. ''Note: if you choose "Run when the recording starts (live)", please don't forget to also activate real-time processing of Comskip as described.
 +
** Decide if you want to assign the Comskip processing command to all new (video) recordings and activate the checkbox ''Automatically assign to all new television schedules'' if so.
 +
 +
 +
{{BOX_INFO}}'''Information:'''<br>
 +
* If you already have other processing commands defined as ''automatically assign to all new television schedules'', you may safely activate it for this one, too. {{ATV}} can handle more than just one processing command for each recording.
 +
* Already existing schedules are not automatically updated. They must be individually edited and the Comskip processing command has to be added to each of the desired recordings as described in the next section.
 +
* You can set up several processing commands and apply them to schedules depending on your watching habits. For example, you could have commands called "Comskip, Record end" and "Comskip, 2am". Then, for example, manually apply the first to the schedule that records the News and the second to all other recordings.{{/BOX_INFO}}
  
{{BOX_WARNING}}<b>Important</b><br>Running Comskip while watching TV or recordings could adversely affect the user experience. In this case, you may need to run Comskip at at a low/no use time.{{/BOX_WARNING}}
 
  
{{BOX_INFO}}<b>Information</b><br>With the proper settings, it is possible to run Comskip when the recording starts and have data available almost immediately, this means that you will be able to start watching the recording before it has finished and still skip the Commercial breaks (provided you don't catch up to the live point). However, results may vary. Many people find Comskip to be unstable when running it "live".{{/BOX_INFO}}
+
=== Activation of Comskip Processing for existing individual Recordings ===
 +
Adding Comskip processing to existing (or newly created, if not set to be activated for all future recordings) schedules is considerably easy:
 +
* Open the Recordings page within {{ATVSC}}
 +
* Choose a schedule to add Comskip processing to, and click the "Edit" button
 +
* In the "Processing" field, select the newly created Comskip processing command
 +
* Save the schedule
 +
* Repeat this procedure for every schedule you want to run (one of) your Comskip command(s) with
  
  
Next we need to edit the existing recording schedules to include the new Processing Command. Open the Recordings page.
+
== Client-specific Behaviour ==
* Choose a schedule to add Comskip to, and click the "Edit" button
+
=== {{MP}} ===
* In the "Processing" field, Select the newly created comskip command.
+
Mediaportal can use Comskip data when playing recorded TV, but only through the TV section (not Videos etc.) To make it work, you must check the "Use Comskip Data" checkbox in the TV section of {{MPC}}. After that, it should just work.
* Save the schedule.
+
* Repeat for every schedule you want to run Comskip with.
+
  
{{BOX_INFO}}<b>Information</b><br>You can set up several processing commands and apply them to schedules depending on your watching habbits. For example, you could have commands called "Cmoskip, Record end" and "Comskip, 2am". Then manually apply the first to the schedule that records the News and the second to all other recordings{{/BOX_INFO}}
+
=== XBMC ===
 +
XBMC fully supports comskip'ped files. It requires (only) the default created text files (*.txt) with the same root file name and in the same directory as the recorded show. EDL file creation may safely be deactivated.<br>
 +
Since XBMC 12.0 Frodo, the jump table is pre-read and a seamless jump is guaranteed. The actual result, however, is of course depending on the generated Comskip file (*.txt) and thus on your settings & your provider.
  
== {{MP}} ==
 
Mediaportal can use Comskip data when playing recorded TV, but only through the TV section (not Videos etc.) To make it work, you must check the "use Comskip Data" <font size=-2>(Confirmation of name needed)</font> checkbox in the TV section of {{MPC}}. After that, it should just work.
 
  
== XBMC ==
+
== Cleanup of left-over files from Comskip & {{ATV}} ==
Using Comskip in XBMC.
+
Depending on your settings of {{ATV}} (creating potentially *.thmb and *.arg files), you already have some "left-overs" after deleting a show from within your client.<br>
 +
Using Comskip definitively creates additional files, that will remain in your directories after a show has been deleted through your front-end (they usually delete the video file only). You will at least have remaining *.txt files but also other outputs - depending on your settings - like *.logo.txt, *.edl, and maybe even many others.<br>
 +
A small helper may clean up your directories (and sub-directories) from these files. You may run them from within your maintenance task or even combine them with the batch processing described above, if you decided to use it.<br>
 +
The simple cmd files "CleanDirectory" may help you: find them under {{LINK-WEB}} [[http://21x.eu/downloads/CleanDirectory.html http://21x.eu/downloads/CleanDirectory.html]]
 +
{{TAGS}}Argus "Argus-TV" ArgusTV ATV "A-TV" ForTheRecord 4TR "For The Record" Scheduler Recorder Console Comskip download installation setup "set-up" commercial skipping cut{{/TAGS}}

Latest revision as of 06:46, 10 December 2012

Contents

[edit] About

Comskip is a free video commercial detector. It is a windows console application that reads a video file and analyses the content based on a large amount of configurable parameters. After analysis it generates a file in various possible formats containing the location of the commercials inside the video file.
Comskip can read MPEG and h.264 video, MPEG2, AC3 and AAC audio from PS , TS and dvr-ms files upto HD resolution (max 2000x1200) at 25fps (PAL) and 29.97fps (NTSC).
Comskip can NOT read copy protected recordings.
The h.264 (HD) and WTV version just recently also got publicly available.

To experience the effect of Comskip, you need a Client (front-end; player) that supports skipping of commercials.
Front-ends, known to support commercial skipping:

  • MediaPortal
  • XBMC

Front-ends, known NOT to support commercial skipping:

  • Windows Media Player
  • Windows Media Center

Comskip has a companion application called "Comclean" that can permanently remove the commercials from recordings. This is useful if you wish to keep recordings as it reduces file sizes. Comskip also supports the MPEG cutters mpgtx, cuttermaran, and mencoder. Cutting recordings usually means a (automatic, but not lossless) decode, cutting, and then re-encode of the video file.

ICN WARN.PNG Important
ARGUS TV only calls Comskip to process a recording, after that it is up to Comskip to use the settings you have provided it, and your client software to use the created marker file info to skip the adverts.


[edit] Versions & Download

Generally there are two main versions of Comskip (although it's over all officially still a 0.x version - a beta).
The basic version, and the Donator version.
At the time of writing the public and donator's version are the same and the public version is now capable of processing h.264 (HD) and supports latest analyzing features (of logos, ratio change, etc.) amongst some other things.

ICN WEB.PNG

Web Site & Download


[edit] Installing & Configuring Comskip

Comskip is supplied as a .zip file, installing it is as simple as unzipping it and placing it to the location of your choice.
The included settings ("comskip.ini") is suitable for many users already and applies "moderate severe commercial detection".
Three very profound guides, absolutely worth to be read, are available from Comskip Website under ICN WEB INLINE.PNG http://www.kaashoek.com/comskip.

ICN INFO.PNG Information
All examples and references in this article will assume that "comskip.exe" is located in "C:\Program Files\Comskip\comskip.exe".
If this is not the case, use your chosen location instead. eg. "C:\Program Files (x86)\comskip81_049_donators\comskip.exe"


Configuring Comskip basically means editing "comskip.ini" - carefully read the included "manual.html" and make a backup before editing. To tweak the configuration may be quite complex and may lead to side-effects, thus, it is recommended to tweak settings step by step and looking at the results for a certain time. During this time, you should not enable cutters or Comclean as the result may be - depending on your settings - irreversible.
The result is strongly depending on your providers and channels, it's quite strongly depending on "broadcast policies" of the individual providers: some show their logos for some more seconds, some move it to a different location showing a kind of PIP ad, some do change aspect ratio, some not, etc.
In addition, of course, it strongly depends on your own preferences.
The default comskip.ini tries to avoid "too early and rigid" cuts, but nevertheless cuts "within 30 seconds" (personal experience); you might want to make this more "severe"...
Thus we recommend that you, if you're not sure what to change, contact users within your region through the ICN WEB INLINE.PNG Comskip Forum to ask for specific assistance.


The author of this article made pretty good experience by changing the default ini settings to the following more severe through change of these parameters:

cut_on_ar_change=2; set to 1 if you want to cut also on aspect ratio changes when logo is present, set to 2 to force cuts on aspect ratio changes. set to 0 to disable

delete_show_before_or_after_current=1; set to 1 if you want to delete the previous and the next show in the recording, this can lead to the deletion of trailers of next show
after_logo=1; set to number of seconds after logo disappears comskip should start to search for silence to insert an additional cutpoint
before_logo=1; set to number of seconds after logo appears comskip should start to search for silence to insert an additional cutpoint
; some further optimization - not related to commercial detection
delete_logo_file=1; set to 1 if you want comskip to tidy up after finishing
output_edl=0; 0=no edl file output, 1=edl file creation; edl file for XBMC not needed
verbose=0;show a lot of extra info, level 5 is also OK, set to 0 to disable


[edit] Using & Calling Comskip

Comskip policies
There are three basic policies of using comskip - depending on your own preferences and your infrastructure.

  1. Comskip processing after each recording ended (designed for and recommended)
  2. Comskip Batch Processing while your system is less loaded or idle (reducing resource load)
  3. Comskip Real-time Processing - watch the ad-less result while being broadcasted

[edit] Comskip Processing after each Recording ended

ICN WARN.PNG Important
Running Comskip while watching TV or recordings could adversely affect the user experience. In this case, you may need to run ICN WIKI INLINE.PNG Comskip On-Idle or Batch Processing at a low/no use time.

To have ARGUS TV call Comskip, we use ARGUS TV Scheduler Console Processing Commands.

First we need to create the command. Start by opening the ARGUS TV Scheduler Console and going to Processing Commands.

  • Create a new command and give the it a name that will easily identify it later.
  • Set the path to "C:\Program Files\Comskip\comskip.exe" (adopt to your individual setup or use a *.cmd/*.bat file you created).
  • Set when the command should run.
  • Set whether this command should apply to all new schedules.
  • Save the command.
  • Apply this post-processing entry to any schedules you already defined, that should be processed.

Be aware, that this means an additional load to your machine after each recording (and potentially parallel to other recordings). From our experience, this load is considerable low, but you should watch your (other) recordings if you're running your machines "near the limits".
Comskip as a processing command is running invisibly, no CMD window will appear on your screen. The processing time per recording takes, depending on length and resolution of your recording, approx. 1-5 minutes, even on weaker systems.

[edit] Comskip On-Idle or Batch Processing

You may want to decide, that your Comskip application runs as a kind of batch process, compiling all the non-scanned recordings (yet) at a time when your system is idle or at a specific time.
This is especially recommended, if your system tends to be "fully loaded" and you encounter already from time to time broken records. It means, of course, that the Comskip information for your front-end or client is only provided some other time, means: later than "some minutes after the recording".

There are basically two ways to get this done:

  1. Defining a ARGUS TV Processing Command that only starts at a specific time
  2. Creating cmd files that are called from your task manager

Ad 1.
Advantage: no cmd window is shown, it runs "silent"
Disadvantages: first, as Comskip (especially in the older (non-donator) versions sometimes tends to fail or even crash (as the time of writing this article), you'll not know about this. Second, it is not known to the author, if these process commands are run in parallel when having recorded multiple shows. Which would turn the partial instability of Comskip even much worse. Third, this is not a real idle processing. It runs at a time that you assume the system to be idle.

Ad 2.
Advantages: you visually can trace the procedure of Comskip. Task manager gives you a large flexibility and a real idle time processing is possible through the task parameters. The process can be starting at a certain time (as above) but then wait until the system turns idle and then start the process. In addition, you can delay, repeat, and last but not least also manually evoke the process. As this way reflects a real batch processing, Comskip is run only sequentially file per file (but of course in the same process/cmd window). In addition, you may simply add the process to your maybe already existing maintenance routine.
Disadvantage: you see a focused cmd box showing up. Nevertheless there are certain free tools available to avoid / suppress this.

If you want to follow the first way, please proceed to ICN WIKI INLINE.PNG Activating Comskip from within ARGUS TV schedules and select the When-Parameter of your created processing command accordingly.
If you want to follow the latter way, please read on.


Creating the Batch Cmd Files
The easiest way to get this batch processing running, is to create two *cmd / *.bat files to

  1. Determine, which video files have not yet been comskip'ped
  2. Call the "Create-Comskip" bat / cmd file for each file that has not been processed so far
  3. Call the determination (the core cmd file) from within your task scheduler according to your desires

The master/core cmd file could look like

@echo off

REM The core cmd file, called from your task manager.
REM it calls the slave cmd for each *.ts file it finds REM search for all *.ts files and run check with it (cmd) if a corresponding *.txt file exists (with or w/o. subdirs)

FORFILES /m *.ts /s /c "cmd /c Slave-Cmd-File.cmd @fname"

The called (slave) cmd/bat file that the above core refers to, could look like

@echo off

REM The slave cmd file - called for every *.ts file the FORFILES command in core cmd file finds.
REM It checks for the existance of a corresponding *.txt file.

REM You may have to adopt to *.edl, if you're using that output
REM Calls Comskip, if not existent
IF EXIST %1.txt GOTO FOUND_TXT_FOR_TS
GOTO NOT_FOUND_TXT_FOR_TS

:FOUND_TXT_FOR_TS
REM *************************************************
REM *.txt file found - no action required
REM You can add your own action here

GOTO END

:NOT_FOUND_TXT_FOR_TS
REM *************************************************
REM NO TXT Files are found to corresponding *.ts file -> RUN Comskip

comskip %1.ts
GOTO END

:END
REM *************************************************
REM echo end of subjob.


ICN INFO.PNG If you decide to solely use the above described batch processing through cmd files, you need not change anything within ARGUS TV Scheduler Console - you're already done. No Processing Command or further setting has to be created for that case.

You might just want to read below section on how to ICN WIKI INLINE.PNG [[#Cleanup of left-over files from Comskip & ARGUS TV|cleanup your directories from left-over files of Comskip & ARGUS TV]


[edit] Comskip Real-time & Live TV Processing

ICN WARN.PNG Important
Running Comskip while watching TV or recordings could adversely affect the user experience. In this case, you may need to run ICN WIKI INLINE.PNG Comskip On-Idle or Batch Processing at at a low/no use time.


With the proper settings, it is possible to run Comskip as a parallel process when the recording starts and have data available almost immediately, this means that you will be able to start watching the recording before it has finished and still skip the Commercial breaks (provided you don't catch up to the live point).
However, results may vary. Many people find Comskip to be unstable when running it "live".


The following parameters influence the live TV behavior, you usually only have to set "live_tv" to 1 to get it properly working together with ARGUS TV:

live_tv=0; set to 1 if you use parallel processing and need the output while recording

live_tv_retries=4; change to 16 when using live_tv in BTV, used for mpeg PS and TS
dvrms_live_tv_retries=300; only used for dvr_ms
standoff=0; change to 8000000 when using live_tv in BTV

Don't forget: If you're running the real-time processing, you also need to "tell" this to your schedules:
Open ARGUS TV Scheduler Console, and select Processing Commands. Set the "When"-Parameter of the intended real-time processing command to "Run when the recording starts (live)".


[edit] Activating Comskip from within ARGUS TV Schedules

This section covers the following items:

  1. Creation of ARGUS TV Comskip processing command
  2. Activation of Comskip processing for existing individual recordings


ICN INFO.PNG If you decide to solely use the above described batch processing through cmd files, you need not change anything within ARGUS TV Scheduler Console - you're already done. No Processing Command has to be created for that case.

You might just want to read below section on how to ICN WIKI INLINE.PNG [[#Cleanup of left-over files from Comskip & ARGUS TV|cleanup your directories from left-over files of Comskip & ARGUS TV]


[edit] Creation of ARGUS TV Comskip Processing Command

  • Enter the ARGUS TV Scheduler Console and select Processing Commands
  • Hit the button Create to the top right.
  • Make sure, the newly created entry in the list box now called "-Unnamed-" is highlighted and then edit in the below part of the window the settings:
    • Choose your desired name
    • Set the full path to your comskip.exe including comskip.exe itself, e.g. C:\Program Files\Comskip\comskip.exe
    • As "Arguments" enter %%FILE%%
    • Decide when you want Comskip to be run - depending on your usage as described in the sections above. Note: if you choose "Run when the recording starts (live)", please don't forget to also activate real-time processing of Comskip as described.
    • Decide if you want to assign the Comskip processing command to all new (video) recordings and activate the checkbox Automatically assign to all new television schedules if so.


ICN INFO.PNG Information:
  • If you already have other processing commands defined as automatically assign to all new television schedules, you may safely activate it for this one, too. ARGUS TV can handle more than just one processing command for each recording.
  • Already existing schedules are not automatically updated. They must be individually edited and the Comskip processing command has to be added to each of the desired recordings as described in the next section.
  • You can set up several processing commands and apply them to schedules depending on your watching habits. For example, you could have commands called "Comskip, Record end" and "Comskip, 2am". Then, for example, manually apply the first to the schedule that records the News and the second to all other recordings.


[edit] Activation of Comskip Processing for existing individual Recordings

Adding Comskip processing to existing (or newly created, if not set to be activated for all future recordings) schedules is considerably easy:

  • Open the Recordings page within ARGUS TV Scheduler Console
  • Choose a schedule to add Comskip processing to, and click the "Edit" button
  • In the "Processing" field, select the newly created Comskip processing command
  • Save the schedule
  • Repeat this procedure for every schedule you want to run (one of) your Comskip command(s) with


[edit] Client-specific Behaviour

[edit] MediaPortal

Mediaportal can use Comskip data when playing recorded TV, but only through the TV section (not Videos etc.) To make it work, you must check the "Use Comskip Data" checkbox in the TV section of MediaPortal Configuration. After that, it should just work.

[edit] XBMC

XBMC fully supports comskip'ped files. It requires (only) the default created text files (*.txt) with the same root file name and in the same directory as the recorded show. EDL file creation may safely be deactivated.
Since XBMC 12.0 Frodo, the jump table is pre-read and a seamless jump is guaranteed. The actual result, however, is of course depending on the generated Comskip file (*.txt) and thus on your settings & your provider.


[edit] Cleanup of left-over files from Comskip & ARGUS TV

Depending on your settings of ARGUS TV (creating potentially *.thmb and *.arg files), you already have some "left-overs" after deleting a show from within your client.
Using Comskip definitively creates additional files, that will remain in your directories after a show has been deleted through your front-end (they usually delete the video file only). You will at least have remaining *.txt files but also other outputs - depending on your settings - like *.logo.txt, *.edl, and maybe even many others.
A small helper may clean up your directories (and sub-directories) from these files. You may run them from within your maintenance task or even combine them with the batch processing described above, if you decided to use it.
The simple cmd files "CleanDirectory" may help you: find them under ICN WEB INLINE.PNG [http://21x.eu/downloads/CleanDirectory.html] Argus "Argus-TV" ArgusTV ATV "A-TV" ForTheRecord 4TR "For The Record" Scheduler Recorder Console Comskip download installation setup "set-up" commercial skipping cut

Namespaces

Variants
Actions
Navigation
Toolbox