Edit decision list: Difference between revisions

From Official Kodi Wiki
Jump to navigation Jump to search
>Dteirney
(More information about supported file formats.)
>Dteirney
(Adding the SnapStream BeyondTV file format information)
Line 92: Line 92:


For example if the video file is called '''The Matrix.avi''' XBMC will look for the following files, in order, until a valid file is found. Note the the file name may be case-sensitive based on the operating system being used.
For example if the video file is called '''The Matrix.avi''' XBMC will look for the following files, in order, until a valid file is found. Note the the file name may be case-sensitive based on the operating system being used.
# The Matrix.Vprj (VideoReDo)
# '''The Matrix.Vprj''' (VideoReDo)
# The Matrix.edl (MPlayer EDL)
# '''The Matrix.edl''' (MPlayer EDL)
# The Matrix.txt (Comskip)
# '''The Matrix.txt''' (Comskip)
# The Matrix.avi.chapters.xml (SnapStream aka BeyondTV)
# '''The Matrix.avi.chapters.xml''' (SnapStream BeyondTV)


== VideoReDo ==
== VideoReDo ==


http://www.videoredo.com/ files are supported. The name of the file must be the same as the video but with a file extension of '''.Vprj'''. Only ''<SceneMarker>'' and ''<Cut>'' tags are read from the file, everything else is ignored.
http://www.videoredo.com/ files are supported. The name of the file must be the same as the video but with a file extension of '''.Vprj'''. Only ''<SceneMarker>'' and ''<Cut>'' tags are read from the file - everything else is ignored. Cuts are treated as commercial breaks.


Scene markers and cuts are given in milliseconds * 10,000.
Scene marker and cut times are represented in milliseconds * 10,000.


<pre>
<pre>
Line 162: Line 162:
28578 34549
28578 34549
43114 48222
43114 48222
</pre>
== SnapStream BeyondTV ==
http://www.snapstream.com/products/beyondtv/ files are supported. The name of the file must be the same as the video but with '''.chapters.xml''' appended to the filename.
Commercial breaks times are represented in milliseconds * 10,000.
<pre>
<cutlist>
  <Region>
    <start comment="0:07:03.0000523">4235230000</start>
    <end comment="0:09:53.0000660">5936600000</end>
  </Region>
  <Region>
    <start comment="0:15:53.0000553">9535530000</start>
    <end comment="0:19:12.0000786">11527860000</end>
  </Region>
  <Region>
    <start comment="0:23:58.0000571">14385710000</start>
    <end comment="0:26:49.0000009">16090090000</end>
  </Region>
</cutlist>
</pre>
</pre>



Revision as of 03:59, 21 December 2009

EDL (Edit Decision List) support.

  • The EDL (Edit Decision List) system allows you to automatically skip or mute sections of videos during playback, based on a movie specific EDL configuration file. This can for example be used for commercial skipping or to censor scenes or sounds from a movie.

SceneMarkers (chapter file) support.

  • SceneMarker files allow you to jump from scene to scene, like with DVD-Video chapters.


Features

  • Support for EDLs/Scenemarkers in the following formats:
    • EDL (Edit Decision List) .edl format with added type '2' for scenemarkers
    • ComSkip .txt format (with framerate information)
    • VideoReDo version 2 .vprj format
    • SnapStream Beyond TV Smart Chapters (a.k.a. smartskip) .chapters.xml format.
  • Automatically adjusts seeking so cutpoints are skipped.
  • Total time of the movie is adjusted for the EDL cuts.
  • EDL/Scenemarker usage information in video information.
  • NOTE: Muting is not implemented.

Usage

EDL format with scenemarkers extension

An Edit Decision List or EDL allows you to automatically skip or mute sections of videos during playback, based on a movie specific EDL configuration file. The EDL can for example be used to to skip commecials or intros. XBMC adds a third option to use scenemarkers. Scenemarkers can be used to quickly jump to a scene, similar to DVD chapters.

The current EDL file format is: [begin second] [end second] [action]

Where the seconds are floating-point numbers and the action is either 0 for cut, 1 for mute, 2 for a scene marker, 3 for a commercial break. Example:

5.3   7.1    0
15    16.7   1
420   822    3
1     255.3  2
2     720.1  2


SceneMarker seeking

To assign a button for next/previous scenemarker, use the NextScene/PreviousScene codes in keymap.xml. For example to assing the |< and >| buttons on the xbox remote in full screen video:

<FullscreenVideo>
    <remote>
      <skipplus>NextScene</skipplus>
      <skipminus>PreviousScene</skipminus>

EDL information display

