Tag Archives: Closed Captions

Better Closed Caption Decoding in Python

I’ve just pushed out an improved version of my Closed Caption decoder to GitHub. In addition to decoding closed captions to SRT or SCC formats, it includes the following improvements:

  • XDS packet decoding
  • Improved handling of noisy and non-standard video
  • More complete handling of esoteric characters
  • Much easy to use in embedded projects due to separation into core library
  • A few performance improvements
  • Pre-built command line version for windows (PyInstaller generated)

The software is entirely public domain – so feel free to use it in your own projects.

You’ll still need FFMpeg installed – but effortless static builds for windows can be found here. I’ll try and get an OSX binary built in the next few days.

I’d still like to move the project further forwards still – but I really need ‘real-world’ closed-caption samples to make it happen. If you are interested in decoding closed captions, and would like to see this tool improved, please reach out to me: we may be able to help each other.

 

Closed Captions In SCC Format Python

SCC format subtitles

SCC format subtitles, basically a raw closed caption bitstreams.

After building the first version of the closed-caption decoder, I realized that SCC format would be a more useful format to output in. There are many tools to convert SCC format subtitles into other formats. Additionally SCC captures more of the presentation details of closed captions.

Enjoy.

ccDecode

25 May 2014 Update: An improved version is available see here.

Closed Caption Decoding In Python

I’ve been backing up my Laserdiscs after the problems I had with my players a month or so back, one thing I frequently noticed was the flicker of closed captions at the very top of the captured video file. This greatly intrigued me, as it would be useful to have subtitles these films. I began investigating software options for decoding the captions embedded in the video image area, but was unable to find anything that worked with video file embedded captions, or was cheap enough to justify spending the money on. Having been intending to do some video-processing work in Python this seemed like an ideal warm-up exercise.

Continue reading