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

Add a OSS mixer module. #3130

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open

Add a OSS mixer module. #3130

wants to merge 1 commit into from

Conversation

mazhe
Copy link

@mazhe mazhe commented Jun 19, 2024

What type of PR is this? (check all applicable)

  • Refactor
  • Feature
  • Bug Fix
  • Optimization
  • Documentation Update
  • Other: Replace this with a description of the type of this PR

Description

Hi, I just began a few weeks ago to use polybar on freebsd and love it. Something I am missing would be a mixer module for freebsd base sound api, OSS (which can be used on other systems), so I had a look to write one and wondered if you would be interested in accepting such module.

My code is based mostly on the ALSA module, but with a few caveats:

  • No headphone support (OSS sees a separate soundcard)
  • No equivalent to mapped (yet)

I found that this module will build on Linux without any specific dependency (tested on debian, soundcard.h provided by linux-libc-dev), but would not recommend to run it even for a testsuite there as ALSA OSS compat layer has been described as broken forever.

Given I mostly based it on the ALSA module, I hope it will meet the project coding conventions and best practices.

I realize this code will not interest that many people, but one good thing with OSS is that it doesn't change a bit, I'd expect this code to be a burden only in the case of a polybar refactoring.

Thanks for your work and reviewing this request.

Related Issues & Documents

No issue related

Documentation (check all applicable)

  • This PR requires changes to the Wiki documentation (describe the changes)
  • This PR requires changes to the documentation inside the git repo (please add them to the PR).
  • Does not require documentation changes

This change should go with a new wiki page, for which the ALSA module doc can be a start with only a few changes (device, mixer fields, removing headphone/mapped entries). I'll write this if the project express interest in going forward integrating this module.

Based mosty on the ALSA module, but with a few caveats:
 - No headphone support (OSS sees a separate soundcard)
 - No equivalent to mapped (yet)

Drop pseudo-mute, newer-ish OSS implementation should provide mute.

Use soundcard name from SOUND_MIXER_INFO if possible.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant