summaryrefslogtreecommitdiffstats
path: root/libhb/denoise.c
Commit message (Collapse)AuthorAgeFilesLines
* libhb: resolve header conflicts with pango/harfbuzzJohn Stebbins2019-09-121-2/+2
| | | | | | | Newest versions appear to have a "common.h" somewhere that is interfering with libhb/common.h. move headers into "handbrake" subdirectory
* Resolve conflict with harfbuzz include file hb.hJohn Stebbins2019-09-101-1/+1
| | | | Rename hb.h to handbrake.h
* libhb: propagate color matrix info through the pipelineJohn Stebbins2019-04-081-1/+12
| | | | | | | | | Propagates pix_fmt, range, primaries, transfer, and matrix everywhere. Everything that passes or creates video frames tags the frames with their color matrix info. All filters know the expected color matrix info of input frames.
* filters: make job filter settings an hb_dict_tJohn Stebbins2016-03-091-66/+40
| | | | | | This simplifies accessing and changing filter parameters programatically. It also changes the custom filter string format to a ':' separated list of key/value pairs.
* libhb: make muxer, sync, and reader behave like other work objectsJohn Stebbins2015-11-091-3/+0
| | | | | | | | | | | | | simplify job initialization sequence, clean up code, and document dependencies in the sequence better. Make hb_add set job->sequence_id. It is no longer necessary for the frontend to do this. If the frontend needs the sequence_id, it is returned by hb_add(). Clean up use of interjob. do_job() now uses sequence_id to detect when a new sequence of related jobs is running and automatically clears interjob.
* libhb: remove unused hb_buffer_t.subJohn Stebbins2015-09-041-2/+0
|
* libhb: Use a buffer flat to indicate EOFjstebbins2015-05-011-1/+1
| | | | | | | | | | | | ... instead of a 0 length buffer. This fixes this issue: https://forum.handbrake.fr/viewtopic.php?f=12&t=31959 Theora can create 0 length output. These 0 length frames indicate duplicate frames. So we can't use 0 length buffers to indicate the end of the stream. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7143 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: Fix compiler warnings in denoise (hqdn3d).bradleys2015-02-161-4/+8
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6909 b64f7644-9d1e-0410-96f1-a4d463321fa5
* remove contrib mpeg2decjstebbins2014-01-131-1/+0
| | | | | | | | We no longer need mpeg2dec. libav now has all the features we need for mpeg2 decoding. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5966 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Denoise (hqdn3d) syntax change: accept settings for individual chroma channels.Rodeo2013-11-081-33/+50
| | | | | | | Patch by BradleyS. Thanks! git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5880 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: fix compiler warningsjstebbins2013-10-281-2/+1
| | | | | | | unused variables in denoise.c git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5859 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Denoise (hqdn3d) performance improvements.Rodeo2013-10-281-49/+54
| | | | | | | | | | Based on http://git.libav.org/?p=libav.git;a=commit;h=0f583e6 by Loren Merritt. Patch by BradleyS. Thanks! git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5858 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Denoise (hqdn3d) optimizations.Rodeo2013-10-281-160/+74
| | | | | | | | | | Based on http://git.libav.org/?p=libav.git;a=commit;h=85e228c by Loren Merritt. Patch by BradleyS. Thanks! git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5857 b64f7644-9d1e-0410-96f1-a4d463321fa5
* fix stride in denoise filterjstebbins2012-06-231-4/+4
| | | | | | | I should have made the malloc larger rather than changing the stride git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4772 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: fix crash in denoise filterjstebbins2012-06-221-3/+3
| | | | | | | | This was introduced in the filter rework patch, so it's not a problem in the bugfix branch. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4767 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: Fix problem with positions of burned-in subsjstebbins2012-05-051-1/+0
| | | | | | | | | | | | | | | | | When cropping and/or scaling, the position of burned-in SSA subs was broken. Also, when scaling, the position of all other burned-in subs was broken. Part of this fix is to revert a bit of filter initialization changes that were made in this commit https://trac.handbrake.fr/changeset/4605 The other part of the fix is to add cropping parameters to the initialization of the subtitle rendering filter. This filter needs the *original* title dimensions and the crop values in order to compute the positions properly. The changes that I am reverting gave it the scaled job dimensions and the crop values. This was wrong in so many ways it's embarassing :p git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4642 b64f7644-9d1e-0410-96f1-a4d463321fa5
* PGS (bluray) subtitle support \o/jstebbins2012-04-261-0/+1
| | | | | | | | | | | | Thanks to patches supplied by David Mitchell and Rob McMullen we finally have PGS support. I added a fix for libav pgs timestamp processing and detection of forced subtitles to their work, then made foreign audio search work with PGS subs. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4605 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Rework filter pipelinejstebbins2012-03-271-89/+56
| | | | | | | | | | | | | | | | | | | | 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
* Consolidate all the ffmpeg-related includes into libhb/hbffmpeg.h then ↵van2008-12-131-1/+1
| | | | | | prototype hb_avcodec_{init,open,close} so that we don't get gcc warnings from a dozen modules. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2025 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Correct chroma size for raw video frames - width & height need to be rounded ↵van2008-11-081-2/+1
| | | | | | up if they're odd before dividing by 2. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1905 b64f7644-9d1e-0410-96f1-a4d463321fa5
* - support blu-ray, avchd & dvb x264van2008-05-311-1/+1
| | | | | | | - support video files handled by ffmpeg (avi, mkv, mp4, etc.) git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1480 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Formatting: Remove a lot of trailing whitespace.saintdev2008-02-211-138/+138
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1307 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Added buffer management and changed fifo sizes. Changed job->subtitle_scan ↵eddyg2007-09-111-0/+5
| | | | | | to job->indepth_scan, and fixed memory init bug in denoise.c. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@945 b64f7644-9d1e-0410-96f1-a4d463321fa5
* This huge patch from huevos_rancheros ports a number of video filters from ↵jbrjake2007-07-271-0/+463
mencoder to HandBrake: yadif+mcdeint, hqdn3d, pp7, and pullup+softskip+harddup. What this means is that HB now has stateless inverse telecine, temporal denoising, and motion-adaptive deinterlacing! HandBrake is growing up =) Thank you, huevos_rancheros! git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@749 b64f7644-9d1e-0410-96f1-a4d463321fa5