summaryrefslogtreecommitdiffstats
path: root/libhb
Commit message (Collapse)AuthorAgeFilesLines
* demux: fix problem with widely spaced SCRsjstebbins2014-05-134-7/+25
| | | | | | | | | | | | | | | | | Fixes this bug report https://forum.handbrake.fr/viewtopic.php?f=12&t=30032 Split MPEG demuxer into TS demuxer and PS demuxer to allow using different PCR/SCR delta tolerance in each scenario. We were using a PCR/SCR delta tolerance that was a bit of a compromise between the max allowed by the specification for TS vs PS streams. But the spec for TS PCR is 100ms and the spec for PS SCR is 700ms, so we risked false detection of discontinuities in PS. In PS streams that pack multiple frames into one PES packet, the detection of a discontinuity causes recalculation of an scr offset which jumps around wildly. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6183 b64f7644-9d1e-0410-96f1-a4d463321fa5
* mux: eliminate 32 track limitjstebbins2014-05-111-35/+191
| | | | | | | | | The limit was due to using an uint32_t as a bit vector. This solves the limitation by introducing an hb_bitvec_t struct for bit vectors of unlimited size. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6181 b64f7644-9d1e-0410-96f1-a4d463321fa5
* encx265: fix chapter insertion.Rodeo2014-05-101-0/+1
| | | | | | | | | Checking whether we should attach a chapter to the output buffer is not enough, we actually have to attach it too. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6176 b64f7644-9d1e-0410-96f1-a4d463321fa5
* deccc608sub: fix cropping of CCsjstebbins2014-05-061-5/+6
| | | | | | | | If the CC was in the crop area at the top of the image, it's position was not moved properly. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6172 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Add VP8 supportjstebbins2014-04-157-102/+191
| | | | | | | Thanks to Matthew Harvey for this patch git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6165 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Convert all text subtitles to ASS subsjstebbins2014-04-1314-1935/+1377
| | | | | | | | | Add support for font color to tx3g. Allow more than one style flag at time in tx3g. Add positioning support to CC subs git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6163 b64f7644-9d1e-0410-96f1-a4d463321fa5
* rendersub: fix rendering SRT markup in CC subsjstebbins2014-04-091-0/+2
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6160 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: always use our own DTS.Rodeo2014-04-081-58/+40
| | | | | | | | | | | | | Previously, the DTS provided by MSDK was used if it was available and the frame rate was constant. Our own DTS is indentical to MSDK's (when the frame rate is constant), but MSDK will sometimes provide 1 or 2 bogus DTS over the duration of a file, causing the encode to abort (lavf is picky). git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6158 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: fix logging of whether B-frames are enabled.Rodeo2014-04-071-7/+7
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6157 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: add generic code for converting NALRodeo2014-04-073-89/+254
| | | | | | | | | | | | | | unit bitstreams (H.264, HEVC) to and from Annex B format. Only used by QSV for now, but could always come in handy down the road. May also fix an issue introduced by the recent QSV cleanup patchset. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6156 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Fix previous commit again. This is not my day.Rodeo2014-04-061-91/+35
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6155 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: fix previous commit (outdated version of the same patch, sorry9.Rodeo2014-04-062-51/+98
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6154 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: reset the encoder at chapter points to force a keyframeRodeo2014-04-061-13/+37
| | | | | | | | This replaces the mfxEncodeCtrl-based solution used up to this point, as it's not guaranteed to work with some parameter combinations. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6153 b64f7644-9d1e-0410-96f1-a4d463321fa5
* pgssubs: fix pgs passthrujstebbins2014-04-062-10/+28
| | | | | | | Subtitles were being dropped because of the new condition I added that drops subtitles when start == end. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6152 b64f7644-9d1e-0410-96f1-a4d463321fa5
* enc_qsv: cleanup encoding loop, part 3.Rodeo2014-04-051-158/+169
| | | | | | | Move encoding loop to its own function and simplify encqsvWork. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6150 b64f7644-9d1e-0410-96f1-a4d463321fa5
* enc_qsv: cleanup encoding loop, part 2.Rodeo2014-04-051-231/+369
| | | | | | | | Move related code to separate functions whenever possible; simplify or improve the code where applicable. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6149 b64f7644-9d1e-0410-96f1-a4d463321fa5
* enc_qsv: cleanup encoding loop, part 1.Rodeo2014-04-051-214/+172
| | | | | | | | | | | | Mainly: - allocate frame surface data in qsv_enc_init - setup input frame surface outside the loop - remove unnecessary variable - handle errors via a common path git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6148 b64f7644-9d1e-0410-96f1-a4d463321fa5
* enc_qsv: simplify qsv_enc_init.Rodeo2014-04-051-19/+10
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6147 b64f7644-9d1e-0410-96f1-a4d463321fa5
* enc_qsv: simplify encqsvClose.Rodeo2014-04-051-53/+43
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6146 b64f7644-9d1e-0410-96f1-a4d463321fa5
* enc_qsv: general cleanup.Rodeo2014-04-054-340/+369
| | | | | | | | | | | | | | | | | Mainly: - coding style - formatting - indentation Also: - fix two warnings - remove unnecessary header - remove unused parameter in parse_nalus git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6145 b64f7644-9d1e-0410-96f1-a4d463321fa5
* deccc608sub: fix roll-up subtitlesjstebbins2014-04-032-19/+19
| | | | | | | | Roll-up CC timestamps need similar treatment as the popup CC timestamps. Also, the simulated carriage return command that was added during a rollup command was inserting blank lines in the CC, so fix that. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6144 b64f7644-9d1e-0410-96f1-a4d463321fa5
* decccsub: fix timestamp of "clear" subtitlesjstebbins2014-04-031-0/+6
| | | | | | | This broke CC passthru and is probably the cause of https://forum.handbrake.fr/viewtopic.php?f=11&t=29835 git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6143 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: enable burn-in of all supported text subtitle formatsjstebbins2014-03-309-535/+1307
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6141 b64f7644-9d1e-0410-96f1-a4d463321fa5
* CLI: clean up encoder preset/tune/profile/level option namesRodeo2014-03-281-19/+5
| | | | | | | | | | | | | | | | | | | | | | The new generic option names are: --encoder-preset --encoder-tune --encoder-profile --encoder-level In addition, the supported values for these options can be listed via: --encoder-preset-list <encoder> --encoder-tune-list <encoder> --encoder-profile-list <encoder> --encoder-level-list <encoder> Existing encoder-specific option names are preserved so as not to break existing scripts, but only the new generic names are documented and supported. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6135 b64f7644-9d1e-0410-96f1-a4d463321fa5
* muxavformat: override mp4 major brand, use "mp42"jstebbins2014-03-261-4/+5
| | | | | | | This fixes compatibility issues with Vegas Pro 8 NLE suite git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6132 b64f7644-9d1e-0410-96f1-a4d463321fa5
* muxavformat: only do style processing of mp4 text subtitlesjstebbins2014-03-181-24/+28
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6119 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: fix fps calculation when number of previews is very smalljstebbins2014-03-161-3/+3
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6116 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: fix preset names for Ivy Bridge and earlier.Rodeo2014-03-161-1/+1
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6115 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: fix uninitialized variablejstebbins2014-03-141-0/+1
| | | | | | | | since a malloc depends on the value of this variable, it's rather important that it be initialized ;) git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6113 b64f7644-9d1e-0410-96f1-a4d463321fa5
* check of mfxExtCodingOption2 for AVC onlymaxd2014-03-141-1/+1
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6112 b64f7644-9d1e-0410-96f1-a4d463321fa5
* x265: enable MP4 and Matroska muxing.Rodeo2014-03-134-45/+1
| | | | | | | Also remove the raw muxer. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6105 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: restore writing of encoding tool tag to output filejstebbins2014-03-061-0/+5
| | | | | | | We lost this when switching to avformat for muxing git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6102 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: alternate workaround for B-pyramid + keyframe insertion issue.Rodeo2014-03-041-10/+10
| | | | | | | | | | The original workaround (SVN 6016) got rid of the invalid timestamps, but did nothing to prevent visual artifacts. Since it doesn't look like I'll be fixing the underlying cause right away, this will avoid broken output for our users in the meantime. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6098 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Remove libfaacsr552014-03-0210-341/+3
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6094 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: dynamic detection of availability of libav audio encodersjstebbins2014-03-012-11/+9
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6089 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Bump x265 to r6321 8a84c10e5116.Rodeo2014-02-283-81/+235
| | | | | | | | | | | - rational framerates - libx265 now provides decode time stamps (DTS) - encx265: minor refactoring + prepare for muxing to MP4/Matroska git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6088 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: sort the list of files in batch modejstebbins2014-02-221-3/+30
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6058 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: clean up handling dir directory separatorjstebbins2014-02-226-5/+42
| | | | | | | title->name was getting set to an empty string in some cases due to looking for the wrong directory separator. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6057 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: fix decavcodecaBSInfo again...jstebbins2014-02-221-16/+24
| | | | | | | ... forgot to check for error return from avcodec_decode_audio4 git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6055 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: fix a problem decoding wmapro audiojstebbins2014-02-221-3/+3
| | | | | | | ... and probably some other audio types. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6054 b64f7644-9d1e-0410-96f1-a4d463321fa5
* SVN: remove a52dec.Rodeo2014-02-201-0/+0
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6050 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: remove a52decjstebbins2014-02-2013-591/+57
| | | | | | | replace it with libavcodec ac3 decoder git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6049 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: fix compiler warning with cpuid usagejstebbins2014-02-181-13/+17
| | | | | | | fixes "dereferencing type-punned pointer will break strict-aliasing rules" git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6045 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Remove HB_API_OLD_PRESET_SETTERS cruft.Rodeo2014-02-182-76/+5
| | | | | | | All UIs and Interop should be up-to-date. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6044 b64f7644-9d1e-0410-96f1-a4d463321fa5
* openclkernels.h: fix line endings.Rodeo2014-02-181-94/+94
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6043 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Update some copyright dates to 2014.Rodeo2014-02-1880-80/+80
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6042 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: API 1.8 support and related improvementsRodeo2014-02-187-297/+1021
| | | | | | | | | Optional feature detection now done via MFXVideoENCODE_Query. This should work better with future hardware and encoder implementations. Optional API 1.8 features are not tested (not supported by the software implementation, and no drivers with API 1.8 support available yet). git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6041 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Bump libav to v10_beta1Rodeo2014-02-185-3/+40
| | | | | | | | | Remove some patches that have been applied upstream. Add support for AVDownmixInfo side data (i.e. mix levels). git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6039 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: Add cpuid inline asm macrojstebbins2014-02-152-18/+37
| | | | | | | | This eliminates our reliance on the private (unexported) libavutil function ff_cpu_cpuid(). git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6032 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: make encoder options less x264-centric.Rodeo2014-02-138-121/+224
| | | | | | | | 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