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

Suggestion: PulseEffects PipeWire-supporting version could use a fork and rename #874

Closed
AlexFolland opened this issue Jan 12, 2021 · 54 comments

Comments

@AlexFolland
Copy link
Contributor

AlexFolland commented Jan 12, 2021

Disclaimer: This ticket is not meant to be a command or criticism. I use PulseEffects every day because my speakers are too bassy and I need a system-wide equalizer to reduce the bass. I appreciate the development and support of PulseEffects. It facilitated my switch from Windows using EqualizerAPO to cut the bass to Linux, where pulseaudio-equalizer caused audio glitches and PulseEffects saved me. I am only posting this ticket as a suggestion.

Now, here's my suggestion and rationale.

"PulseEffects" seems to be named after "PulseAudio". In the latest version, it's only compatible with "PipeWire", and not "PulseAudio", despite still having "Pulse" in the name. Therefore, it seems like dropping PulseAudio merits a rename to "PipeWireEffects", "PipeEffects", or "PWEffects".

This would:

  • Improve discoverability for users of PipeWire by appearing in PipeWire searches in the package manager. Searching for "pulse" in pamac is how I originally discovered PulseEffects.
  • Clearly show that PulseAudio support exists, and allow PulseAudio users to easily find the latest version of PulseEffects that works with PulseAudio. "PulseEffects" could exist as a separate package from "PipeWireEffects".
  • Accurately identify the project for the target audience of the software.
  • Prevent confusion in general.

Here's an alternative suggestion:

Alternatively, leaving support for PulseAudio in the software with a disclaimer that maintenance of PulseAudio support has ceased could work. This would continue to allow PulseAudio users to use the software without their configurations breaking for now, and allow PipeWire users to use the software as well. This alternative lacks only the discoverability benefit for new PipeWire users.

@wwmm
Copy link
Owner

wwmm commented Jan 12, 2021

This ticket is not meant to be a command or criticism

No problems. I thought a lot about this when I started the port. The thing is I've got used to the current name. And having "Pipe" replacing "Pulse" seemed a little weird.

allow PulseAudio users to easily find the latest version of PulseEffects that works

Renaming would help with that. But package maintainers can help too by forcing a dependency on PipeWire for versions equal or above 5.0.0. The problems some users are facing now are mostly caused by the fact package maintainers did not realize yet that the 4.x and older releases work only with Pulseaudio.

"PulseEffects" could exist as a separate package from "PipeWireEffects".

This could potentially require more time than I currently have because people will think that both projects will be developed. I do not intend to touch on our Pulseaudio legacy branch unless it stops running for some reason.

leaving support for PulseAudio in the software

This is really hard to do. PipeWire and Pulseaudio do things in a totally different way. Creating a wrapper that allows to use both would take a lot of work. It just does not seem worth the effort. In case you are curious you can take a look at the files https://github.com/wwmm/pulseeffects/blob/master/src/pipe_manager.cpp and https://github.com/wwmm/pulseeffects/blob/pulseaudio-legacy/src/pulse_manager.cpp

@AlexFolland
Copy link
Contributor Author

This ticket is not meant to be a command or criticism

No problems. I thought a lot about this when I started the port. The thing is I've got used to the current name. And having "Pipe" replacing "Pulse" seemed a little weird.

I see what you're saying. However, as a relatively short-term neutral third party, it seems to me to be more weird to stay as "Pulse" which explicitly refers to a particular now-unsupported audio system.

allow PulseAudio users to easily find the latest version of PulseEffects that works

Renaming would help with that. But package maintainers can help too by forcing a dependency on PipeWire for versions equal or above 5.0.0. The problems some users are facing now are mostly caused by the fact package maintainers did not realize yet that the 4.x and older releases work only with Pulseaudio.

I don't see how that would help users find the latest version that supports PulseAudio. Maybe I'm not savvy enough with package managers, but I'm personally not sure how to get the exact last version of a package from before a particular version number. I just figured it out with the Arch wiki, but I'm not sure if that kind of solution works well for many users.

Maybe package maintainers will figure out a clever solution, where they can explain it, but that seems like a messy situation. I'm imagining multiple packages with "pulseeffects" in their names, and if the user chooses the wrong one by version number, they won't know why it's not working. Of course it wouldn't be your fault, but situations like this may come back as issue tickets in the future.

