If related to media, be sure to explain for what media provider this request is.
Add as much details as possible.
Please be precise about your need and not the solution you think you need.
Problem solved:
Describe your problem precisely as it’s more important than the solution you may think of.
There’s a slider for changing the speed; it’d be great if there was one to change the pitch, too.
Brought benefits:
Explain what benefits it brings to all users and not just you and your possibly very unique need.
Pitch change is a natural side-effect of speed change. In fact, “pro audio editors” use the term “tempo” when changing the speed without changing the pitch, and the term “speed” when they are changed together (like a record playing too slowly).
Other application solutions:
If other applications have solved this, please describe their solution (If it fits your needs, else explain why their solution is not perfect)
VLC (Android version) has a setting to opt out of time-stretching audio. This locks tempo and pitch together, like a record (see above).
Additional description and context:
The more details the better to understand the need and figure out the best solution.
Screenshots / Mockup:
If possible please provide screenshots of your idea of the implementation or how other application do this.
The Ui in my mockups below are influenced by Audacious
You’d send a number like the speed number (0.5 to 3.0) to ExoPlayer, but show a “semitones” number on the UI. These calculations convert to and from the “semitones” number to the ExoPlayer number.
So a speed-like number of “2” would display as “+12 semitones”, and a speed-like number of “0.5” would display as “-12 semitones”.
Also, the names of my Java functions call the speed-like number the “speedMultiplier”.
ExoPlayer takes 2 arguments the speed and the pitch.
On your screenshot the speed is the same as now.
And the semitones are tied to the pitch. So your functions that are tied to speed as per their name does not match hence why I’m lost.
And your functions also does not seem to tie the 2 parameters between them.
I guess I’ll go simple. A switch to enable a pitch control that will be 0.5 to 3 like the speed and pass both Most users won’t know about semitones anyway.