[vlc-devel] [PATCH 0/3] OggSpots video codec support

Michael Tänzer neo at nhng.de
Sun Feb 28 21:22:05 CET 2016

This patch series adds OggSpots video codec support to VLC. It includes a
patch to always show forced pictures that I submitted previously but that
hadn't been pulled into the main repository for some reason. That change
is essential for this codec to work as it is a video codec that only
produces frames when the picture changes, otherwise seeking will not work.
Please let me know if there's a problem with that change.

I also have an encoder on my local branch but I could not test the code
because the encoding seems to be broken in master at the moment. Not only
for the OggSpots codec but also at least for converting from H.264 to
Theora (on 2.2.1 it worked fine). One symptom seems to be that the Encode()
function always gets pictures with i_planes == 0. Is that a known problem?
I could not find a bug report for that issue.

Known issues/error messages:
* core decoder error: buffer deadlock prevented => This is because of the
  nature of the codec that it only gets a new block when the picture changes
  although its frame rate is much higher. The outside decoder loop then runs
  out of blocks and throws that error. Possible solutions: explicit support
  for such "variable frame rate" codecs or change the log level of that
  error message to warning or info.
* deinterlace filter error: unsupported chroma RV24 => I guess that is an
  error of the underlying jpeg codec that I use to decode the frames in
  combination with the deinterlace filter. The thing is: OggSpots or jpeg
  will never produce interlaced output so the interlace filter would not
  be needed. Is there a flag to set to signal whether we need deinterlacing?

Michael Tänzer (3):
  decoder: Always show forced pictures, even during preroll
  ogg: Add OggSpots video codec support
  oggspots: Add OggSpots codec module

 configure.ac              |   5 +
 include/vlc_fourcc.h      |   1 +
 modules/MODULES_LIST      |   1 +
 modules/codec/Makefile.am |   7 +
 modules/codec/oggspots.c  | 465 ++++++++++++++++++++++++++++++++++++++++++++++
 modules/demux/ogg.c       |  88 ++++++++-
 modules/demux/oggseek.c   |   7 +
 src/input/decoder.c       |   2 +-
 8 files changed, 574 insertions(+), 2 deletions(-)
 create mode 100644 modules/codec/oggspots.c


More information about the vlc-devel mailing list