-
-
Notifications
You must be signed in to change notification settings - Fork 8k
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
UI: Add audio track mixer #4741
base: master
Are you sure you want to change the base?
Conversation
Nice work. I'll be sure to check it out |
78e75ac
to
376c2c8
Compare
I really like this, but I can already see people asking us why this isn't part of the normal mixer, or its own dock. Would it be possible to add this as a dock, or optionally to the main mixer dock itself? |
That'd be a design decision - the original PR had it as its own optional dock (hidden by default). I used the original PR for a while and agree that it'd be best as its own dock, which'd allow for choosing multiple tracks in future. |
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
I also agree that this should at the very least be it's own dock, or part of the main audio mixer (Perhaps pinned to the top of the list) |
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
I didn't realize this was a meter for every audio track that could be swapped between. I'd like this to just be a single master meter for all tracks and pinned to the top of the audio mixer dock I know there was a very large advanced mixer PR this got splintered off from, but I think there are better ways to approach audio controls for other tracks |
Marking this draft for now as there are some design issues that need to be addressed on the UI/UX side. |
If it were to put in the mixer dock, how would it be differentiated from the other meters? |
My current understanding is that this should be a single master mix for all tracks, pinned at the top of the mixer dock. Perhaps we can put a border around it to indicate it's a static part when enabled? |
I have been looking for a Master Fader for a while now, I would love to test your Plug-In! As far as I can see there is no download link in this post? Sorry to bother, but I don't use Github very often. 😅 |
This is not a plugin, it's a proposed code change for the base OBS Studio. There is no download available currently as this is not finished yet. |
Better than what is currently implemented, but I really think what pkv has done with music edition is exactly what the majority of users would benefit from. It is super clean, not bloated, and seems very user friendly overall. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Per a discussion many months ago, this was renamed/recontextualized as an 'Audio Track Mixer', which while nitpicky is much more accurate to the functionality here. As noted above, a master mixer is not actually technically possible currently.
With that in mind, I am feeling better with this from a UX perspective.
Prior to merging I would like to see the code refactored to update all naming conventions away from 'Master mixer', PR/commit title updated to match, and more testing.
It is common practice to use compression/limiting on the Master track, and is supported by every DAW and professional video editing software. I thought it was implied that it would work the same way? This capability would also allow using loudness monitoring VST plugins, which incidentally is the way it is done by all DAWs as they don't natively measure loudness in LUFS. |
@cg2121 Just a friendly poke about this feedback, specifically about internal naming. Additionally, there are code conflicts. |
Updated to rename master mixer to audio track mixer in all of the code, as per @Warchamp7 request. I also removed unnecessary/duplicate code. |
Unfortunately it would appear that it is conflicted again. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have not fully understood how audio_track_active
behaves but the timing of incrementing/decrementing it looks wierd.
1cad799
to
87ec585
Compare
This makes each audio track a source.
This adds an audio track mixer, so users can monitor different audio tracks.
I was just looking for something like this in OBS. Is there a reason why this hasn't been merged yet? |
This is the entire point of having a Master track, afaik. Not being able to broadcast the track would be pretty pointless. I want to be able to use an advanced compressor/limiter plugin that essentially sounds like multiband sidechain ducking. The one I use will turn up the quiet audio (game), then make that quieter when something louder comes in (mic), while keeping the same loudness. There is no way to do this without a master track that has plugins (audio and video for possible render/sync delay if not using one in the filters for the scene) as well as being able to output. Does this need a new issue/Pull request? Thanks. |
@norihiro Do you still have open concerns regarding @cg2121 Do I understand it right that the sliders can adjust the tracks' output volume? Because that makes it obviously different from the meters named in other applications (which usually have only one output track, so only one meter next to the preview). |
A proper master output track (and being able to interact with it similar to how DAWs expose it) is indeed a separate concern and would require a separate PR. Having a master output channel (post-fader) that can have filters applied to it as well is a valid request (one that many on the team share) but audio is hard and there is a big pile of other things vying for attention obviously. Usually laying the architectural groundwork (without exposing anything to users) should come first, followed by specific features (another feature often asked for is true output monitoring which would require tapping into post-fader audio). |
The implementation looks as follows. UX-wise, is this acceptable?
For example, an audio source is not assigned to any audio-tracks but set to monitoring, the user cannot hear the audio source if unrelated audio-track is in monitoring, though the audio source is expected to monitor. Other implementation can be not to block audio-monitoring or to have a more complicated condition to avoid monitoring the audio twice. |
I hope this is entirely optional, cause if this behaviour will be default in OBS when this is merged, is going to cause a lot of problems. |
any update on this PR, why hasn't this been merged yet? |
I'd recommend taking the time to read the comments before posting like this in the future. In general "why isn't this merged" comments with no substance are annoying, but asking a question that is clearly answered in the discussions in the comments above you even more so. |
Thank you for taking the time to respond. You shouldn't get angry or confrontational over a why question, it's just a question friend. You can just ignore and not respond or just point out that the question is already answered above. Thanks |
So, I took some time to read the comments on this PR, and I'm not even sure if this PR is supposed to add a Master track (like you'd find in DAWs and other software), and where OP even is with this PR. Maybe instead of taking your anger out, summarize what happened, not everyone has all the time in the world. :D |
Description
This adds a dock, hidden by default, which shows volume controls for each audio track. Each track can be hidden.
Motivation and Context
IMO, this feature is sorely needed in OBS.
I took the code from #1469, and tried to simplify it as much as possible, so it would be more likely to be merged.
How Has This Been Tested?
Controlled different audio tracks and used the audio monitor with them to make sure it functions as expected.
Types of changes
Checklist: