[FFmpeg-devel] [PATCH 0/6] Toward a SPS filter for H.264

Christophe Gisquet christophe.gisquet at gmail.com
Sun Nov 30 01:45:50 CET 2014


Most of the code is actually not mine but originated from "Direct264":
http://forum.doom9.org/showthread.php?t=152419
https://svn.code.sf.net/p/direct264/code/Patches/
Therefore I've tried to split as best as possible the code I have added.

There are 3 controversial parts in this patch set:
- the BSF API change (fixing it is out of my league/time budget)
- the filter doing in-place filtering (?)
- the level of validation for this new filter

I've only tested the cropping feature, and validating that the rest
works tenuous. Anyway, cropping is unfortunately not at all well
supported:
- VLC 2.1.5 (Windows) either crashes or outputs garbage
- DXVA on some Intel core gets top/left cropping completely wrong
  (0,0 but something valid for bottom/right seems to be OK)
- ffmpeg-based decoders (e.g. mplayer) are OK

It is possible the implementation is incorrect but it was written
following the specs.

Christophe Gisquet (4):
  h264_ps: move and export aspect_ratio
  h264_changesps_bsf: fix compilation
  h264_changesps_bsf: add and use init
  h264_changesps_bsf: allow specifying full cropping

Zongyi Zhou (2):
  bitstream_filter: add an init function
  h264_changesps_bsf: import code

 ffmpeg_opt.c                    |   5 +-
 libavcodec/Makefile             |   1 +
 libavcodec/allcodecs.c          |   1 +
 libavcodec/avcodec.h            |   5 +-
 libavcodec/bitstream_filter.c   |   8 +-
 libavcodec/h264_changesps_bsf.c | 641 ++++++++++++++++++++++++++++++++++++++++
 libavcodec/h264_ps.c            |  26 +-
 libavcodec/h264data.h           |  19 ++
 libavformat/concatdec.c         |   2 +-
 libavformat/tee.c               |   7 +-
 10 files changed, 687 insertions(+), 28 deletions(-)
 create mode 100644 libavcodec/h264_changesps_bsf.c

-- 
1.9.2.msysgit.0



More information about the ffmpeg-devel mailing list