ccExtract - Extract or Convert CC

verifycc icon

ccExtract is part of the ccConvert and Net-X-Code workstation and server software. ccExtract is designed to extract caption tracks from MXF, MOV, h.264, MPEG-2, TS, etc. to SCC/MCC, and to convert between standard caption formats like VTT, XML, EBU, SMPTE DCP, YouTube, Apple, Avid and others. This article contains the Linux/OS-X/Windows command line API for for this tool. A RESTful API is also available.

ccExtract

ccExtract converts closed captions from one format to another.  It supports standard formats like SCC and MCC, workflow specific formats like AAF, Grass Valley N0, EBU and DCP as well as most broadcast, internet and subtitle exchange formats like iTunes, YouTube, Avid, FCP, JSON, SAMI, VTT, CAP and even raw text.  MXF/SMPTE 436M, MOV, TS, MPG and h.264/h.264/HEVC/MPEG-2/ProRes caption extraction to all supported formats for CEA 608, CEA 708 and OP-47. For embedding captions into MXF, MOV and other files, please see ccEmbed.

Basic Conversion MXF to VTT

ccExtract -i <sourcefile>.mxf -t <targetfile> -c 138

Convert From MCC to Text

ccExtract -i <sourcefile>.mcc -t <targetfile>.txt -c 2

Upconvert SCC (608) to AAF (708) for Avid MC

ccExtract -i <sourcefile>.mcc -t <targetfile>.txt -c 1

Downconvert MCC (708) to SCC (608)

ccExtract -i <sourcefile>.mcc -t <targetfile>.scc -c 3

Cross Convert OP-47 to MCC (708)

ccExtract -i <sourcefile>.mxf -t <targetfile>.mcc -c 0

Extract MXF/MOV to MCC for Adobe Premiere

ccExtract -i <sourcefile>.mov -t <targetfile>.mcc -c 0

 

Command Line Parameters

Usage: ccextract -i <sourcefile> -t <targetfile> [-qlx -r <01:00:00:00> -R <-00:30:00:00> -j # -k <picon.jpg> -e # -c # -a # -o <outputdir> -f # -s # -X -t # -n 1 -p # -n # -w <output.wav> -v <outputvideo.raw> -m <reference.mov>]

  -i <sourcefile> File to be referenced
Optional paramaters:
  -t <targetfile> File and path to write to
  -q Quiet mode.
  -l Loud mode.
  -x Export metadata XMLS
  -r 01:00:00:00 Override timecode start
  -R -00:30:00:00 Ofset timecodes (eg. subtract half an hour)
  -j # Create a JPEG picon from frame #
  -k <picon.jpg> Filename for JPEG picon frame
  -e # Extract a JPEG picon for every # frame
  -s Force CC in video stream
  -X Extract CC from line 21 (SD only)
  -M # CC channel to extract (def: 1)
  -C Convert 708 to 608
  -c # Convert closed captioning to
    0=MCC, 1=AAF, 2=TEXT, 3=SCC, 4=SCCDF, 5=N0
    100=Avid Caption, 101=Belle Nuit Subtitler,
    102=CapMaker Plus, 103=Cheetah Caption, 104=Csv, 105=Csv2, 106=Csv3,
    107=D-Cine SMPTE 2007, 108=D-Cine SMPTE 2010,
    109=EBU STL, 110=Final Cut Pro Xml,
    111=Final Cut Xml Gap, 112=Final Cut Pro X Xml,
    113=Final Cut Pro XCM, 114=Flash Xml,
    115=iTunes Timed Text, 116=JSON, 117=JSON Type 2,
    118=JSON Type 3, 119=JSON Type 4, 120=QuickTime text,
    121=SAMI, 122=SAMI modern, 123=Scenarist, 124=DVD_SCC,
    125=DVD_SCCDF, 126=SoftNi sub, 127=Sony DVDArchitect,
    128=Sony DVD Exp dur, 129=Sony DVD line/dur,
    130=Sony DVD Tabs, 131=SubRip, 132=Sub Station Alpha,
    133=Swift V2, 134=Timed Text 1.0, 135=TT 2006-04 .dfxp,
    136=TT 2006-04 .ttml, 137=TT 2006-04 .xml, 138=WebVTT,
    139=YT Annotations, 140=YouTube sbv,
    141=YouTube Transcript, 142=D-Cinema interop,
  -f # Force frame rate (23, 24, 25, 29, 30)
  -o <out-dir> CC output directory
  -p # Detect scene changes, # = threshold
  -d # Scene change output type, 0-XML, 1-ALE, 2-EDL
  -n # First channel of source audio for the wave file (0,2,4)
  -w <output.wav> Extract audio to a wave file
  -v <outputvideo.raw>Extract video to raw stream file
  -a # Interpret input file using encoding
    0=Auto, 1=UTF-8, 2=UTF-16, 3=IBM-850, 4=IBM-860, 5=Windows-1252