summaryrefslogtreecommitdiffstats
path: root/libhb/encx264.c
Commit message (Collapse)AuthorAgeFilesLines
* mux: shift timestamps by largest encoder delayJohn Stebbins2017-02-141-2/+2
| | | | | This prevents libav from adding an mp4 edit list entry that causes a properly functioning player to drop the first couple of audio frames.
* Update copyright dates to 2017.Bradley Sepos2017-01-011-1/+1
|
* libhb: add new color tags for Bt 2020 and SMPTE ST 2084Damiano Galassi2016-12-211-1/+8
|
* libhb: use the new keyframe flag.Tim Walker2016-09-171-25/+24
|
* x264: fix memory leak in 10bit encodingJohn Stebbins2016-09-161-0/+1
|
* libhb: send initial chapter through pipelineJohn Stebbins2016-05-171-120/+59
| | | | | Eliminate the need for everyone to assume that the first chapter starts at the first frame.
* libhb: fix incorrect assumption that video quality is always positive.Tim Walker2016-03-311-1/+1
|
* Update copyright dates to 2016.Bradley Sepos2016-01-011-1/+1
|
* encx264: only show warning log after first frameJohn Stebbins2015-11-151-1/+2
|
* x264: add multilib support (a.k.a. 10-bit)John Stebbins2015-11-121-73/+369
| | | | | This adds the structure to load an libx264 10-bit shared library. The user must install this library themselves to an appropriate place.
* libhb: make muxer, sync, and reader behave like other work objectsJohn Stebbins2015-11-091-17/+13
| | | | | | | | | | | | | 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.
* grayscale: make it a real filterJohn Stebbins2015-10-141-16/+2
| | | | | It only worked properly with the x264 encoder. Now it works with all encoders.
* libhb: add hb_buffer_listJohn Stebbins2015-09-241-19/+8
| | | | | This brings together several independent implementations of a simple buffer list manager.
* libhb: remove HB_API_OLD_PRESET_GETTERS cruft.Rodeo2015-06-271-20/+0
| | | | | | | None of the frontends are using it anymore. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7322 b64f7644-9d1e-0410-96f1-a4d463321fa5
* 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
* encx264: fix hb_dict_init call.Rodeo2015-04-051-1/+1
| | | | | | | Was broken since revision 6981. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7058 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: use jansson for hb_dictjstebbins2015-03-091-192/+200
| | | | | | | | This paves the way to doing preset processing in libhb. Initially for the CLI but other frontends may benefit eventually. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6981 b64f7644-9d1e-0410-96f1-a4d463321fa5
* json: automatically scan title when processing json jobsjstebbins2015-03-071-7/+8
| | | | | | | | | | | | | | | Simplifies the WinGui. This also changes how jobs are processed. Creating the sub-jobs for multiple passes is delayed until after scanning and immediately before running the job. Working status has also changed. Sub-job passes are identified in status with an ID that allows the frontend to definitively identify what pass is in progress. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6976 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Update year to 2015.bradleys2015-02-011-1/+1
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6852 b64f7644-9d1e-0410-96f1-a4d463321fa5
* json: add json APIsjstebbins2014-12-161-13/+11
| | | | | | | | | | There are several changes to job and title structs that break current windows interop code. The interop code should be changed such that it only uses json APIs. So if there is any missing features (or bugs) in these APIs, please let me know. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6602 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Update some copyright dates to 2014.Rodeo2014-02-181-1/+1
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6042 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: make encoder options less x264-centric.Rodeo2014-02-131-20/+21
| | | | | | | | profile/level control and, to a lesser extent, encoder presets and tunes are becoming more common. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6031 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: fix compiler warningjstebbins2014-01-261-7/+7
| | | | | | | move struct chapter_s declaration to correct location. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5999 b64f7644-9d1e-0410-96f1-a4d463321fa5
* encoders: save chapter markers in a list.Rodeo2014-01-071-8/+62
| | | | | | | If chapters were a few seconds apart or less, we would encounter a new marker before the previous one had been placed in an output buffer. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5956 b64f7644-9d1e-0410-96f1-a4d463321fa5
* encx264: remove some long dead code.Rodeo2013-10-191-6/+0
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5842 b64f7644-9d1e-0410-96f1-a4d463321fa5
* encx264: don't log unparsed options if the string is NULL.Rodeo2013-10-191-1/+4
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5841 b64f7644-9d1e-0410-96f1-a4d463321fa5
* encx264: remove duplicate logging (libx264 already logs the SAR), and log ↵Rodeo2013-10-191-4/+2
| | | | | | the average bitrate to be consistent (we log the RF in CRF mode). git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5840 b64f7644-9d1e-0410-96f1-a4d463321fa5
* encx264: log the unparsed advanced options string for informational purposes.Rodeo2013-10-191-0/+10
| | | | | | | | Patch by BradleyS. Thanks! git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5839 b64f7644-9d1e-0410-96f1-a4d463321fa5
* encx264: auto-enable metrics when the relevant tune is requested.Rodeo2013-08-171-0/+22
| | | | | | | | Thanks to s55 for the suggestion. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5710 b64f7644-9d1e-0410-96f1-a4d463321fa5
* encx264: don't force-enable metrics (PSNR, SSIM).Rodeo2013-08-171-5/+0
| | | | | | | | Matches the x264 defaults, gives us a very minor speed boost, and gets rid of a warning. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5709 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: add experimental avformat muxer for mkv and mp4jstebbins2013-06-301-3/+3
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5620 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Updated all the copyright headers to 2013.sr552013-03-091-1/+1
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5318 b64f7644-9d1e-0410-96f1-a4d463321fa5
* 2013 preset changes:Rodeo2013-03-041-7/+0
| | | | | | | | | | | | - updated descriptions (all presets) - add maximum height (device presets) - harmonize PFR framerates (29.97 to 30 fps) - move qpmin hack from encx264 to the AppleTV preset - Android preset: switch to level 3.0 (720x576 @ Level 2.2 meant 12.5 fps max.) git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5299 b64f7644-9d1e-0410-96f1-a4d463321fa5
* x264 preset system: miscellaneous improvements.Rodeo2013-01-301-76/+122
| | | | | | | | See https://reviews.handbrake.fr/r/421/ for details. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5225 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Fix hb_apply_h264_level() after x264 bump.Rodeo2013-01-221-1/+1
| | | | | | | | x264's DPB size table was updated in http://git.videolan.org/?p=x264.git;a=commit;h=d2d8364f git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5193 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Bump libav to v9_beta3.Rodeo2012-12-311-4/+4
| | | | | | | | Miscellaneous bugfixes and improvements. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5124 b64f7644-9d1e-0410-96f1-a4d463321fa5
* hb_x264_param_unparse: cosmetics.Rodeo2012-12-201-1/+1
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5103 b64f7644-9d1e-0410-96f1-a4d463321fa5
* hb_x264_param_unparse: unset a few options that have no effect in the ↵Rodeo2012-12-201-1/+21
| | | | | | advanced options string. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5102 b64f7644-9d1e-0410-96f1-a4d463321fa5
* hb_apply_h264_level: cosmetics, change the meaning of the last parameter ↵Rodeo2012-12-201-9/+9
| | | | | | (be_quiet -> verbose). Seems more common. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5101 b64f7644-9d1e-0410-96f1-a4d463321fa5
* encx264: raise qpmin to 4. 3 has been found to fail on real sources.Rodeo2012-12-091-3/+5
| | | | | | | | Fixes https://forum.handbrake.fr/viewtopic.php?f=5&t=25735 git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5094 b64f7644-9d1e-0410-96f1-a4d463321fa5
* hb_x264_param_unparse(): fix typo.Rodeo2012-11-271-1/+1
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5086 b64f7644-9d1e-0410-96f1-a4d463321fa5
* hb_apply_h264_level: miscellaneous cosmetics.Rodeo2012-11-121-31/+64
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5061 b64f7644-9d1e-0410-96f1-a4d463321fa5
* hb_x264_param_unparse: miscellaneous cosmetics.Rodeo2012-11-121-301/+326
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5060 b64f7644-9d1e-0410-96f1-a4d463321fa5
* hb_x264_param_unparse: returns a complete x264 encopts string from a ↵Rodeo2012-11-121-2/+620
| | | | | | preset/tune(s)/profile/level/encopts combo. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5059 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Add a utility function to check whether an H.264 level can be used given the ↵Rodeo2012-11-051-0/+15
| | | | | | current encoding parameters. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5044 b64f7644-9d1e-0410-96f1-a4d463321fa5
* encx264: revert part of revision 4944.Rodeo2012-11-051-20/+9
| | | | | | | | There's no reason why fps would be specified in the x264_param_t vs. width/height via separate parameters. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5043 b64f7644-9d1e-0410-96f1-a4d463321fa5
* hb_apply_h264_level: return 1 in case of warnings and make return values > 0 ↵Rodeo2012-09-111-11/+28
| | | | | | | | | | non-fatal. This could be used by a GUI to remove incompatible levels from a drop-down, for example. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4955 b64f7644-9d1e-0410-96f1-a4d463321fa5
* hb_apply_h264_level: add a parameter to silence warnings.Rodeo2012-09-111-27/+34
| | | | | | | | This can be used to avoid log pollution when e.g. using an x264 unparse function. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4954 b64f7644-9d1e-0410-96f1-a4d463321fa5
* encx264: make hb_x264_encopt_synonyms two-dimensional instead of faking it.Rodeo2012-09-091-3/+3
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4946 b64f7644-9d1e-0410-96f1-a4d463321fa5
* encx264: use less generic names for some stuff.Rodeo2012-09-091-8/+8
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4945 b64f7644-9d1e-0410-96f1-a4d463321fa5