[vlc-devel] [PATCH 0/3] OggSpots video codec support
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