"PulseEffects" could exist as a separate package from "PipeWireEffects".

This could potentially require more time than I currently have because people will think that both projects will be developed. I do not intend to touch on our Pulseaudio legacy branch unless it stops running for some reason.

I'm sure users would understand if there's a simple message indicating that development of "PulseEffects" has ceased in favor of "PipeWireEffects". It does seem to me that explaining whether, how, and why "PulseEffects" no longer supports "PulseAudio" has potential to consume more time in total than a rename to "PipeWireEffects".

leaving support for PulseAudio in the software

This is really hard to do. PipeWire and Pulseaudio do things in a totally different way. Creating a wrapper that allows to use both would take a lot of work. It just does not seem worth the effort. In case you are curious you can take a look at the files https://github.com/wwmm/pulseeffects/blob/master/src/pipe_manager.cpp and https://github.com/wwmm/pulseeffects/blob/pulseaudio-legacy/src/pulse_manager.cpp

I thought that might be the case. I forfeit that alternative suggestion.

This all being said, I am still only offering my perspective, and I respect your choices for your own project at a rate of 100%.

@wwmm
Copy link
Owner

wwmm commented Jan 14, 2021

I don't see how that would help users find the latest version that supports PulseAudio

Usually the repository will have only one version. I believe that is already the case in most distributions. I know it isn't in Gentoo. But Gentoo users are supposed to know this kind of thing. But Arch Linux for example has only one PulseEffects version in the stable repository. So getting the latest available isn't that hard if you know the package name.

If package management is done right a user with Pulseaudio installed shouldn't even be allowed to install a PulseEffects package that works only with PipeWire. The same holds for the other way around. They should not allow the user to install a package that only works with Pulseaudio in a system that does not have Pulseaudio and PipeWire compatibility layer is not installed. Avoiding this is the package manager job. And they will have to do that for any other software using PipeWire native API.

I'm sure users would understand if there's a simple message indicating that development of "PulseEffects" has ceased in favor of "PipeWireEffects"

It could be done. I had understood exist as a separate package as maintaining both projects separately.

@DanMan
Copy link

DanMan commented Jan 14, 2021

Erm… Effectspipe? I'll see myself out.

Seriously though, I think a name change would make sense, especially from a package maintenance POV. No ambiguity which package to install, no need to look at the version. Just my 2 cents…

@Digitalone1
Copy link
Contributor

Digitalone1 commented Jan 14, 2021

A change could be done, but it's not really necessary. Talking about Arch, newer versions will continue to stay on upstream and PulseEffects Legacy could be provided on AUR.

The problem is that PulseEffects 4.8.4 isn't released yet on Arch and package maintainers haven't done nothing to prevent PulseEffects stable release to install with Pipewire, breaking all system audio. But this is not a PulseEffects fault.

The only thing that could be done is a big statement on github readme saying newer versions are for Pipewire and if you want to stay on Pulse, pick the 4.8.4.

I made a custom package on 4.8.4 and will remain on it until it works and will make the switch when Pipewire will be really mature to be used daily.

@AlexFolland
Copy link
Contributor Author

It could be done. I had understood exist as a separate package as maintaining both projects separately.

In this hypothetical situation, I am imagining it would only mean that temporarily, until the message that development of "PulseEffects" has ceased in favor of "PipeWireEffects" was implemented. Then the separate "PulseEffects" package and source would be readily available for someone else who's interested and dedicated to easily take over.

@wwmm
Copy link
Owner

wwmm commented Jan 15, 2021

Does github has some kind of poll mechanism? If most people feel like changing names is better we can do it. It is not a big deal. But I think that finding a good name will be more challenging than the decision of changing it XD

@DanMan
Copy link

DanMan commented Jan 15, 2021

It seems like there's a poll bot on the marketplace:
https://github.com/marketplace/actions/github-polls-bot-action
https://github.com/evenchange4/gh-polls-bot

How about PipeFx?

@wwmm wwmm pinned this issue Jan 15, 2021
@AlexFolland
Copy link
Contributor Author

AlexFolland commented Jan 15, 2021

Here's an idea of how a poll can be done right here.

