summaryrefslogtreecommitdiffstats
path: root/libhb/qsv_common.c
Commit message (Collapse)AuthorAgeFilesLines
* QSV: don't be quite as picky about marking an encoder as available.Rodeo2015-07-031-11/+21
| | | | | | | While it worked fine w/HSW, it led to some false negatives on IVB hardware. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7334 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: be more picky about marking an encoder as available.Rodeo2015-06-271-6/+16
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7329 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: check for Skylake hardware-accelerated HEVC encoder.Rodeo2015-06-271-1/+10
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7328 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: load required plug-ins before encoding, too.Rodeo2015-06-271-34/+54
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7327 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: add new capability guards for some extended video parameter buffers.Rodeo2015-06-271-55/+219
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7326 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: parse and print profile & level in a codec-agnostic way.Rodeo2015-06-271-0/+172
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7325 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: B-pyramid support is codec-specific.Rodeo2015-06-271-8/+11
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7324 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: cleanup LookAheadDepth handling.Rodeo2015-06-271-2/+1
| | | | | | | When possible, allow a value of 100 for users that might want it. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7323 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: remove HB_API_OLD_PRESET_GETTERS cruft.Rodeo2015-06-271-7/+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: add support for detection of new Intel processor releases.Rodeo2015-02-031-1/+5
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6864 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
* QSV: refactor plugin loadingRodeo2015-02-011-18/+32
| | | | | | | We may need to load more than one plugin per session, e.g. one for decoding and one for encoding. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6851 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: update hb_qsv_force_workarounds()Rodeo2015-02-011-4/+6
| | | | | | | Disabling API 1.6 detection is no longer required (our own DTS is now always available); disabling BRefType support may be useful to check that our old B-Pyramid code still works with newer drivers. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6849 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: refactor logging of encoder capabilitiesRodeo2015-02-011-23/+68
| | | | | | | | | | | Only log H.265/HEVC information with verbosity 2, as encoding is not supported yet. Log H.264 capabilities with verbosity 1, as this may be useful and doesn't take up that much space. Shorten the string as much as possible. Also rename NMBSLICE capability to NMPSLICE (Num Mb Per Slice) for consistency. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6846 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: disable AdaptiveI/B options by default.Rodeo2015-01-091-2/+2
| | | | | | | | | | Detection of the features' availability is not 100% reliable yet, and the encoder could fail to initialize if the options are enabled but not supported by the graphics driver. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6711 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
* 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
* 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
* QSV: API 1.8 support and related improvementsRodeo2014-02-181-181/+745
| | | | | | | | | 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
* Revert previous commit, sorry.Rodeo2014-01-121-5/+0
| | | | | | | I forgot about capabilities, we can't just swap the preferred implementation like that. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5965 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: add an option to select the preferred implementation at runtime.Rodeo2014-01-121-0/+5
| | | | | | | This is intended for developers only; having to rebuild just to compare software to hardware is annoying as hell. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5964 b64f7644-9d1e-0410-96f1-a4d463321fa5
* qsv: add some frame type helper functions.Rodeo2014-01-021-0/+58
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5950 b64f7644-9d1e-0410-96f1-a4d463321fa5
* ports: detect more Intel microarchitecture families.Rodeo2013-12-271-4/+9
| | | | | | | Also disable QSV hardware support on Bonnell-based microprocessors. Some Cloverview processors apparently support media SDK with third-party hardware, and until we can access hardware to test and fix the crashes we have on that platform, let's not enable it. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5942 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: update libhb presets to match a more recent recommendation.Rodeo2013-12-051-16/+66
| | | | | | | Based on a patch by Maxym Dmytrychenko. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5913 b64f7644-9d1e-0410-96f1-a4d463321fa5
* New getters for video presets, tunes, profiles and levels.Rodeo2013-11-081-1/+8
| | | | | | | | | | x264 is no longer the only encoder with a built-in preset system; QSV has its own presets, and supports setting the H.264 profile and level, too. Old getters still in place for compatibility with the old API.. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5883 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: improve CopyFrame bug workaround a bit.Rodeo2013-10-121-5/+4
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5834 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: use encode-only path when we have CPU filters enabled and CopyFrame is ↵Rodeo2013-10-111-0/+8
| | | | | | unavailable. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5831 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: move LookAheadDepth miminum to commmon code.Rodeo2013-09-251-1/+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-241-5/+9
| | | | | | | | 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: remove RateDistortionOpt control.Rodeo2013-09-241-16/+0
| | | | | | | | 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 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-241-5/+85
| | | | | | | | | | | | 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-241-0/+4
| | | | | | compilation without --enable-qsv. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5805 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: MBBRC is actually Haswell-only.Rodeo2013-09-241-3/+4
| | | | | | | | 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: minor refactoring.Rodeo2013-09-151-16/+3
| | | | | | | | | | 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
* QSV: add an option to control B-pyramid.Rodeo2013-09-051-1/+24
| | | | | | | | | | Since there is no way to control it directly, output settings need to be adjusted a bit. Disabled by default for improved compatibility. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5768 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: minor cleanup.Rodeo2013-09-011-0/+17
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5760 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: choose and re-use a "preferred" implementation instead of using ↵Rodeo2013-09-011-2/+40
| | | | | | | | | | MFX_IMPL_AUTO_ANY. This fixes a rare issue where hardware support was detected as available and used in encqsvInit, but MFXInit silently fell back to software in qsv_enc_init (still don't know what that's all about though). git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5759 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Print QSV info in all logs in a libhb-friendly manner, via hb_scan (was ↵Rodeo2013-08-261-1/+3
| | | | | | | | | | printed in hb_init). Also, print an error to the log if attempting to print uninitialized QSV info. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5751 b64f7644-9d1e-0410-96f1-a4d463321fa5
* QSV: don't use AVBR rate control.Rodeo2013-08-251-3/+3
| | | | | | | | User testing shows it's unreliable, and VBR works just as well for that purpose. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5749 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Big merge, QSV to trunk: part 2 (new files).Rodeo2013-08-221-0/+780
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5738 b64f7644-9d1e-0410-96f1-a4d463321fa5