summaryrefslogtreecommitdiffstats
path: root/libhb/common.c
Commit message (Collapse)AuthorAgeFilesLines
* Update copyright dates to 2017.Bradley Sepos2017-01-011-1/+1
|
* libhb: fix audio bitrate when using fallback encoderJohn Stebbins2016-12-291-31/+1
| | | | | | | Fixes https://github.com/HandBrake/HandBrake/issues/462 hb_audio_add was overwriting the desired output bitrate before we discovered that we needed to use the fallback encoder.
* qsv: rename av_qsv* to hb_qsv*John Stebbins2016-12-171-1/+1
|
* libhb: Remove redundant check in common.cmidzer2016-12-141-1/+1
| | | | Closes #358.
* opus: disable quality mode, enable compression levelsJohn Stebbins2016-09-231-10/+10
| | | | | Quality based encoding is not supported by libopus. But compression levels *are* supported.
* contrib: Add opus audio encoder.John Stebbins2016-09-021-54/+152
| | | | | | | | | | Remove: hb_audio_samplerate_get_best() Add: hb_audio_samplerate_is_supported() hb_audio_samplerate_find_closest() hb_audio_samplerate_get_sr_shift()
* vpx: add encoder presetsJohn Stebbins2016-05-291-0/+5
| | | | | | | | | | | presets are veryfast - deadline=good:cpu-used=5 faster - deadline=good:cpu-used=4 fast - deadline=good:cpu-used=3 medium - deadline=good:cpu-used=2 slow - deadline=good:cpu-used=1 slower - deadline=good:cpu-used=0 veryslow - deadline=best:cpu-used=0
* enable libvpx VP9 encoderJohn Stebbins2016-05-271-0/+5
|
* encx265: simplify chapter mark handlingJohn Stebbins2016-05-251-0/+2
| | | | Use hb_chapter_enqueue/dequeue
* libhb: send initial chapter through pipelineJohn Stebbins2016-05-171-0/+73
| | | | | Eliminate the need for everyone to assume that the first chapter starts at the first frame.
* libhb: add hb_buffer_list_rem()John Stebbins2016-05-171-0/+34
|
* libhb: fix buffer list size calculationJohn Stebbins2016-05-171-2/+2
|
* libhb: Expand default frame rates to include 72, 75, 90, 100, 120.Bradley Sepos2016-05-031-0/+5
|
* libhb: fix incorrect assumption that video quality is always positive.Tim Walker2016-03-311-1/+1
|
* libhb: fix quality limits for high bit depth video encoders.Tim Walker2016-03-311-2/+25
| | | | | The lowest possible QP (and RF) depend on the bit depth and can be lower than zero.
* libhb: remove superfluous ifdefs.Tim Walker2016-03-311-4/+0
| | | | The defines always exist, so they're not actually protecting anything.
* x265: use more permissive x265_api_query instead of x265_api_getJohn Stebbins2016-03-301-1/+1
| | | | | This allows use of versions of the library that are compatible, but do not necessarily have the same build number.
* decomb: split comb detection out into it's own filterJohn Stebbins2016-03-111-0/+25
|
* filters: make job filter settings an hb_dict_tJohn Stebbins2016-03-091-4/+295
| | | | | | 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: fix he-aac fallback setupJohn Stebbins2016-02-121-2/+1
| | | | if there is no he-aac encoder, a fallback to aac was not getting set.
* libhb: fix crash in hb_filter_info_closeJohn Stebbins2016-01-241-1/+4
| | | | filter info can be null, which caused a crash
* libhb: do not add invalid audio encoders to audio listJohn Stebbins2016-01-221-18/+19
| | | | | | hb_audio_add() did not check that an encoder exists before stripping away the passthru flag when source audio was not compatible with requested passthru codec.
* libhb: Add libavfilter support and pad filterJohn Stebbins2016-01-211-2/+143
| | | | | | | | | | | | | | New filter types HB_FILTER_AVFILTER and HB_FILTER_PAD. Settings for HB_FILTER_AVFILTER are the same as you would pass to avconv from the command line -vf option, except that we do not support multi-input or multi-output filters. Settings for HB_FILTER_PAD are "width:height:color:x_offset:y_offset". width x height is the size of the output frame after padding. color may be a w3c color name or RGB value (default black). x_offset, y_offset is the position of the video within the padded area (default centered). Any of the values may be omitted or "auto".
* Update copyright dates to 2016.Bradley Sepos2016-01-011-1/+1
|
* libhb: add some NULL checksJohn Stebbins2015-11-151-0/+4
|
* x265: add support for 10, 12, and 16 bit x265 libsJohn Stebbins2015-11-121-9/+44
| | | | | automatically pull in shared versions of these libs or allow statically building against any one of them.
* x264: add multilib support (a.k.a. 10-bit)John Stebbins2015-11-121-20/+47
| | | | | This adds the structure to load an libx264 10-bit shared library. The user must install this library themselves to an appropriate place.
* libhb: repair split packets in readerJohn Stebbins2015-11-101-0/+21
| | | | | | | | We split PES packets when there is a PCR change in the middle of the packet. This works fine for audio and video where the decoder parses the ES to find frame boundaries. But it does not work for some decoders such as PGS subtitles. So mark split buffers and reassemble them in reader after processing the PCR change.
* libhb: make muxer, sync, and reader behave like other work objectsJohn Stebbins2015-11-091-0/+20
| | | | | | | | | | | | | 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-0/+4
| | | | | It only worked properly with the x264 encoder. Now it works with all encoders.
* libhb: add hb_buffer_listJohn Stebbins2015-09-241-0/+182
| | | | | This brings together several independent implementations of a simple buffer list manager.
* qsv: HEVC encoding support.Tim Walker2015-09-201-0/+1
|
* libhb: Fix compiler issues in previous commit.Bradley Sepos2015-09-101-3/+7
| | | | gcc didn't like the way variables were being initialized.
* libhb: Clock/frame rate handling improvements.Bradley Sepos2015-09-101-0/+10
| | | | | | | | Allows for arbitrary frame rates between 1 and 1000 fps. Adds min/max frame rates to CLI help. Removes hardcoded instances of the internal clock rate in favor of hb_video_framerate_get_limits(). Unfortunately, much of the codebase generally refers to clock rate as frame rate, so a little extra care is still necessary going forward.
* libhb: Expand framerates to include 20 and 48.Bradley Sepos2015-09-101-0/+2
|
* libhb: fix display of audio copy maskjstebbins2015-08-121-1/+2
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7400 b64f7644-9d1e-0410-96f1-a4d463321fa5
* DXVA2: cleanup decode support checks.Rodeo2015-06-231-12/+0
| | | | | | | This should fix https://forum.handbrake.fr/viewtopic.php?f=11&t=32520 git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7310 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: add DXVA2-accelerated HEVC decoding.Rodeo2015-06-231-1/+2
| | | | | | | Patch by Zhang Zhiqiang. Thanks! git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7308 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: Allow log level changes and update checks *after* hb_init()jstebbins2015-06-121-6/+0
| | | | | | | | | | | - In the CLI, this allows calling hb_init() before parsing args, which permits us to see any libhb log messages that are generated during option parsing. These messages were hidden before. - In the GUIs, this allows dynamic changes to log level. Previously an application restart was required. I have only updated the LinGui to take advantage of this. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7295 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: Eliminate string length limit in hb_valogjstebbins2015-06-091-19/+48
| | | | | | | | This eliminates the length limit of all libhb logging functions. The previous limit was 361 chars. Now it is only limited by available memory. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7280 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Fix flac fallback for passthruritsuka2015-06-031-0/+1
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7263 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: fix issues with video optionsjstebbins2015-05-281-0/+20
| | | | | | | | | | Fixes: https://forum.handbrake.fr/viewtopic.php?f=10&t=32535&sid=321e6d1092fd09c8d380e13e86d1a9ee - Sanitize empty video encoder settings strings to NULL. - In the CLI, use encoder defaults if user changes the preset's video encoder. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7237 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: assume remix support when input layout is not set.Rodeo2015-05-191-0/+8
| | | | | | | | Allows querying an encoder's default mixdown from places where the input channel layout is unavailable (e.g. audio defaults panel). git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7212 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: make libFDK the default (HE-)AAC encoder.Rodeo2015-05-171-1/+1
| | | | | | | | | | It's almost as fast as libavcodec's native encoder and offers much better audio quality at any bitrate. Under OS X, Apple's encoder is still used by default. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7203 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: return the global bitrate limits for a given mixdown when the ↵Rodeo2015-05-161-0/+14
| | | | | | samplerate is not known. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7199 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb,cli: add preset management to libhb, use it in clijstebbins2015-05-061-9/+12
| | | | | | | | This results in custom preset support in the CLI and additional command line options to fully support all preset keys. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7158 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: enable vbr encoding with fdk-aac and libav-aacjstebbins2015-05-041-0/+22
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7157 b64f7644-9d1e-0410-96f1-a4d463321fa5
* deccc608sub: improve CC positioningjstebbins2015-04-051-3/+1
| | | | | | | | The safe zone margin was not wide enough and the font size was a little too small. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7063 b64f7644-9d1e-0410-96f1-a4d463321fa5
* deccc608sub: fix column alignment issuesjstebbins2015-04-051-3/+4
| | | | | | | | Use a fixed width font, and insert hard spaces where necessary to allign columns correctly in multi-line CCs. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7061 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: add functions to lookup details of mixdown, video, audio, containerjstebbins2015-04-021-0/+56
| | | | | | | | ... from int id. And add defines to eliminate some magic numbers. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7037 b64f7644-9d1e-0410-96f1-a4d463321fa5