Comskip
Christoph21x (Talk | contribs) m |
Christoph21x (Talk | contribs) (Update Comskip Step 7) |
||
Line 43: | Line 43: | ||
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> | 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. | 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. | ||
+ | |||
+ | |||
+ | 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 (should apply at least to Region Switzerland/Germany/Austria, probably at least to Europe): | ||
+ | {{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 furthor optimization - not related to commercial detection{{/BLUE}} | ||
+ | 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 and MP 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}} | ||
Line 53: | Line 64: | ||
=== Comskip Processing after each Recording ended === | === 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 Batch Processing|Comskip Batch Processing]] at at a low/no use time.{{/BOX_WARNING}} | ||
+ | |||
To have {{ATV}} call Comskip, we use {{ATVSC}} Processing Commands. | To have {{ATV}} call Comskip, we use {{ATVSC}} Processing Commands. | ||
Line 71: | Line 84: | ||
The easiest way to get this batch processing running, is to create two *cmd / *.bat files to | 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 | # Determine, which video files have not yet been comskip'ped | ||
− | # Call the " | + | # 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 cmd/bat file could look like | + | The master/core cmd/bat file could look like |
{{BOX_CODE}}@echo off<br> | {{BOX_CODE}}@echo off<br> | ||
REM search for all *.ts files and run check with it (cmd) if a corresponding *.txt file exists (with or w/o. subdirs)<br> | REM search for all *.ts files and run check with it (cmd) if a corresponding *.txt file exists (with or w/o. subdirs)<br> | ||
Line 100: | Line 113: | ||
REM *************************************************<br> | REM *************************************************<br> | ||
REM echo end of subjob.{{/BOX_CODE}} | REM echo end of subjob.{{/BOX_CODE}} | ||
+ | |||
=== Comskip Real-time Processing === | === Comskip Real-time 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 Comskip at at a low/no use time.{{/BOX_WARNING}} | + | {{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 Batch Processing|Comskip 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}} | ||
− | |||
== Activating Comskip from within {{ATV}} schedules == | == Activating Comskip from within {{ATV}} schedules == |
Revision as of 15:00, 4 December 2012
Under Construction This article is right now under construction. It may be only partly readable. Please do not touch any of the content at the moment - please visit this page later again. |
Contents |
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 is still in beta test and currently available for donators only.
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.
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).
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.
Web Site & Download
|
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 http://www.kaashoek.com/comskip.
Configuring Comskip basically 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.
Also, 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 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 (should apply at least to Region Switzerland/Germany/Austria, probably at least to Europe):
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 |
Using & Calling Comskip
Comskip policies
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
Important Running Comskip while watching TV or recordings could adversely affect the user experience. In this case, you may need to run Comskip Batch Processing at 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.
Comskip 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).
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".
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/bat file could look like
@echo off REM search for all *.ts files and run check with it (cmd) if a corresponding *.txt file exists (with or w/o. subdirs) |
The called (slave) cmd/bat file that the above core refers to, could look like
@echo off REM Create Comskip txt info, if not existent |
Comskip Real-time Processing
Important Running Comskip while watching TV or recordings could adversely affect the user experience. In this case, you may need to run Comskip 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 |
Activating Comskip from within ARGUS TV schedules
Next we need to edit the existing recording schedules to include the new Processing Command. Open the Recordings page.
- Choose a schedule to add Comskip to, and click the "Edit" button
- In the "Processing" field, Select the newly created comskip command.
- Save the schedule.
- Repeat for every schedule you want to run Comskip with.
Client-specific Behaviour
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" (Confirmation of name needed) checkbox in the TV section of MediaPortal Configuration. After that, it should just work.
XBMC
XBMC fully supports comskip'ped files. It requires (only) the default created text files (*.txt) with the same root 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 presumed 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.