DanMan's post above is option 1: PipeFx. Use the "thumbs up" reaction on that post to vote for it.

My post here is option 2: PipeWireEffects. Use the "thumbs up" reaction to vote for it.

Further posts below can contain further options.

I like "PipeWireEffects" because it's crystal clear, discoverable, and matches the format established by PulseEffects.

@wwmm Feel free to decide an end date for this ad-hoc poll and/or an alternative polling method.

@mikhailnov
Copy link
Contributor

mikhailnov commented Jan 20, 2021

Hm, I am wondering what to do with packaging of PulseEffects? If update the package to 5.0, then most users won't be able to use it because they use Pulseaudio, if to not update, users of PipeWire won't be able to use it. I thought to make a separate package pulseeffects-pipewire which would conflict with pulseeffects-pulseaudio. PulseEffects is a well-known name...

@mikhailnov
Copy link
Contributor

This could potentially require more time than I currently have because people will think that both projects will be developed. I do not intend to touch on our Pulseaudio legacy branch unless it stops running for some reason.

Maybe make a separate branch as a branch with python-based version existed? And make new tags 4.x in case of small fixes like fixing buildability with new compilers etc.

@Digitalone1
Copy link
Contributor

This could potentially require more time than I currently have because people will think that both projects will be developed. I do not intend to touch on our Pulseaudio legacy branch unless it stops running for some reason.

Maybe make a separate branch as a branch with python-based version existed? And make new tags 4.x in case of small fixes like fixing buildability with new compilers etc.

That has been already done.

@wwmm
Copy link
Owner

wwmm commented Jan 20, 2021

I thought to make a separate package pulseeffects-pipewire which would conflict with pulseeffects-pulseaudio

I see no problems in doing that. I do not remember the details now but in the past I saw package names like *-pulse and *-alsa when the Linux world was moving from ALSA to Pulseaudio. People survived that. I have been thinking about the name situation and I don't think I am going to change it. Besides the fact I am not happy with any of the alternative names the word pulseeffects is present in so many places in our source code that changing only the name visible to the user feels weird.

@wwmm
Copy link
Owner

wwmm commented Jan 20, 2021

PulseEffects is a well-known name...

It is another reason why I am not into the idea of changing the name. It made sense in the early days to make it easier for people to know the project existed and what was its purpose. But now the situation is different. People are more likely to ask if PulseEffects works on PipeWire than "which effects tool is available for PipeWire?".

@AlexFolland
Copy link
Contributor Author

I think it's more likely for people to ask if there's a PipeWire equivalent. It wouldn't make sense for "PulseEffects" to work on PipeWire. From how it looks to an outsider, PulseEffects would be for PulseAudio and something else would be for PipeWire. It says "Pulse" in the name.

@wwmm
Copy link
Owner

wwmm commented Jan 20, 2021

That is debatable. Once PipeWire is polished to the point where any Pulseaudio application just works on it many users won't even notice Pulseaudio was replaced by it.

@wwmm
Copy link
Owner

wwmm commented Jan 20, 2021

And it seems that the next PipeWire release will already be able to run the older PulseEffects versions through its Pulseaudio compatibility layer.

@Digitalone1
Copy link
Contributor

And it seems that the next PipeWire release will already be able to run the older PulseEffects versions through its Pulseaudio compatibility compatibility layer.

Well, maybe it was worth to wait that version rather than changing to Pipewire. All that effort could be spent on something else, maybe completing the port to rust you began in the last summer or starting the port to gtk4.

@wwmm
Copy link
Owner

wwmm commented Jan 20, 2021

Well, maybe it was worth to wait that version rather than changing to Pipewire. All that effort could be spent on something else, maybe completing the port to rust you began in the last summer or starting the port to gtk4.

Not really. PulseEffects situation is not the same as let's say mpv or Firefox. These two don't care if other audio applications move from Pulseaudio API to PipeWire's. But a manager like PulseEffects does. The compatibility layer does not make any PipeWire node visible to the Pulseaudio API.

@wwmm
Copy link
Owner

wwmm commented Jan 20, 2021

The advantage of moving to PipeWire's API is that we can manage anything it exposes. If we stay on Pulseaudio API we will see only Pulseaudio applications. They are the majority now. But it won't be like this forever.

