Git Product home page Git Product logo

Comments (9)

ShanonPearce avatar ShanonPearce commented on July 19, 2024 1

I have added steps into the wiki for pipewire / easy effects configuration. Hopefully the steps can be replicated without issues on other user's machines.

from ash-listening-set.

fiftydinar avatar fiftydinar commented on July 19, 2024 1

I have added steps into the wiki for pipewire / easy effects configuration. Hopefully the steps can be replicated without issues on other user's machines.

Thanks!
I read everything & I find it very good.

The only addition needed, is the last step of saving the preset again, when excluding "effect_output.virtual-surround-7.1-hesuvi". That's because disabling & excluding apps from the audio stream is tied to the preset.

I asked myself before "Why is app excluding not saving" & I found the github issue where developer indicated that you should save the preset after doing that. UI department there needs improvement for sure.

from ash-listening-set.

ShanonPearce avatar ShanonPearce commented on July 19, 2024

Thanks for bringing PipeWire and EasyEffects to my attention, I was unsure about Linux implementation. I will update the wiki after doing some testing in Linux.

from ash-listening-set.

fiftydinar avatar fiftydinar commented on July 19, 2024

The current issue is that EasyEffects natively only supports stereo configurations:
wwmm/easyeffects#1126
wwmm/easyeffects#1312

So I think that only stereo speaker room simulation is possible currently.

There is some workaround for upmixing to multichannel If I see correctly:
wwmm/easyeffects#1126 (comment)

But I don't have the configuration to test it.

JamesDSP for Linux has the same issue too:
Audio4Linux/JDSP4Linux#73

from ash-listening-set.

fiftydinar avatar fiftydinar commented on July 19, 2024

I got this working!

Here are the steps to use ASH-Listening-Set on Linux:

  1. Download & extract HeSuVi pack of ASH-Listening-Set
  2. Install EasyEffects (Avaliable for most distros. Recommendation is to install flatpak version of it from FlatHub for better compatibility)
  3. Open EasyEffects, open hamburger menu & in "Preferences"
    toggle on "Launch Service at System Startup"
    toggle off "Shutdown on Window Closing"
  4. In "Output - Effects" tab, on left pane, click "Add Effect" than "Equalizer".
  5. In "Import Preset", click "GraphicEQ". Apply HpCF for your headphone from "eq/_ASH_HpCFs" folder
    5a. If you are going to use other EQ & don't like the default Diffuse Field target HpCF, than apply "Room_Target_Inverse.txt" from "eq/_ASH_Additional_Filters" folder & than apply your own EQ (either through Convolver, APO or GraphicEQ, depending on what you have)
  6. Save the preset & name it however you like.
  7. Click "Pipewire" tab, on left pane, click "Presets Autoloading" & here add the autoload preset matching your headphone.
  8. For Room Simulation wav file, follow this video, with correction that you should use ASH-Listening-Set wav from "hrir" folder:
    https://www.youtube.com/watch?v=Dc4lSt_-_uw
  9. Once you reboot after all those changes, go to EasyEffects, "Output-Players", than exclude "effect_output.virtual-surround-7.1-hesuvi"
  10. Save preset once again.

Enjoy working virtual surround.

So it goes like this:
Stereo - EasyEffects - Surround 7.1 upmix

The only caveat can be increased CPU usage, but I don't have a low-end hardware to test for serious issues.
Another caveat is that HRIR preset changing is not possible to do quickly & you have to reboot for changes iirc.

from ash-listening-set.

ShanonPearce avatar ShanonPearce commented on July 19, 2024

Thanks for providing the above steps. I tried out EasyEffects on my linux installation and reached step 5, however I'm a bit unsure of the compatibility with the HpCFs. I imported one of the HpCF graphic EQ filters but it doesn't look like all of the frequency bands are loaded in. It seems like it is limited to 32 bands. I also tried using convolution with a HPCF wav file but it only accepts stereo IRs. If this is the case I might need to provide the HpCFs in an alternative format but Ill also do some more testing to confirm.

from ash-listening-set.

fiftydinar avatar fiftydinar commented on July 19, 2024

Thanks for providing the above steps. I tried out EasyEffects on my linux installation and reached step 5, however I'm a bit unsure of the compatibility with the HpCFs. I imported one of the HpCF graphic EQ filters but it doesn't look like all of the frequency bands are loaded in. It seems like it is limited to 32 bands. I also tried using convolution with a HPCF wav file but it only accepts stereo IRs. If this is the case I might need to provide the HpCFs in an alternative format but Ill also do some more testing to confirm.

Oh, I didn't know that Graphic EQ had more than 32 bands.
In that case, you can just load another "Equalizer" effect with "Graphic EQ" option & you gain +32 more bands.

Everything else you said is correct.

from ash-listening-set.

ShanonPearce avatar ShanonPearce commented on July 19, 2024

I did manage to get the headphone correction step working by converting the mono IRs to stereo and loading them into convolvers within easyeffects. I will have to add stereo versions of the HpCFs to make that step easier for anyone using easyeffects.

I also got the virtual surround working as per the steps provided. There was some popping but that was likely due to me running linux on a virtual machine with limited resources, so CPU usage is probably not a big issue in reality. I think one thing that would be nice is a more convenient way to change between HRIRs/BRIRs so Ill do a bit of digging there.

from ash-listening-set.

fiftydinar avatar fiftydinar commented on July 19, 2024

Closing this issue, as ASH Listening Set gained Linux support.

from ash-listening-set.

Related Issues (9)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.