]> granicus.if.org Git - handbrake/commit
Rework filter pipeline
authorjstebbins <jstebbins.hb@gmail.com>
Tue, 27 Mar 2012 20:11:26 +0000 (20:11 +0000)
committerjstebbins <jstebbins.hb@gmail.com>
Tue, 27 Mar 2012 20:11:26 +0000 (20:11 +0000)
commit45b8f81a2e184e2b7deaf47afc49483766191a27
tree30ed0892995cb4ad3255909f69269c453000800a
parent7eb7737023be00fa0dc9be75a4984b80c0e5ce57
Rework filter pipeline

This patch enhances the filter objects.  The 2 key improvements are:
1. A filter can change the image dimensions as frames pass through it.
2. A filter can output more than one frame.

In addition, I have:
Moved cropping & scalling into a filter object
Added 90 degree rotation to the rotate filter
Moved subtitle burn-in rendering to a filter object.
Moved VFR/CFR handling into a framerate shaping filter object.
Removed render.c since all it's responsibilities got moved to filters.
Improves VOBSUB and SSA subtitle handling.  Allows subtitle animations.
SSA karaoke support.

My apologies in advance if anything breaks ;)

git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4546 b64f7644-9d1e-0410-96f1-a4d463321fa5
55 files changed:
gtk/src/hb-backend.c
libhb/bd.c
libhb/common.c
libhb/common.h
libhb/cropscale.c [new file with mode: 0644]
libhb/deblock.c
libhb/deca52.c
libhb/decavcodec.c
libhb/deccc608sub.c
libhb/decdca.c
libhb/declpcm.c
libhb/decmpeg2.c
libhb/decomb.c
libhb/decsrtsub.c
libhb/decssasub.c
libhb/dectx3gsub.c
libhb/decutf8sub.c
libhb/decvobsub.c
libhb/deinterlace.c
libhb/demuxmpeg.c
libhb/denoise.c
libhb/detelecine.c
libhb/dvd.c
libhb/dvdnav.c
libhb/eedi2.c
libhb/encavcodec.c
libhb/encavcodecaudio.c
libhb/encfaac.c
libhb/enclame.c
libhb/enctheora.c
libhb/encvorbis.c
libhb/encx264.c
libhb/fifo.c
libhb/hb.c
libhb/hb.h
libhb/hbffmpeg.h
libhb/internal.h
libhb/mcdeint.c
libhb/mcdeint.h
libhb/muxcommon.c
libhb/muxmkv.c
libhb/muxmp4.c
libhb/platform/macosx/encca_aac.c
libhb/reader.c
libhb/render.c [deleted file]
libhb/rendersub.c [new file with mode: 0644]
libhb/rotate.c
libhb/scan.c
libhb/stream.c
libhb/sync.c
libhb/vfr.c [new file with mode: 0644]
libhb/work.c
macosx/Controller.m
macosx/HBPreviewController.m
test/test.c