@wwmm
Copy link
Owner

wwmm commented Jan 20, 2021

maybe completing the port to rust you began in the last summer

I gave up on that. No idea if I will ever try again. The reason is that we depend too much on a few C libraries. So our fate would also depend too much on their wrappers quality. It did not take long for functions not available in the Rust wrappers to be needed in my attempt to do the port.

@wwmm
Copy link
Owner

wwmm commented Jan 20, 2021

or starting the port to gtk4

That will be a tough one. And I can't even start it right now. Once the move to PipeWire was finished I started thinking about this. The first blocker is no gtkmm4 in Arch Linux repositories. And the second is no Glade for GTK4 for now. GTK developers don't even recommend we use Glade anymore... So porting to GTK4 will probably mean rewriting the whole interface without Glade. This will be painful... So I have to think a lot about this move....

@Digitalone1
Copy link
Contributor

Digitalone1 commented Jan 20, 2021

The advantage of moving to PipeWire's API is that we can manage anything it exposes. If we stay on Pulseaudio API we will see only Pulseaudio applications. They are the majority now. But it won't be like this forever.

But will be like this in the following 2-3 years. I wonder why I should write a new audio stack for my app if the existing pulse one it's working with Pipewire compatibility layer.

Pulseaudio is very stable while Pipewire is not mature yet with some big issues: latency problems stated also here and switch on connect not working, I tried to play mpv on hdmi audio output and there was no easy way to do it during reproduction (on Pulse I don't have to do nothing, just connect the cable and the switch is automatic).

I think a few applications will start to support it directly only in the next 2-3 years while others will remain on Pulse.

@wwmm
Copy link
Owner

wwmm commented Jan 20, 2021

I think a few applications will start to support it directly only in the next 2-3 years while others will remain on Pulse.

Probably. And it is totally fine to do that. And these people will still have PulseEffects. The legacy branch is not going to disappear. Even the Python branch is still there for anyone that needs it for whatever reason. People willing to use PipeWire's native API that were in the cold.

@wwmm
Copy link
Owner

wwmm commented Jan 20, 2021

I wonder why I should write a new audio stack for my app if the existing pulse one it's working with Pipewire compatibility layer.

It is not the same situation but something like that happened in Pulseaudio's early days. The compatibility for ALSA applications was there. Still people moved to Pulseaudio. It will depend on how well the compatibility layer works and on how much effort will be put in making PipeWire the default. In the past Pulseaudio was forced as default too soon... And the ALSA compatibility layer probably had its limitations. At that time I refused to have Pulseaudio on my machines so I do not remember.

@AlexFolland
Copy link
Contributor Author

I think a few applications will start to support it directly only in the next 2-3 years while others will remain on Pulse.

Probably. And it is totally fine to do that. And these people will still have PulseEffects. The legacy branch is not going to disappear.

Here's a user's perspective:

Last week, I updated "PulseEffects", which contains the string "Pulse", and suddenly it did not support the audio system that's identified by the string "Pulse", named with the full string "PulseAudio". Instead, it supported a different audio system which I did not have installed. This caused PulseEffects to stop working on my computer. This is a real event that happened to a real user of the software. For context, though, I was specifically using the package pulseeffects-git, which I realize is the latest development version and not recommended for stability.

I feel lucky that I had recently visited the github issues section here and discovered that a branch to support "PipeWire", a new audio system I had never heard of, was in the works, and lucky that I could imagine that this branch had been merged into the master branch, so I could figure out what went wrong.

I didn't know where to go other than to install the pulseeffects package instead of pulseeffects-git, which made me uncertain when my system's audio would break again. This caused me to write this suggestion ticket.

If I hadn't visited the github issues section here to report the issue with the missing bars, I'm sure I would have had a more difficult time figuring out what was wrong with PulseEffects.

I'm almost certain I would never have thought of searching for and installing a package named pulseeffects-legacy. "Legacy" means to me that it is meant to run on very old and obsolete hardware, like from 2004 or earlier, and my computer is relatively new; from 2016.

Not only that, but searching my package manager for pulseeffects currently does not return a result with a package named pulseeffects-legacy or any other package that clearly has and will keep the last version of PulseEffects that works with PulseAudio. My best guess is that the next time the package named pulseeffects is updated, it will not support PulseAudio and not be clear to end users why, which will unexpectedly break many systems.

This is why I've come to believe it is important to have a separate package with a separate name like "PipeWireEffects" for the audio system identified by the string "PipeWire", and reserve "PulseEffects" for the audio system identified by the string "PulseAudio".

Again, this is only a suggestion and a user's perspective. I'm still behind your decisions for your own software 100%. Thank you for writing and maintaining this awesome software.

@Digitalone1
Copy link
Contributor

@AlexFolland This is an Arch Linux issue. I love Arch, but some decision are very disappointing. I don't know if they chose to switch to Pipewire or Pipewire forced to conflict with Pulseaudio, but they didn't do nothing to stop Pipewire upgraded when PulseEffects is installed. That's why the issue came up.

Then, PulseEffects 4.8.4 came up a month ago and the maintainer didn't upgrade even if the previous version had some issues with locale fixed in the newer release. I think that if you don't want or don't have the time to maintain a package, should leave the work to other active users.

And maybe the whole distribution should have a little care about stability. I know Arch is not Debian, but I need a working system now, not in the next years when Pipewire will be completely stable.

If you want a stable PulseEffects version for plain Pulseaudio, install the PKGBUILD on my github repository.

@wwmm
Copy link
Owner

wwmm commented Jan 20, 2021

@AlexFolland I agree that what you describe is not nice to the end user. But I disagree that the proper solution is changing the upstream name. Almost everything you said can be fixed with proper distributions package management. When the Linux community moved from ALSA to Pulseaudio applications did not have to change name because the people maintaining the packages set the dependencies and the package names right. When Firefox decided to support only Pulseaudio I did not have any of these problems. "firefox-pulse" was only installed if Pulseaudio was there for it. Even the case about being easier to find out new applications searching for pulse or pipe can be fixed with the proper description in the package. I understand that the end user does not have to think about this. But package maintainers have to.

@jack-faller
Copy link

jack-faller commented Jan 30, 2021

@AlexFolland I don't think you understand the nature of this problem. Pipewire in it's current state does not work on may systems, therefore i would like to use PULSEeffects with PULSEaudio. This package does not exist. The packagers for my system have not created a version of this package because no-one in their right mind would think the PulseEffects would stop supporting pulse. The reason I would like to use use pulse is that since upgrading yesterday my system's audio:

  • gained more snap crackle and pop than Rice Krispies
  • crashes on a ~45min interval requiring me to restart pulseefects
    • when starting PulseEfects will only launch from a terminal emulator and not from an app-menu
  • gets more out of sync the longer i leave it running further decreasing the interval of required restarts

When the Linux community moved from ALSA to Pulseaudio applications did not have to change name

Yes but PulseAudio was not just called ALSA, was it? The original firefox was not ALSAfirefox. That is why they did not have to change name.
I don't know how anyone in their right mind can justify PulseEffects not being compatible with pulse. Imagine you're using PipeWire: you see PulseEffects, oh that might not work for me it's for pulse. Imagine you're using pulse and PipeWire does not work on your system: PulseEffects looks cool, oh wait what it doesn't support pulse? Literally no-one benefits from a confusing package name. You could change it to AudioEffects and then at least it would not be actively lying to people about what it does because PulseEffects means effects for pulse and that is a lie.

"firefox-pulse" was only installed if Pulseaudio was there for it

So they did have to change name then?

When Firefox decided to support only Pulseaudio I did not have any of these problems

WORKS ON MY MACHINE™. It only worked because firefox was, and I can not stress this enough, not called ALSAfirefox to begin with.

@wwmm
Copy link
Owner

wwmm commented Jan 30, 2021

...and I am tempted to do this...

But I am also hesitant because not using GStreamer has disadvantages too. Consider the whole process done in porting the application to PipeWire. The effects pipeline had almost no change. We just used it because it was implemented in GStreamer and not in an API that was Pulseaudio only(there isn't one, this is just an example). The same is true the other way around. If I add a new plugin to the PipeWire branch we can just backport it to the legacy branch with minimal or no work. So even if I had the time to rewrite the processing chain without GStreamer I do not think it would be good to follow this path while the Pulseaudio branch is maintained.

@wwmm wwmm unpinned this issue Jan 31, 2021
@AlexFolland
Copy link
Contributor Author

@wwmm You do not deserve abuse. I'm sorry someone came by here and sent it to you. Thanks for your project. By sharing my perspective, I never meant for abuse to come your way from somebody else.

@wwmm
Copy link
Owner

wwmm commented Feb 2, 2021

I know that was not your intention @AlexFolland :-)

@luni3359
Copy link

As a common user I agree with @AlexFolland in dropping "Pulse" from the name and putting "Pipe" somewhere. It has nothing to do with Pulse anymore and it is thus misleading for people that aren't closely following the development of the project. I'm putting this here to show my point of view as well, I wish you guys good luck with the development.

@wwmm
Copy link
Owner

wwmm commented Mar 13, 2021

If a name change ever happens in the future you can be sure I am not going to add "pipe" to it... The most that can happen is a server neutral name...

@AlexFolland
Copy link
Contributor Author

AlexFolland commented Mar 13, 2021

Here are some (potentially) server-neutral names.

  • AudioEffects
  • CoolEffects
  • Effects
  • EffectsPipe (PipeWire doesn't own the word "pipe"!)
  • Effection
  • NiceEffects
  • DecentEffects
  • BadEffects (joke names can be fun too)
  • CrappyEffects (joke names can be fun too)
  • EffectsMixer
  • MultiEffects
  • ManyEffects
  • SomeEffects
  • EffectsHeaven
  • EffectsUtopia
  • CentralEffects
  • EffectsMediator
  • EffectsHandler
  • AudioInterceptor
  • AudioMangler
  • AudioInterloper
  • AudioAffector
  • AudioAffection
  • AudioChanger
  • AudioImprover
  • ImprovedEffects
  • EffectsBasket
  • EffectsHut
  • EffectsShack
  • EffectsAdobe
  • EffectsCastle
  • EffectsTower
  • EffectsStack
  • EffectsBarrel
  • EffectsPile
  • EffectsHoard
  • LazyEffects
  • QuickEffects
  • EasyEffects (maybe my favorite)

@wwmm
Copy link
Owner

wwmm commented Mar 13, 2021

PipeWire doesn't own the word "pipe"!

Hahaha XD That is not my problem with it. For some reason I think it is ridiculous to have it in the name XD. To tell the truth I also do not like the name PipeWire.

EasyEffects (maybe my favorite)

Interesting... This one reflects the project's vision. An easy way to add global audio effects. Technically there is nothing we do that can not be done directly in Jack. It is what I used to do many years ago... But is not as practical...

@wwmm wwmm reopened this Mar 13, 2021
@wwmm
Copy link
Owner

wwmm commented Mar 13, 2021

This one reflects the project's vision

Although the Pulse was obviously a reference to Pulseaudio it is not like there was any other viable sound server at the time. So I did not consider a server change in the future... One of the problems in renaming with something based on Pipe is that if in the future PipeWire is replaced we will go through all of this again...

@wwmm
Copy link
Owner

wwmm commented Mar 13, 2021

But from my point of view it is not just about changing the name visible to the user. We have to be consistent. The string pulseeffects is used in tons of places. From the executable name to the path in all of our keys in the GSettings database. The translation and debug domains also have pulseeffects hardcoded. And there is also what is going to be done with the repository url. Changing the name and keeping using pulseeffects in the repository name and url sounds weird to me...

@wwmm wwmm pinned this issue Mar 13, 2021
@AlexFolland
Copy link
Contributor Author

I see what you mean. I do like "EasyEffects" and love your project vision, but a transition to any name may not be easy.

@wwmm
Copy link
Owner

wwmm commented Mar 13, 2021

That is it. Just changing the name in our executable and in our window title is not enough. In order to have consistency many files will have to be updated. Imagine asking the user to get logs running the command G_MESSAGES_DEBUG=pulseeffects easyeffects. It will work. That is not the problem. But the lack of consistency is visible from miles away.

Our configuration is set in schemas named similar to com.github.wwmm.pulseeffects.autogain.gschema.xml. And in these xml files we have an id defined like <schema id="com.github.wwmm.pulseeffects.autogain">. Besides the not so fun amount of manual work involved in renaming everything any other place using these settings will also need to be updated. Our presets manager class is one example. Nothing that can not be done. But is it fun? Not at all.

Part of this process can be done in bulk with something capable of editing multiple files. But I am not sure what would be done about the repository name and url. If we rename them to for example easyeffects we suddenly will have many users that won't know how to find our project. But if we keep it named pulseeffects it may be harder for people to realize that this is the easyeffects location... Maybe the proper move to a new name would require a new repository creation and deactivation of this one.

@Overc1ocker
Copy link

Overc1ocker commented Mar 19, 2021

I almost feel that this will become irrelevant, especially as packagers are now spreading the word about the pipewire change... I learned about the pipewire change by running the app in terminal then searching the arch wiki after it quit working. I then downgraded the app as I need audio to be rock solid stable on my main machine and am not ready to ditch pulse yet. Hopefully in the near future though I can give pipewire a test!

By the way, I found this app after looking for a alternative to the Maxxaudio app they pre-install on some dell machines (in windows). Needless to say, this is way better and I wish there was a port for macOS and windows now.

Whatever you do with the name, thank you so much for this app! I use it every day and it makes things sound awesome.

@wwmm
Copy link
Owner

wwmm commented Mar 19, 2021

Thanks @Overc1ocker! :-)

When I finish the port to GTK4 I will make a decision about this. As you can see in #904 the next major release will have very big changes that will make it a more suitable candidate for an eventual rebranding:

  • Besides the upgrade to GTK4 I am also moving from GStreamer to native PipeWire filters. This is a concept that does not exist in Pulseaudio. So once we do there is no going back to Pulseaudio without bringing back the whole effects pipeline back to GStreamer. At this moment the only difference between the Pipewire's and Pulseaudio's releases is the class talking to the sound server.
  • The user will be able to select among the plugins we support the ones that he/she wants in the pipeline instead of just bypass them. This change together with the fact that GTKMM is now automatically handling localization will force the users to do minor updates in their presets files. If we rebrand EasyEffects and PulseEffects will have their settings saved in different places and the users won't take any risk of losing settings forever.
  • I decided to use c++20 features. Yes... I know it may be a little too soon for most distributions. But it is making my life easier :-).

