Skip to content
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

enlarge(/boost/magnify/increase) youtube's volume slider #2116

Open
obeydesign opened this issue Mar 23, 2024 · 12 comments
Open

enlarge(/boost/magnify/increase) youtube's volume slider #2116

obeydesign opened this issue Mar 23, 2024 · 12 comments
Labels
Feature request Wish or idea good first issue A GitHub standard for inviting (new) contributors *Congratulations in advance!* help wanted Just an old github standard we add automatically. (The team can remove it when working on it.) up-for-grabs (a github standard for inviting new contributors) - Welcome! ♥

Comments

@obeydesign
Copy link

PROBLEM:
I'm frustrated by the inability to boost volume on videos. The Forced Volume option under Player has the strange behavior of setting all volume controls on newly opened YouTube videos to maximum, then, I guess, some volume amplification is done in the background.

SOLUTION:
The behavior I expect is to have the volume slider on newly opened players be where I set it last, and to have the volume boost added to that level, not to set the slider to maximum, then amp up the volume from there.

RELEVANCE / SCOPE:
I claim this affects all users.

"SIDE EFFECTS":
No conflicts.

CONTEXT:
Thank you!

SHORT Table (Summary)
Problem Unexpected behavior from the Forced Volume option
Solution Change behavior to not automatically set a new player's volume slider to 100%
Alternatives
Scope
Side effects
Context Every newly opened video player
@obeydesign obeydesign added Feature request Wish or idea good first issue A GitHub standard for inviting (new) contributors *Congratulations in advance!* help wanted Just an old github standard we add automatically. (The team can remove it when working on it.) up-for-grabs (a github standard for inviting new contributors) - Welcome! ♥ labels Mar 23, 2024
@raszpl
Copy link
Contributor

raszpl commented Mar 25, 2024

Would you feel better if the slider still displayed whatever volume you have set now while video played louder? What purpose would the slider at lets say for example 30% have in that case?

Lower volume sound samples carry less data. Yes, its possible to leave volume low and apply gain on that low volume signal, but it will sound terrible.

@obeydesign
Copy link
Author

obeydesign commented Mar 25, 2024 via email

@raszpl
Copy link
Contributor

raszpl commented Mar 26, 2024

Took me a good couple of days, buy I got there eventually!
I finally understand what you are talking about, a general "boost my crappy speakers by x" software toggle. Pretend the new 150% volume is just 30% etc.
Instead of 0-400% "Forced volume" we can let User directly set separate "Volume Gain" multiplier and figure out logistics under the hood by faking YT player volume slider reading and switching between no gain and gain at appropriate levels. Yes, this makes sense and is much more user friendly.

The way it currently works is anything up to 100% is pure volume, above we use AudioContext createGain()