Pressing the black button (Title on the XBox remote) will show information regarding the currently playing video stream such as codecs, framerate and more. Edit decision list related information is shown prefixed with edl: followed by a dash or letters followed by numbers. The letter denotes the type of edit and the following number the count of that type. For example, edl: c4s8 means there are 4 commercial breaks and 8 scene markers.

  • c = cuts
  • m = mutes
  • b = commercial breaks
  • s = scene markers
  • - (dash) = no edit decision list

Not implemented

  • Compensation for cutpoint when movie length is unknown and percentage seeking is used.
  • Muting is not yet implemented for DVDPlayer nor for MPlayer

Possible issues

  • The readers now stop reading at the first format error, and invalidates the EDL.
  • MPlayer sometimes seems to ignore search parameters, see Bug-report #1803075.

Possible future expansions

  • Read other scene marker formats, like DVD-Video authoring formats, so DVDrip's can have the original scene markers.
  • Read other EDL/chapter file formats
  • Implement muting

File Formats

XBMC Media Center is able to read edit decision lists from multiple file formats. The EDL file for a video must be in the same folder as the video file and is looked for based on the file extensions for the supported formats.

For example if the video file is called The Matrix.avi XBMC will look for the following files, in order, until a valid file is found. Note the the file name may be case-sensitive based on the operating system being used.

  1. The Matrix.Vprj (VideoReDo)
  2. The Matrix.edl (MPlayer EDL)
  3. The Matrix.txt (Comskip)
  4. The Matrix.avi.chapters.xml (SnapStream BeyondTV)

VideoReDo

http://www.videoredo.com/ files are supported. The name of the file must be the same as the video but with a file extension of .Vprj. Only <SceneMarker> and <Cut> tags are read from the file - everything else is ignored. Cuts are treated as commercial breaks.

Scene marker and cut times are represented in milliseconds * 10,000.

<Version>2
<Filename>C:\Path\To\Video.mpg
<InputPIDList>
<VideoStreamPID>224</VideoStreamPID>
<AudioStreamPID>192</AudioStreamPID>
</InputPIDList>
<SceneMarker 1415932542>4235230000
<SceneMarker 1415932543>4284610000
<SceneMarker 1415932544>4585580000
<SceneMarker 1415932545>5035360000
<Cut>4235230000:5936600000
<Cut>9535530000:11527860000
<Cut>14385710000:16090090000

MPlayer EDL

http://www.mplayerhq.hu/DOCS/HTML/en/edl.html files are supported. The name of the file must be the same as the video but with a file extension of .edl.

The file contains the time offsets for the start and ends of the edits along with the type of action associated with the edit. The file format is:

[begin second] [end second] [action]

The actions supported by this file format has been extended by XBMC Media Center to include scene marker and commercial break actions. Supported actions are:

  • 0 - Cut
  • 1 - Mute (not implemented)
  • 2 - Scene Marker (the begin second is ignored)
  • 3 - Commercial Break (treated as a "soft" cut so the video can be re-entered again)

For example, the following .edl file content will skip from second 5.3 to second 7.1, mute at 15 seconds, unmute at 16.7 seconds (when/if implemented) and commercial skip from 420 seconds to 822 seconds. There will be two scene markers. The first at 255.3 seconds and the next at 720.1 seconds.

5.3   7.1    0
15    16.7   1
420   822    3
1     255.3  2
2     720.1  2

Comskip

http://www.kaashoek.com/comskip/ file are supported. The name of the file must be the same as the video but with a file extension of .txt. The file contains the frame markers for the commercial breaks that were detected. The Comskip file may or may not contain the frame rate. If the frame rate is not included, the detected frame rate of the video is used to convert from the frame markers to time offsets.

FILE PROCESSING COMPLETE
------------------------
12693	17792
28578	34549
43114	48222
FILE PROCESSING COMPLETE 678900 FRAMES AT 25
------------------------
12693	17792
28578	34549
43114	48222

SnapStream BeyondTV

http://www.snapstream.com/products/beyondtv/ files are supported. The name of the file must be the same as the video but with .chapters.xml appended to the filename.

Commercial breaks times are represented in milliseconds * 10,000.

<cutlist>
  <Region>
    <start comment="0:07:03.0000523">4235230000</start>
    <end comment="0:09:53.0000660">5936600000</end>
  </Region>
  <Region>
    <start comment="0:15:53.0000553">9535530000</start>
    <end comment="0:19:12.0000786">11527860000</end>
  </Region>
  <Region>
    <start comment="0:23:58.0000571">14385710000</start>
    <end comment="0:26:49.0000009">16090090000</end>
  </Region>
</cutlist>

External Player Support

The edit decision lists that have been read can be used by MPlayer. MPlayer only supports cuts and mutes, so any scene markers that have been read are ignored, and any commercial breaks that have been read are converted to cuts.