forked from obsproject/obs-studio
-
Notifications
You must be signed in to change notification settings - Fork 25
Obs merge 31.1.2 #685
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
avoitenko-logitech
wants to merge
786
commits into
streamlabs
Choose a base branch
from
obs_merge_31.1.2
base: streamlabs
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Obs merge 31.1.2 #685
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This makes all list widget spacing set to 1.
obs_get_transition_by_name is very problematic because transitions are always private and their names aren't unique. This means that the method iterates over all private sources and then takes the first that both is a transition and matches the name we're looking for. However, this could be from anywhere - it could be a frontend transition, but also a source transition, quick transition, or even one from third-party plugins. This is always never what is intended. As such, this method (which should never have been added in the first place) needs to go. In its place, obs_frontend_get_transitions returns a list of all frontend transitions (which is usually what people are looking for), and alternatively obs_get_source_by_uuid also provides access to private sources. While we're at it, obs_get_transition_by_uuid is basically a wrapper for obs_get_source_by_uuid and not really necessary. UUID's are unique and a source doesn't suddenly change its type, so if you have a transition's UUID you can be pretty sure that when you do obs_get_source_by_uuid, it will still be a transition.
Add graphics APIs to obtain the GPU driver version and renderer strings, as well as GDDR memory sizes. The GDDR memory sizes include the dmem (dedicated memory on the GPU) and smem (shared CPU memory used by the GPU but resides in the CPU DDR). The version and renderer strings are needed for identification purposes, for example enhanced broadcasting used by Twitch, to associate the GPU used by OBS with the PCIe-based identification values such as device_id and vendor_id.
`os_get_free_size()` was simply returning 0. For Linux, implement the free size calculation based on the `sysinfo()` system call.
`get_rc_mode()` compares the incoming rate control mode string to the .name member of rc_mode_t, and the table entries are all upper-case. This caused a crash when the incoming string is set to "cbr" instead of "CBR". Make the string comparison case insensitive.
VAAPI encoders deviate from other encoders (e.g. AMF, NVENC) with the "profile" setting being an integer instead of a string. With enhanced broadcasting, "profile" is signalled as a string. Convert the string-based profile to the appropriate integer-based profile for VAAPI encoders as a workaround, until VAAPI supports string-based "profile" (if ever).
Enhanced broadcasting requires system information to be gathered on the client and submitted to the GetClientConfiguration request in order to obtain a valid response from the server. This commit adds support for gathering the required information on Linux-based systems.
Allos creating additional views that act like a MAIN_VIEW instead of AUX_VIEW.
Signals when a video reset has completed. This is mainly useful when canvases or views are used, whose mixes will have been freed or recreated during the reset.
This adds a new obs_canvas object that acts as a shareable (reference-counted) owner of views, mixes, and (optionally) scenes. This is a step towards faciliatating multi-canvas and multi-output features in OBS Studio. It solves a number of complications that exist with the manual approach of using views, such as audio mixing, source active-state tracking, and scenes not havinga reliable way of identifying the actual available canvas size.
Since scenes now can have non-unique names by being part of different canvases, use UUIDs instead.
I discovered while investigating a separate caching issue that the read command was not assigning ref correctly. This is inconsequential since we do not use that value, but it led me to look up the documentation for the GitHub CLI extension used here, gh-actions-cache. The GitHub CLI extension gh-actions-cache is deprecated as of October 2024. The recommendation is to use the offical gh cache command. That command produces slightly different output, so adjust the read command accordingly.
This allows users to leverage the OpenH264 codec from Cisco to encode H.264 video content. It is significantly reduced in capability from alternatives, but it does the job. This also provides a framework for adding support for other H.264 software codecs provided through FFmpeg.
Effectively reverting 4e97b1b, this removes a hack that added additional spacing as scrollbars would go over content due to a Qt bug. This bug appears to be fixed, as the described behavior is no longer observed. As such, the additional spacing is no longer needed (and only looks out of place).
This is needed due to QTBUG-106395. With spacing, drag-and-drop would cause items to go to the bottom of the list if they are dropped in the spacing. Effectively reverts 5fa4ea4. See also obsproject#7321 and 860b309.
It appears that in conjunction with other changes that happened around the time the removal of the transparent border got merged, it became necessary again due to those other changes. Without it, only the selected and focussed changes have a border, making the content jump around when selected and focussed. Reverts part of 5fa4ea4.
This reverts commit 5122468.
f594472 to
49e947e
Compare
916db6a to
40a0c85
Compare
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Obs merge 31.1.2