if (!this.audioContextGain && volume <= 100) {
if (this.audioContext) {
this.audioContext.close();
}
this.elements.player.setVolume(volume);
} else {
if (!this.audioContext) {
this.audioContext = new AudioContext();
this.audioContextSource = this.audioContext.createMediaElementSource(document.querySelector('video'));
this.audioContextGain = this.audioContext.createGain();
this.audioContextGain.gain.value = 1;
this.audioContextSource.connect(this.audioContextGain);
this.audioContextGain.connect(this.audioContext.destination)
}
if (this.elements.player.getVolume() !== 100) { this.elements.player.setVolume(100);}
this.audioContextGain.gain.value = volume / 100;

but the way its crudely implemented it will always start by displaying 100% and lowering the slider down ends up Amplifying bad signal with bad signal to noise ratio by whatever ratio set by "Volume Gain"/100 :/

@obeydesign
Copy link
Author

obeydesign commented Mar 26, 2024 via email

@ImprovedTube ImprovedTube changed the title Unexpected, undesired behavior from Forced Volume feature boost youtube's volume slider Mar 26, 2024
@ImprovedTube
Copy link
Member

ImprovedTube commented Mar 26, 2024

hi @obeydesign!

Forced Volume .. behavior

  1. our feature originally was just to permanently force the same volume level for every video between 0 and 100. So most people have it set below 100. (And we or you can rename or annotate to explain that accordingly! 🎉 )

  2. New feature: Boost youtube's volume slider: We can edit youtube's volume slider's maximum! By allowing to move the handle further, but making it appear gradually red when reaching increasingly questionable Level/method.

  • (Unfortunately this will either have to appear transparent above the playback timer - or video time or shift it to the right. When i first wrote this it was a vertical slider (like window's, and not horizontal like android and chrome-book)

  • planned-out here

  • Fortunately tweaks of the youtube player might last longer and are more relevant than the rest of the youtube page.

  • As of youtube's volume normalization there usually should be some more loss-less gain possible @raszpl

  • ..and some people might be used to a temporary shortcut key (or button Where are the volume booster buttons? #1981) to undo (toggle-off) that we would have to reverse the calculation or store the previous value.

@obeydesign
Copy link
Author

obeydesign commented Mar 26, 2024 via email

@ImprovedTube
Copy link
Member

Without touching the size of Youtube's volume slider, we should still mark up/remind of the boosted somehow with a sticky position in the middle, visual divider marking 100%, and a light red color above that.

@obeydesign
Copy link
Author

obeydesign commented Mar 26, 2024 via email

@suparnaghosh934
Copy link

suparnaghosh934 commented Mar 26, 2024 via email

@ImprovedTube
Copy link
Member

ImprovedTube commented Mar 26, 2024

work in UX

then chances are you will stay @obeydesign 😃. As this project is unique there and a lot of this github yet is(/should be) about #UX & #UI discussions
. While features are specific and some are just [too] little tweaks, yet will otherwise be worth it to up to all youtube users. (and thus should be set & forget, as far as we have the dev-capacity) )


You'd probably enjoy at the top of our To-Do-List to simply allow everyone to enable/disable all of youtube's experiment flags (up to 800?) - (and crowdsourcing what they even mean)

= We can allow users to enable / disable so much more and easier than we did yet. So features should be ranked
and to many users the most important sections would be Youtube added/changed recently "what i removed" & "what i added" https://docs.google.com/spreadsheets/d/1GidvMduxTl6jXpDCKj-sOPg8KSqDfCYO2OlCdBADaSI/edit?pli=1#gid=0

Long-term structure/vision for our UI:

  1. my content & discovery logic

  2. my~?setup:
    a) (Web-)Video Features (+specific Youtube Tweaking + Youtube's Experiment Flags , those added by the user) ).
    b) Youtube: Cleaning/Trashbin (Up to 100s (including disabled Youtube's Experiment Flags) Ideally needed decreasingly often.)
    c) Youtube Minimap/Layout (more sections, maybe Drag&drop for Sizes, Positions & paint bucket for Colors)

( #848 (reply in thread), #890 (comment) )

while extra exceptions/conditions like video genre could be set for many features on right click.
and shortcuts or buttons to toggle any experiment flag or anything could be setup with right click too.


furthermore we could cover 2,3,4 dimensional settings "rule builders" (doing something only if multiple conditions are met) example: #2042 (comment). like: https://chromewebstore.google.com/detail/youtube-refined/bhbammekghlcjhbiekoldhpfgelblcni and so much more (even if not every users will find them easy or ever learn about the power of such, we could crowd-source such rules ) #1881 (reply in thread) #1881 (comment) )

@ImprovedTube
Copy link
Member

(related: #324 )

@ImprovedTube
Copy link
Member

chances are you will stay @obeydesign 😃. As this project is unique there and a lot of this github yet is(/should be) about #UX & #UI discussions
. While features are specific and some are just [too] little tweaks, yet will otherwise be worth it to up to all youtube users. (and thus should be set & forget, as far as we have the dev-capacity) )

(funny but true example: #1818 )

@ImprovedTube ImprovedTube changed the title boost youtube's volume slider enlarge(/boost/magnify/increase) youtube's volume slider Mar 26, 2024
This was referenced May 3, 2024
Closed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Feature request Wish or idea good first issue A GitHub standard for inviting (new) contributors *Congratulations in advance!* help wanted Just an old github standard we add automatically. (The team can remove it when working on it.) up-for-grabs (a github standard for inviting new contributors) - Welcome! ♥
Projects
None yet
Development

No branches or pull requests

4 participants