ao_pipewire: revert cubic volume curves, update docs#17703
ao_pipewire: revert cubic volume curves, update docs#17703winex wants to merge 2 commits intompv-player:masterfrom
Conversation
|
In addition to #15835 (comment), it is worth pointing out that the documentation wording below:
is simply describing that the behavior differs depending on the API. There is no guarantee that it provides any kind of "1:1" mapping to the underlying raw API values. If |
|
wpctl is a frontend, ao-volume is a low level property that really shouldn't even exist considering mpv has its own volume mixer. If you want ao-volume to become a front end, you need to implement proper conversion for every AO mpv supports, not just Pipewire. Some AOs can be configured to be in cubic or linear, like ALSA and there's no way to figure out which one it is. Implementing the API required to retrieve what volume scale ALSA is using is an exercise for the PR contributor. |
This has never been true. Before
This fixes
If you want to remove this, PR welcome. This is off-topic in this PR.
If there is no correct way to do it as you are indicating here, then you cannot say that "1:1" mapping is the correct method. |
Where have I said that? I'm saying that since there's no correct way to do this, we should let the user figure out what the values mean and convert them to their preferred scale in a script or such. The user is going to know more about their audio server and its configuration than mpv, as it stands.
Does your definition of "never" not encompass the present? Because it's true in the present right now, and will be in the future as well unless you bring softvol=no back.
It does not "fix" ao-volume for Pipewire. It makes ao-volume do a special thing only for Pipewire, but not for others. |
This assumes that the conversion can be performed. How does the user perform the conversion if there is no "1:1" mapping guarantee?
Where in the current documentation says that it is a low level property?
Where in the current documentation says that "1:1" mapping is specified behavior, and the behavior in this PR is not allowed? |
The user will know if they configured their audio server to use cubic or linear mapping. mpv won't, unless it starts reading config files for entirely unrelated applications.
It is entirely meaningless and a waste of time to attempt to have a constructive conversation with you. I'll let the maintainers decide between this and #17704 |
|
What if mpv could be configured to choose between 1:1 and cubic? Maybe with different default per AO if we know the default behavior of some audio servers, and 1:1 otherwise? |
You can have a subproperty that converts the value to cubic, but this will give you garbage (L^9) if it was already cubic. I'm personally in favor of deprecating these properties instead because there's no good way for mpv to do this, and tell users to use a script for this. |
Users prefer to not have to use scripts to fix problems between their media player and their audio server. If for some audio backends mpv cannot know how it should behave, but it's still one of few known options, then for users it's preferable to configure it instead of writing a script to do whatever. |
How does the user know how the mpv values are mapped to audio server values? This is only documented for ALSA and PulseAudio, not for other AOs. How do they know that the mapping is linear on pipewire, which is different from
The comment is related to your claim:
And it remains a fact that there is no documentation to support this claim. From user perspective, the mapping between ao-volume and pipewire internal value is not documented, so there is no way for the user to do the conversion. Your argument to reject this PR is built on this claim, so it is relevent and constructive in the context of this PR to discuss whether this is true or not. |
|
@llyyr note that ALSA doesn't have per-application/stream volume levels at all and that's why every program made their own implementations of idk about ALSA requests, but we can add
but last 2 are interesting - i didn't know of... under PW server the ALSA-backend volume curve could be configured in |
|
ooh, what a holywar here... i can just ask being on topic of
current PR makes things match for some of AOs
omg, please no! ...
that's constructive proposal, but anyway every usable app will end up using cubic curves ( |
|
ok, file extension is nonsense - it's just name suffix. i'll fix commit message asap btw:
|
fix #11065