summaryrefslogtreecommitdiffstats
path: root/libhb
Commit message (Collapse)AuthorAgeFilesLines
* RB626: return code support addedmaxd2013-11-0512-7/+59
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5876 b64f7644-9d1e-0410-96f1-a4d463321fa5
* decomb: don't use frame flags to modify deinterlace behaviorjstebbins2013-11-051-15/+5
| | | | | | | | | They are not a reliable indicator that the frame is truly progressive. Also, fix mask mode. It generated nothing but black frames. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5875 b64f7644-9d1e-0410-96f1-a4d463321fa5
* OpenCL: initial work on a new OpenCl wrapper, which will eventually phase ↵Rodeo2013-11-026-70/+995
| | | | | | | | | | out the existing one. Based on an x264 patch by Anton Mitrofanov. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5870 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: fix problem with SSA render when muxer is avformatjstebbins2013-11-011-2/+2
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5864 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: fix BD audio detection problemjstebbins2013-10-281-15/+24
| | | | | | | | | | | BDs can (and occasionally do) have different audio stream types in different clips that compose a playlist. We try to pick the audios that appear in the most clips, but this breaks down when there are only 2 clips to choose from. So in the case of only 2 clips, choose audio from the longest clip. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5863 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: fix another case of spurious "missing start code" messagesjstebbins2013-10-281-0/+11
| | | | | | | | | | I have a poorly mastered BD that does not pad the adaptation field of the PCR PID properly. Since these packets are only used to extract the PCR, we can drop them early before the code that would generate these error messages. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5862 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: fix double hb_buffer_closejstebbins2013-10-281-1/+0
| | | | | | | Don't close a list of buffers then also close the last item in the list :-\ git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5861 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: fix "missing start code" error message when encoding BDjstebbins2013-10-281-3/+9
| | | | | | | | | CC subtitles which are embedded in the video stream have an id of 0 assigned. We should ignore these when setting up the PID filter list since they do not use an independent PID. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5860 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
* libhb: Plug some leaks and clean up the buffer pool code a little.jstebbins2013-10-237-50/+62
| | | | | | | | | | | Filters were leaking buffers when a job is cancelled. decavcodec could leak when job cancelled. decavcodec leaked audio extradata in BSInfo encavcodec and encavcodecaudio leaked AVCodecContext sync leaked subtitle_sanitizer_t data git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5853 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: temporarily work around a bug in the Intel 33.x driver series.Rodeo2013-10-221-0/+22
| | | | | | | | Based on a patch by Maxym Dmytrychenko. Thanks! git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5851 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: check AVIOContext.error for errors while muxingjstebbins2013-10-211-1/+4
| | | | | | | | | libavformat doesn't always check this, so the return code from av_interleaved_write_frame doesn't indicate an error when there is a failure to write to disk. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5850 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: fix duration of initial audio frame when decoding with avcodecjstebbins2013-10-211-11/+15
| | | | | | | | | | | | | For some codecs, the samplerate is not known until we decode some data. So postpone calculation of frame duration till after we have decoded some data. The effect of this error is that the first 2 audio frames could have the same start time. This causes the "non monotonically increasing dts" error in libavformat mp4 muxer. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5849 b64f7644-9d1e-0410-96f1-a4d463321fa5
* OpenCL: ship our own headers, to reduce our dependency on external OpenCL SDKs.Rodeo2013-10-207-24/+2483
| | | | | | | | Part 1 of a broader OpenCL refactoring. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5844 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: fix pgs timestamp problemsjstebbins2013-10-191-23/+35
| | | | | | | | Fixes "pts < dts" and "non-monotically increasing dts" errors in avformat muxing. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5843 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
* libhb: remove dead codejstebbins2013-10-145-1616/+0
| | | | | | | The unused portions of the opencl scaling code were not removed before commit git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5837 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: improve CopyFrame bug workaround a bit.Rodeo2013-10-123-14/+21
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5834 b64f7644-9d1e-0410-96f1-a4d463321fa5
* HW: fix for compile and runtime behavior and support of the features/RB601maxd2013-10-113-11/+20
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5833 b64f7644-9d1e-0410-96f1-a4d463321fa5
* hb_get_opencl_env: remove dead code.Rodeo2013-10-111-36/+3
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5832 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: use encode-only path when we have CPU filters enabled and CopyFrame is ↵Rodeo2013-10-113-2/+54
| | | | | | unavailable. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5831 b64f7644-9d1e-0410-96f1-a4d463321fa5
* scan: print CPU info, GPU info, then QSV info.Rodeo2013-10-113-22/+59
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5830 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: move LookAheadDepth miminum to commmon code.Rodeo2013-09-252-4/+2
| | | | | | | | Unlike the maximum limit, which is HandBrake-specific, this is not our bug, and we can't fix it, short of dropping support for all old Haswell drivers. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5813 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: miscellaneous option-related improvements.Rodeo2013-09-242-6/+11
| | | | | | | | All user-controlled settings except GOP-related ones now have an explicit default value (it's never "unknown"). git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5812 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: improve ExtBRC workaround.Rodeo2013-09-241-8/+6
| | | | | | | | It doesn't play well with CQP either. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5811 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: remove RateDistortionOpt control.Rodeo2013-09-242-24/+5
| | | | | | | | The option seems to have no effect in my testing, and is of limited usefulness, so let's leave it unknown (up to the implementation). git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5810 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: fix a hang with lookahead RC and some graphics drivers.Rodeo2013-09-241-0/+3
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5809 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: ExtBRC/MBBRC and lookahead are mutually exclusive, plus miscelleanous ↵Rodeo2013-09-241-11/+24
| | | | | | | | | | stuff found in testing. Thanks to gmb for pointing it out, and Nina Kurina for pointing out the ExtBRC/AsyncDepth issue. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5808 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: fix stupid mistake; MBBRC requires API version 1.6, not 1.7.Rodeo2013-09-241-1/+4
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5807 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: libhb-based preset system.Rodeo2013-09-246-28/+109
| | | | | | | | | | | | Modeled after x264's preset system. MMBRC and LookAhead RC are now enabled by default, whereas Trellis is disabled by default. Please note that Windows GUI support will come later, and that preset names are not definitive. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5806 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: use ifdefs rather than filtering to bypass libmfx references during ↵Rodeo2013-09-246-5/+20
| | | | | | compilation without --enable-qsv. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5805 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Prettify CPU info in the log.Rodeo2013-09-241-7/+6
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5804 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: fix cropping with some brainfart sources.Rodeo2013-09-241-13/+45
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5803 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: MBBRC is actually Haswell-only.Rodeo2013-09-243-10/+16
| | | | | | | | This is confirmed by marketing material and testing with the 3257 driver on Ivy Bridge hardware. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5802 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: re-use the encqsvInit MFX session when using the encode-only path.Rodeo2013-09-241-13/+14
| | | | | | | | This seems to work around a weird and obscure issue on some systems. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5801 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: fix for VPP if VFRmaxd2013-09-231-2/+2
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5799 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: make libhb internal character code utf8jstebbins2013-09-2212-30/+230
| | | | | | | | | | This makes libhb expect all strings passed to it to be in utf8 format. The cli converts the converts from the current code page to utf8. libhb converts back to the current code page when necessary for libraries that expect it. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5798 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: remove windows ^M line endingsjstebbins2013-09-222-1219/+1219
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5797 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Tidyup a warning in oclscale.csr552013-09-211-8/+8
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5793 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Merging-in the OpenCL Scaling code from the OpenCL branch to trunk. sr552013-09-2127-60/+6720
| | | | | | | | | | | | | | | | | | | | | | | | Patch originally by the Multicoreware Inc team, followed by improvements and fixes by Micheal Wootton from AMD Inc, OpenCL: This patch implements Bicubic Scaling in OpenCL. Note that HandBrake currently uses Lanczos so the performance difference appears to be much more significant. We may offer an option of BiCubic in software later. Bicubic scaling may appear a bit sharper than the equivalent Lanczos encode and may increase file size a bit. Quality may be better or worse depending on the scaling and content and personal preference towards sharpness. When comparing performance with a custom HandBrake build that runs Software Bicubic to OpenCL Bicubic, performance increase is about 5~7% on average on a modern GPU. Hardware Decode via DXVA: We also have optional DXVA decoding which may come in useful for slower/lower end systems that have a capable GPU. This is only available on input sources that use the libav decode path. Most GPU hardware for decoding is designed for playback, so if you are running on a high end CPU, it will bottleneck the encode process. Requires OpenCL 1.1 or later supporting GPU. Front end changes and testing framework are not included in this patch. This will be resolved later. Patch will be revised further before the UI is implemented. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5792 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: fix scanning some dvdsjstebbins2013-09-191-9/+0
| | | | | | | | | | | | | | | | | | | | | e.g. star trek into darkness This reverts part of a patch that was originally written for dvdread access. So we need to watch for regressions. The patch was originally written for dvdread access and my not actually be a bug in dvdnav. So I have reverted it in dvdnav only. I also tried to reproduce the original bug in dvdread, but was unsuccessful. So I'm wondering if the original bug also got "fixed" by subsequent changes. The original bug report is here: https://forum.handbrake.fr/viewtopic.php?f=4&t=9758&start=0 The original fix is here: https://trac.handbrake.fr/changeset/2256 git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5787 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Interop: Removed unused structs and constants and added warnings in libhb ↵randomengy2013-09-191-2/+16
| | | | | | code to update the ones that are used. Broke out types for each struct into their own file. Switched all references to hb_handle_s to IntPtr and deleted that non-working struct. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5786 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: adjust trellis logging when B- or P-frames are disabled.Rodeo2013-09-151-3/+5
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5784 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: minor refactoring.Rodeo2013-09-1511-130/+144
| | | | | | | | | | Address the easy issues first. Apologies if I broke HandBrakeInterop. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5783 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: unbreak probe_dts_profilejstebbins2013-09-071-1/+1
| | | | | | | When doing codec probes, the title hasn't been set yet. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5776 b64f7644-9d1e-0410-96f1-a4d463321fa5