72 Commits

Author SHA1 Message Date
palana
ec421e580a Add 'profile' advanced option support for QSV encoder
Fix #304
2014-02-15 22:45:57 +01:00
palana
e8467dc87f Add QSV preset selection setting
Also improve string output for QSV target usages
2014-02-14 04:08:26 +01:00
palana
ed314cfce6 Implement QSV preset selection via init request 2014-02-14 03:45:29 +01:00
palana
5ae6cca2fc Output qsvimpl error only if there actually is a qsvimpl parameter 2014-01-11 04:26:39 +01:00
palana
13906eb934 Refactored encoder initialization, display errors instead of silently using x264
Added a bunch of (localized) error messages for QSV and NVENC
2014-01-04 01:41:23 +01:00
palana
2f3d119e32 Output complete sei_rbsp (including rbsp_trailing_bits) 2014-01-03 07:35:37 +01:00
palana
d1a272e5f0 Stop processing NAL_SEI when rbsp_trailing_bits is encountered 2014-01-03 07:35:36 +01:00
BtbN
270481f91d Fix some warnings 2014-01-02 17:37:31 +01:00
palana
764f01f778 Added h264 main profile override to QSV encoder 2013-12-19 15:19:16 +01:00
palana
f802bb8868 Log bframe_delay adjustments and lower bframe_delay instead of crashing 2013-12-06 00:56:16 +01:00
palana
62865a59fc Fixed frame_ticks calculation and added bounds check for init_pts 2013-12-05 04:59:25 +01:00
palana
58c2ad0227 Improve DTS handling for QSV encoder
Improves audio delay/sync
2013-12-04 20:25:33 +01:00
palana
0e9663f696 Extend QSV resolution check for Ivy Bridge 2013-12-04 20:25:32 +01:00
palana
d84552ad82 Fixed typo in QSV encoder height check 2013-12-04 20:25:32 +01:00
palana
c1021997b7 Fixed broken identifier 2013-10-17 00:57:41 +02:00
palana
3bacf25fea Added detection for unsupported high resolutions on Sandy Bridge QSV 2013-10-17 00:12:47 +02:00
palana
56b2baf286 Add error message for failed initialization on windows 7 (and earlier) 2013-10-07 16:34:53 +02:00
palana
134a13c80d Moved QSV encoder implementation to QSVHelper
Notable improvements:
- fixes d3d11 mode on all tested configurations
- should improve compatibility with Optimus (untested)
2013-09-25 21:36:21 +02:00
palana
a426dda319 Added more descriptive error messages to QSV encoder
QSV encoder will now trigger a CrashError if there are no new idle tasks after 1500 ms
2013-09-14 00:10:23 +02:00
palana
a2d553d793 Made custom QSV implementation setting default to hardware autoselect 2013-09-13 18:57:51 +02:00
palana
45e6c0b3a9 Updated AUTHORS and various file header copyright notices 2013-09-12 04:14:26 +02:00
palana
55af151ab5 Handle aborted QSV sync operations 2013-09-10 00:43:07 +02:00
Gol-D-Ace
2a09d703b3 Removed whitespace in OBSApi/Utility/Profiler.cpp + Source/Encoder_QSV.cpp 2013-09-07 18:19:26 +02:00
palana
a7823ffec4 Actually use selectable color space matrix in QSV encoder 2013-09-07 02:50:05 +02:00
palana
693e659737 Implemented selectable color space matrix in QSV encoder 2013-09-06 19:53:25 +02:00
palana
1936f24c33 Refactored memset calls in QSV encoder 2013-09-06 19:47:26 +02:00
palana
25080db838 Add mutex to RequestBuffers and related calls in QSV encoder 2013-09-06 16:06:07 +02:00
palana
0a7da6cb4d Re-enabled profiler calls in QSV encoder 2013-09-06 15:42:26 +02:00
jp9000
fd014bfe97 Allow selectable color space matrix outputs 2013-09-03 09:10:17 -07:00
palana
e605e3c8f6 Disabled profiler calls in QSV encoder
Fixes crashes due to new encoder thread
2013-09-01 22:50:53 +02:00
jp9000
f17ddc84c6 Separated encoding to a separate thread to prevent constant framerate issues, and increased frame timing precision to nanosecond approximation 2013-08-31 13:13:50 -07:00
palana
d6ac596dcf Added keyframe interval option support for QSV 2013-08-05 03:05:31 +02:00
palana
1b41d2fefa Implemented encoder flushing for QSV 2013-08-03 05:13:36 +02:00
Richard Stanway
5b6f99e72d Flush encoder before exiting video processing loop 2013-07-21 09:06:59 -04:00
palana
4cd481f138 Added QSV profile for platforms with non-functional D3D11 API version 1.6 support and broken acceleration on API version 1.4 2013-07-12 06:03:45 +02:00
palana
7d68f732cc Improved QSV device auto initialization and added override via custom parameter
Auto initialization is still triggered if the session initialization fails with custom qsvimpl parameter
2013-07-10 04:01:04 +02:00
palana
fcc8b34c57 Added headless Direct3D11 mode for QSV on Ivy Bridge or better 2013-06-26 01:43:43 +02:00
palana
a64fada9bb Fix video packet priorities for QSV 2013-06-06 06:21:57 +02:00
palana
357c10f90b Fix off by one error for custom bframes setting in QSV 2013-06-06 06:16:52 +02:00
palana
b3a6243824 Fix warning for win32 and x64 2013-06-05 00:24:10 +02:00
jp9000
c9cd8228cb fixed a minor warning and and removed white space 2013-06-04 02:57:48 -07:00
palana
f549e0bd5f Fixed a potential bug with SEI payload creation and a minor compiler warning 2013-06-04 04:11:00 +02:00
palana
61cc3c7a93 Split multiple SEI messages into multiple packets for QSV and add SEI user data to h264 bitstream 2013-06-04 00:04:20 +02:00
palana
feaa174298 Generalized encode control handling for QSV 2013-06-03 23:48:45 +02:00
palana
3af9e9b366 Allow custom settings for IDR interval and bframes for QSV 2013-06-02 18:45:14 +02:00
palana
7d3698156a Disable QSV checkbox if QSV is unsupported 2013-06-02 18:45:14 +02:00
palana
122a162f12 Updated QSV encoder defaults 2013-06-02 18:45:14 +02:00
palana
b0a81e72f6 Fix frame duplication with CFR for QSV 2013-05-26 22:49:19 +02:00
palana
3f19819d1f Allow reusing QSV buffers if the buffers are not in use 2013-05-26 22:49:19 +02:00
palana
7391dab65f Use MemId instead of FrameOrder for tracking buffers 2013-05-26 22:49:18 +02:00