summaryrefslogtreecommitdiffstats
path: root/libhb
Commit message (Collapse)AuthorAgeFilesLines
* sync: fall back to drop_video_to_sync when hb_avcodec_open() fails, instesd ↵Rodeo2013-05-171-39/+41
| | | | | | | | | | of killing the job. Patch by John Stebbins. Thanks! git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5459 b64f7644-9d1e-0410-96f1-a4d463321fa5
* decsrtsub: clear remnants of the previous line before progessing a new one.Rodeo2013-05-141-0/+3
| | | | | | | | I don't really understand why, but this prevents miscellaneous subtitle corruption. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5456 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Improve upon previous commit.Rodeo2013-05-081-4/+5
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5447 b64f7644-9d1e-0410-96f1-a4d463321fa5
* decsrtsub: rework character substitution logic.Rodeo2013-05-081-20/+30
| | | | | | | | | | Don't pointlessly convert a line break to a space if it's the last character. Also, only skip a CR character if it's followed by an LF character. Otherwise, replace it with an LF character or a space, depending on the line number. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5446 b64f7644-9d1e-0410-96f1-a4d463321fa5
* muxmkv: fix audio track private data for 24-bit FLAC.Rodeo2013-05-051-0/+1
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5441 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: fix crash when EOF is found before first video framejstebbins2013-04-301-0/+1
| | | | | | | buffer got closed twice, once in sync close and once in muxer. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5430 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Refactor add_ffmpeg_audio.Rodeo2013-04-283-90/+116
| | | | | | | | | | | Simplify, set bitrate to 0 - scan will then call decavcodecaBSInfo, decode some audio and set the other input parameters, including samples_per_frame. decavcodec and scan fixes by John Stebbins. Thanks! git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5424 b64f7644-9d1e-0410-96f1-a4d463321fa5
* sync: fix a hang when the avcodec encoder for silence insertion fails to open.Rodeo2013-04-281-2/+3
| | | | | | | | This affects e.g. AAC Passthru with more than 6 channels. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5423 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Fix log pollution when Auto Passthru is not possible and uses the fallback ↵Rodeo2013-04-281-1/+1
| | | | | | | | | | audio encoder, if that encoder does not accept s16(p) input samples. "work: track 1, dithering not supported by codec" git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5421 b64f7644-9d1e-0410-96f1-a4d463321fa5
* hb_get_best_mixdown: fix out-of-array reads.Rodeo2013-04-281-2/+2
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5420 b64f7644-9d1e-0410-96f1-a4d463321fa5
* muxmp4: update MP4AddAudioTrack usage as per mp4v2 documentation.Rodeo2013-04-271-2/+4
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5414 b64f7644-9d1e-0410-96f1-a4d463321fa5
* work: pass the crop settings to the subtitle renderer when adding it to the ↵Rodeo2013-04-241-5/+9
| | | | | | | | | | | | flter chain. Fixes an issue where subtitles would not be re-positioned and be cut off. Fix by John Stebbins. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5410 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Disable Libav's AVX and FMA4 optimizations under Windows x86_64.Rodeo2013-04-241-1/+9
| | | | | | | | | | They cause crashes in avresample. SSE* optimizations are still enabled, so the performance hit should be pretty minimal. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5409 b64f7644-9d1e-0410-96f1-a4d463321fa5
* muxmp4: compute audio frame durations when the frame size isn't known.Rodeo2013-04-241-33/+40
| | | | | | | | | | Otherwise, mp4v2 would assume a duration of zero and never write any audio chunk, causing excessive memory usage and a noticeable performance decrease in some cases. The issue was introduced in SVN revision 4825, when libavcodec stopped setting AVCodecContext.frame_size for some codecs. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5408 b64f7644-9d1e-0410-96f1-a4d463321fa5
* decssasub, dectx3gsub: fix writing past hb_buffer_t data[size - 1].Rodeo2013-04-102-12/+13
| | | | | | | | | | This is not safe and causes subtitle corruption. Same fix as SVN revision 5346 for the remaining text-based subtitle deocders. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5390 b64f7644-9d1e-0410-96f1-a4d463321fa5
* We support encoder options for everything but Theora, so simplify the check ↵Rodeo2013-04-041-4/+3
| | | | | | a bit. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5379 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Update outdated comment.Rodeo2013-04-011-4/+2
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5371 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Remove unnecessary legacy HB_VCODEC define and minor cleanup.Rodeo2013-04-011-7/+6
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5370 b64f7644-9d1e-0410-96f1-a4d463321fa5
* muxmp4: map '\r\n' and '\r' to '\n'.Rodeo2013-03-191-0/+5
| | | | | | | | Improves Apple compatibility and avoids double linebreaks in e.g. VLC. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5349 b64f7644-9d1e-0410-96f1-a4d463321fa5
* decutf8sub: cosmetics.Rodeo2013-03-191-2/+2
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5348 b64f7644-9d1e-0410-96f1-a4d463321fa5
* decutf8sub: cleanup.Rodeo2013-03-191-17/+15
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5347 b64f7644-9d1e-0410-96f1-a4d463321fa5
* decutf8sub: fix a bug when passing subtitles through to MP4.Rodeo2013-03-191-1/+1
| | | | | | | | | The decoder was setting the last character but forgot to increment out->size, which led to weird artifacts being displayed when playing in e.g. VLC. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5346 b64f7644-9d1e-0410-96f1-a4d463321fa5
* hb_system_sleep: refactoring.Rodeo2013-03-184-39/+78
| | | | | | | | | | | | Also: - release power assertions before freeing them - actually free the power assertions in hb_close() (previously unused) git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5340 b64f7644-9d1e-0410-96f1-a4d463321fa5
* hb_system_sleep: minor cleanup after last commit.Rodeo2013-03-184-14/+9
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5337 b64f7644-9d1e-0410-96f1-a4d463321fa5
* hb_system_sleep: allow/prevent sleep from the UI rather than libhb.Rodeo2013-03-184-12/+6
| | | | | | | | | | The code that sets/unsets the "power assertions" is still in libhb. Patch by Jérôme Lacube. Thanks! git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5336 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Use the official libavcodec minimum output buffer size via a define ↵Rodeo2013-03-171-2/+3
| | | | | | (currently, 16 KiB). git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5335 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: fix fdk-aac mono encodingjstebbins2013-03-161-2/+4
| | | | | | | A minimum output buffer size of 8KB is needed by libav git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5329 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: fix incorrect scan progressjstebbins2013-03-141-2/+2
| | | | | | | slightly wrong calculation caused progress to go backwards sometimes. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5328 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Remove code forgotten in revision 5295.Rodeo2013-03-111-10/+0
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5323 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Some further header updates.sr552013-03-091-1/+1
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5322 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Updated all the copyright headers to 2013.sr552013-03-0964-64/+64
| | | | 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
* fdkaac: new bitrate limits.Rodeo2013-03-041-3/+40
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5297 b64f7644-9d1e-0410-96f1-a4d463321fa5
* fdk_haac: samplerates < 16 kHz are not supported.Rodeo2013-03-041-0/+6
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5296 b64f7644-9d1e-0410-96f1-a4d463321fa5
* decavcodec: remove unnecessary code.Rodeo2013-03-031-10/+0
| | | | | | | | Was obsolete since SVN revision 3786. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5295 b64f7644-9d1e-0410-96f1-a4d463321fa5
* encavcodecaInit: minimize code duplication.Rodeo2013-03-032-98/+94
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5292 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Fix AAC encoding with Libav.Rodeo2013-03-031-1/+1
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5290 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Add optional fdk-aac encoderjstebbins2013-03-037-10/+85
| | | | | | | configure --enable-fdk-aac to enable this encoder git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5287 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Improve scan progress granularityjstebbins2013-03-012-13/+74
| | | | | | | | We were only updating progress after completely processing each title. Now progress is updated as we generate previews as well. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5276 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Set AVCodecContext.request_channel_layout when decoding.Rodeo2013-02-051-35/+79
| | | | | | | | | | Allows extracting a 5.1 or 2-channel downmix from a dedicated substream (TrueHD). Also works around a bug when decoding TrueHD Mono. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5242 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Audio dithering.Rodeo2013-02-054-0/+109
| | | | | | | | | | | | Works with encoders that accept 16-bit signed integers as input (currently, only ffflac). When supported, the default method is standard triangular. CLI users can request a specific dither algorithm via the --adither option. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5241 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Prevent OSX ML sleep during encoding, thanks to Jerome Lacubesr552013-02-045-10/+122
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5238 b64f7644-9d1e-0410-96f1-a4d463321fa5
* x264 preset system: miscellaneous improvements.Rodeo2013-01-306-94/+150
| | | | | | | | See https://reviews.handbrake.fr/r/421/ for details. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5225 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: remove exta log text that was used for debuggingjstebbins2013-01-291-2/+2
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5218 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: Fix CC processing for packets that have no PTSjstebbins2013-01-291-7/+19
| | | | | | | | | | It is not required that every input frame have a PTS, but we were only creating tags for frames that have a PTS. If a frame with no PTS happens to have CC data, we would mistakenly drop the previous CC data and log a "tag botch" error. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5217 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: Fix main feature detection for some DVDs (Brave)jstebbins2013-01-281-1/+1
| | | | | | | | Some new discs are putting longer leaders before the feauture. So extend how far we search before giving up. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5216 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
* libhb: Fix issue with silence insertion when using FLAC encoderjstebbins2013-01-211-5/+20
| | | | | | | | | | | | | | | When we insert silence to maintain sync, we typically need to insert about 70ms. But the default flac frame duration is very large (>=96ms). This is causing us to overshoot the target and we immediately drop a frame. Dropping a frame undershoots and we insert a frame... ad infinitum. This patch changes the behavior of silence insertion for non-passthru audio. Instead of inserting full frames of silence, the last "frame" inserted may be a partial. This lets us insert a finer grained silence duration and eliminates the problem with large flac frames. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5188 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: fix audio sync regression with DVDsjstebbins2013-01-061-6/+25
| | | | | | | | A "fix" for another sync issue caused a regression in handling of DVD sync. So revert the change and make other improvements. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5153 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: handle incorrect stuffing in transport streamsjstebbins2013-01-061-1/+7
| | | | | | | | | | Incorrectly formatted stuffing causes invalid PCRs which results in sync issues. I've only seen this in one poorly authored BD, but it's easy to handle. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5152 b64f7644-9d1e-0410-96f1-a4d463321fa5