-
Notifications
You must be signed in to change notification settings - Fork 2.5k
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
FEAT: Server application #267
Conversation
- basic `server/setup.py`; - necessary `__init__.py`s for module structure; - config and initialisation of flask application; - `.../routes/pages.py` for app pages; - `.../routes/api.py` for REST methods; - rudimentary page templating in place; - front listing page driven by hard-coded fake mock in place; and - bare bones `README.md`.
- home page now lists real headphones with downloadable filter zips; - new API routes for manufacturers, phones and oratory filters (a bit hacky); - very hacky model module to handle parsing datatypes; - added route directory config variable - added root project dir var to constants; - cleaned up Flask app startup; and - added simple usage instructions to `server/README.md`
- added a top level menu since we now have 2 pages; - added an about page with some basic attribution; - tidied up the code that retrieves Oratory results; and - minor refactoring: - refactored server app's `route` constant values to its own file; and - removed hard-coded string repetition.
FEAT: About page
- added dictionary for lookup of headphone type details; - replaced download button with zip download icon; - added fontawesome webfont and css; and - site logo.
FEAT: Better icons
Very cool to see things happening around AutoEq! Unfortunately I'm not sure how well this fits into the vision I have for AutoEq. Eventually I certainly intend to have a webapp for AutoEq where users can tweak all of the parameters without installing AutoEq on their own machine. I'd probably add this zip functionality there as well. However a server which only serves outputs, and only one kind at that, is not quite what I had in mind. It might be better to split this into it's own project. |
Hi @jaakkopasanen I understand but perhaps I should have been clearer regarding my intentions. This is really my MVP start. The PR isn't complete and I'm aiming to develop a "design your own filter" page quite shortly. This is just a couple of evenings work as I get to grips with the ideas. I suggest we close the PR for now and I come back when I've moved it forward some. BTW I also have a Docker file for the CLI autoeq, which I'm using to generate my own "custom" filters, I prefer linear phase for example. Would a PR with that be of interest? |
- added various favicon types to dedicated static directory; and - added clunky methods to serve them to `server/autoeq_srv/routes/pages.py`.
FEAT: Favicons
- landing page now lists all recommended results; - added result pages for each source, e.g. Oratory, Crinacle, etc.; - result harvesting now done by parsing the result `README.md`s; - filters delivered by `source/target/model` identifier; - some presentational niceties; and - removed some of the unused junk.
FEAT: Recommended headphone list
My issue #290 is arguably similar in intentions of this PR. It's a simpler approach, and for a system-wide equalisation option, but I'd be interested in your thoughts |
It's been a long time but finally I finished not only server but also a full fledged web app for AutoEq. This of course means this PR can now be closed. |
That's exciting, I'll check it out :) Good work @jaakkopasanen |
This isn't really ready to go yet but I thought I'd try to work out if you're interested in something like this or not for now. I use your work a fair bit for personal listening through Roon. They have a large community who aren't all particularly tech-savvy who struggle to download and install the filters. I figured a web application might help them. This PR sets up a simple Flask web application driven by the available oratory1990 results. Currently, it just provides a searchable table where people can find their headphones and download a Roon friendly zipped package of the two available convolution filters. It's pretty basic with a few extra REST endpoints that have an eye on future direction.
If you're not keen to merge this, I totally understand. Just let me know and I'll tease it out into its own project. If you want to see it I have a test version up at https://phones.killdozer.uk/. There's no attribution for your great work there yet but that's next on my fix list today.