But as I said before I think a rebranding will have to come together with a new repository creation. But I would like to have the current branches as well as the issues in this new repository. Is this possible?

@wwmm
Copy link
Owner

wwmm commented Mar 21, 2021

It seems that github is smarter than I thought and I can just rename the repository

https://github.blog/2013-05-16-repository-redirects-are-here/
https://docs.github.com/en/enterprise-server@2.21/github/administering-a-repository/renaming-a-repository

@wwmm
Copy link
Owner

wwmm commented May 8, 2021

Application rebranding done in the gtk4 branch. I will wait for the gtk4 port to be ready before trying to change the repository name.

Anyone curious about the amount of work required for "this simple change" XD can take a look at this commit 15662b6.

@wwmm
Copy link
Owner

wwmm commented Jul 7, 2021

After many months of work EasyEffects has been finally released and the repository renamed. This issue can be closed :-)

@wwmm wwmm closed this as completed Jul 7, 2021
@wwmm wwmm unpinned this issue Jul 7, 2021
@Akryum
Copy link

Akryum commented Aug 13, 2021

How do we install it? It's not available on Flathub

@wwmm
Copy link
Owner

wwmm commented Aug 14, 2021

@vchernin could you guide @Akryum on how to install the flatpak package being developed for EasyEffects?

@vchernin
Copy link
Contributor

vchernin commented Aug 14, 2021

@Akryum Please install the latest test build at the bottom of this page. Ensure you have PipeWire 0.3.31 or later on your host system (check with pipewire --version), and also run flatpak install org.freedesktop.LinuxAudio.Plugins.LSP and flatpak install org.freedesktop.LinuxAudio.Plugins.ZamPlugins (won't be necessary once released onto Flathub stable).

EasyEffects is not formally released onto Flathub yet, but when it is you can remove the test build and install the Flathub stable one. Personally, before putting it on Flathub stable I mostly would like #1089 to be resolved somehow (eg. finding a way to give helpful errors if EasyEffects Flatpak is installed on systems with old or no PipeWire).

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

No branches or pull requests

10 participants