0
0
mirror of https://github.com/obsproject/obs-studio.git synced 2024-09-20 21:13:04 +02:00
Commit Graph

26 Commits

Author SHA1 Message Date
jp9000
c5178a5d1e obs-qsv11: Do not enable b-frames on sandy/ivy bridge
B-frames on sandy/ivy bridge do not work, so disable for those
platforms.
2019-08-26 08:13:24 -07:00
jp9000
806ab5a022 libobs: Mark encoders that support dynamic bitrate
(This commit also modifies mac-vth264, obs-ffmpeg, obs-qsv11, and
obs-x264)
2019-08-18 03:14:38 -07:00
brittneysclark
0610bc7570 obs-qsv: Enable high profile for QSV H.264
Changing QSV H.264 default profile from "main" to "high"
2019-07-19 02:51:49 -07:00
brittneysclark
2f62831a96 obs-qsv: Enable LA_CBR as QSV rate control
Allow user to choose look ahead CBR as the rate control method for QSV.
Also, changes look ahead depth default to 15 when used.
2019-07-16 07:46:02 -07:00
brittneysclark
8717a66991 obs-qsv: Enable Content Adaptive Quantization
Allow user to enable Content Adaptive Quantization (MMBRC) if CPU is SKL
or newer
2019-07-13 00:10:16 -07:00
brittneysclark
b675bed90b obs-qsv: Enable B-frames and B-pyramid for encoder
Enable B-Pyramid frames to improve quality for high motion content.
B-pyramid allows a B-frame to choose closer frames for reference which
may have higher correlation.

Adjusts packet priority to avoid dropping referable B-frames

A check has been added to ensure feature is enabled only on platforms
with MSDK API 1.8 or higher - addresses crashing issues.
2019-07-12 23:35:16 -07:00
jp9000
f53df7da64 clang-format: Apply formatting
Code submissions have continually suffered from formatting
inconsistencies that constantly have to be addressed.  Using
clang-format simplifies this by making code formatting more consistent,
and allows automation of the code formatting so that maintainers can
focus more on the code itself instead of code formatting.
2019-06-23 23:49:10 -07:00
Clayton Groeneveld
31b73f8025 UI: Add ability to set properties spinbox suffix 2019-05-02 08:54:14 -07:00
Clayton Groeneveld
1160ee767a UI: Increment bitrates by 50 2019-04-30 06:54:02 -05:00
jp9000
4c7860056e Revert "Merge pull request #1418 from cabirdme/qsv_feature_add"
This reverts commit 3c22cf35c9, reversing
changes made to c7dab6c92b.

This is being reverted due to many people being unable to start up the
QSV encoder with these changes.
2019-03-05 15:21:09 -08:00
jp9000
92cb20e7a2 Revert "obs-qsv: Enable b-pyramid & change packet priority"
This reverts commit 33ff46a10e.

This is being reverted due to many people being unable to start up the
QSV encoder with these changes.
2019-03-05 15:20:42 -08:00
brittneysclark
33ff46a10e obs-qsv: Enable b-pyramid & change packet priority
- Enable b-pyramid frames
- Adjust packet priority to avoid dropping referencable B frames

Closes obsproject/obs-studio#1520
2019-01-25 12:13:22 -08:00
Jim
3c22cf35c9
Merge pull request #1418 from cabirdme/qsv_feature_add
obs-qsv: Expose additional QSV encoder settings through GUI
2018-09-16 08:17:12 -07:00
Bird, Christopher
99b8c8390f obs-qsv: enable High Profile for QSV h264
- New QSV Default -> H264 High profile.  Previous Default -> H264 Main profile
2018-09-10 10:23:43 -07:00
Richard Stanway
144d23a9cc
obs-qsv11: Protect context variable in clear_data 2018-08-11 02:57:23 +02:00
Bird, Christopher
58812bc0b3 obs-qsv: Expose additional QSV encoder settings through GUI
- Allow user to change # of B frames. New Default -> 1
- Allow user to enable Content Adaptive Quantization (MBBRC) if CPU is Skylake or newer.
- Allow user to choose LA_CBR as a rate control.
- LA depth: New Default -> 15, only when LA rate control is used.
2018-08-08 10:39:57 -07:00
Bird, Christopher
3a08e858a6 obs-qsv: Allow for multiple QSV encoders
Allow multiple QSV encoders, usefull for live + recorded parallel
sessions.  The first QSV encoder will create a DirectX device and return
a handle / pointer.  Any additional QSV encoder will use that same
pointer to the DirectX device.  We keep track of the number of open
QSV encoders so that we wait to close the DirectX resources after all
encoders are closed.

Closes obsproject/obs-studio#1341
2018-07-18 17:16:01 -07:00
jp9000
e230f77311 obs-qsv11, obs-x264: Allow bframe count overriding
Allows the ability to override bframes (useful for specific protocols)
2017-07-14 12:39:20 -07:00
Richard Stanway
34ee1a87c3
obs-qsv11: Fix SEI crash caused by dangling pointer 2017-05-04 21:44:42 +02:00
Ryan Foster
be98cee2a0 Fix various typos across multiple modules 2017-04-25 22:39:42 -04:00
Richard Stanway
a1083d4252 obs-qsv11: Fix various issues detected by Coverity 2017-02-25 17:18:55 +01:00
jp9000
edfc2bed05 obs-qsv11: Manually mark priority bits for QSV frames
QSV frame priority bits are not being marked correctly; their priorities
are always marked either low or disposable, whereas I-frames should be
marked as highest (3), P-frames should be marked as high (2), and other
frames should be marked as either low or disposable.  This helps ensure
that the correct frames are dropped when frames need to be dropped.
2016-11-14 17:34:46 -08:00
jp9000
c7923bcbe4 obs-qsv11: Add deprecated warning for forced CBR mode
Using the "cbr" parameter is now considered deprecated in favor of using
"rate_control" to set the rate control method.
2016-05-11 13:12:31 -07:00
jp9000
61ab648bac obs-qsv11: Fix QSV rescaling
When using per-encoder rescaling, QSV would overwrite the current
encoder scale value in the get_video_info callback with the base video
width/height instead of using the current encoder width/height.
2016-04-28 16:01:38 -07:00
jp9000
bc38427862 obs-qsv11: Rename encoder 2016-04-23 07:34:12 -07:00
Seung-Woo Kim
3e4bcf06bc obs-qsv11: Add native obs-studio QSV encoder 2016-04-19 08:29:22 -07:00