Commit graph

138 commits

Author SHA1 Message Date
binimum
f3b9cfd2f0 style: auto-fix linting issues 2026-04-05 17:22:39 +00:00
binimum
10b7afc36e
Merge branch 'main' of https://github.com/monochrome-music/monochrome 2026-04-05 17:21:55 +00:00
binimum
995906f572
refactor: optimize image loading and enhance performance
- Removed unnecessary preconnect link to jsDelivr in index.html.
- Added lazy loading to contribs in app.js for improved performance.
- Implemented dynamic loading of am-lyrics and shaka based on image loading status to reduce lcp
- Introduced waitForImagesLoading function in player.js to ensure all images are loaded before initializing the player
- Enhanced image loading attributes in ui.js to include fetchpriority based on loading strategy.
- Updated package.json to include vite-plugin-purgecss for CSS optimization
- Configured Vite to use purgecss and enabled tree-shaking in vite.config.ts to reduce bundle size
2026-04-05 17:21:10 +00:00
tryptz
d09e3aa72a feat: AutoEQ, speaker EQ enhancements, and audio performance fixes
- Add 16-band graphic equalizer with legacy EQ mode
- Add speaker measurement and room correction EQ
- Fix audio skipping with AutoEQ on Android background
- Improve audio performance to prevent skipping under CPU load
- Fix dual EQ applied when switching between legacy and parametric modes
- Remove redundant Equalizer settings tab
- Improve mobile EQ band layout and collapsible database section
2026-04-05 20:07:39 +03:00
binimum
17e3430691 style: auto-fix linting issues 2026-04-05 15:23:38 +00:00
binimum
3ed9d8b589
refactor: streamline image processing and cover URL handling 2026-04-05 15:22:50 +00:00
edideaur
c73572e195
lint: fix JS errors and duplicate CSS selectors 2026-04-04 21:41:37 +00:00
binimum
6651136e5b
fix: lock preload audio codec and disable PreloadManager ABR 2026-04-04 21:01:32 +00:00
binimum
54e337d8d7
fix: pass current abr estimatedBandwidth to preloadManager 2026-04-04 20:56:09 +00:00
binimum
6557e525b4
fix: remove undefined catch from preloadNextTracks() 2026-04-04 20:39:51 +00:00
binimum
8a377d5332
chore(player): log preload load errors 2026-04-04 20:36:41 +00:00
Daniel
648e47e1d8 fix(linting): fix js linting issues 2026-04-04 01:37:47 +03:00
edideaur
bdde8fdb6a
fix: l opens lyrics 2026-04-02 18:28:46 +00:00
tryptz
0652aa4866 style: auto-fix linting issues 2026-04-02 11:05:12 +03:00
tryptz
782e98061b fix: address all CodeRabbit review findings from PR #477
Engine & algorithm:
- Use default shelf Q (1/√2) in calculateBiquadResponse for shelf filters
- Compute normalization offset on measurement frequency grid to avoid bias
- Try stale cache for all fetch errors in autoeq-importer, not just timeouts

Audio pipeline:
- Pass postProcessingQuality (preserves Dolby Atmos override) in api.js
- Persist custom band frequencies in equalizerSettings storage
- Restore custom frequencies on _loadSettings instead of regenerating defaults
- Export clamped preamp value in applyAutoEQBands text output
- Propagate filter type and Q values through equalizer import chain
- Update freqRange after importing custom filter frequencies
- Remove return in finally block that hid LOSSLESS fallback failures

Data consistency:
- Normalize artist IDs with String() in blockArtist/unblockArtist

Lint & code quality:
- Annotate empty catch blocks (Atmos codec probes)
- Remove unused catch parameters

Accessibility:
- Add aria-label and for attributes to all AutoEQ form controls
- Add role="status" aria-live="polite" to feedback spans
- Update filter type documentation to reflect shelf support
- Hide parametric-only sections by default to match active tab

UI:
- Move AutoEq button directly under graph
- Hide shared button in Parametric/Speaker modes
- Replace hardcoded white legend dot with theme-adaptive color-mix
- Add pointer-events:none and focus-within to profile delete button
2026-04-02 11:05:12 +03:00
tryptz
d4d1fe8494 feat: AutoEQ and speaker EQ enhancements
Adds AutoEQ integration with interactive parametric EQ graph,
speaker/room correction with shelf filters, and improved EQ
persistence via IndexedDB.
2026-04-02 11:05:12 +03:00
edideaur
c8f64a52e8
tilting + background play fixes 2026-04-01 14:47:37 +00:00
edideaur
022c27056b
Merge pull request #417 from DanTheMan827/download-fixes
Download fixes
2026-03-29 13:59:45 +03:00
Samidy
8ed52d8843 Bye Bye Desktop App 2026-03-29 13:09:32 +03:00
Daniel
e21f0f5153 fix(player): fix video preload 2026-03-28 19:21:36 -05:00
Samidy
4e75a734a2 remove qobuz 2026-03-27 14:30:39 +03:00
binimum
d9878596e2 style: auto-fix linting issues 2026-03-22 20:13:27 +00:00
binimum
d783642401
feat: add Atmos support, use new API endpoint, streamline API caching 2026-03-22 20:08:30 +00:00
edidealt
c2f8d3fca1 feat: podcasts 2026-03-22 04:32:20 +00:00
edidealt
7e16dc23c2
Merge pull request #380 from DanTheMan827/singleton
Convert classes to singleton pattern
2026-03-22 03:36:13 +02:00
edidealt
6f8b479d0f infinite track playing for popular tracks 2026-03-21 23:25:16 +00:00
Daniel
e32fbc3813 refactor(UIRenderer): convert to singleton 2026-03-21 18:14:48 -05:00
Daniel
852baeaa17 refactor(player): convert to singleton 2026-03-21 17:21:09 -05:00
binimum
5bb8713bbf
refactor: update MediaPlayer import and add platform detection 2026-03-19 21:01:29 +00:00
Daniel
4e2a595504 refactor(hls/dash): externalize hls.js and dashjs to reduce initial bundle size 2026-03-19 15:34:51 -05:00
Daniel
e2a09b9b32 refactor: externalize svg images and add new vite plugin
The plugin runs all imported SVG files through svgo.

For index.html, you can use the following syntax:
```html
<use svg="file.svg" size="24" />
```

For scripts, use the `?svg` import query
```javascript
import SVG_FILE from './file.svg?svg&size=24
```

Note: size is shorthand for specifying both width and height individually.  You can also set any property of the base SVG element.

You can also use the `?svg&icon` query to return a function that allows dynamically resizing the SVG string.
2026-03-19 15:28:33 -05:00
Daniel
393491e2c8 refactor(platform-detection): add platform-detection.ts for browser and platform detection 2026-03-19 15:09:58 -05:00
SamidyFR
108387ac7a style: auto-fix linting issues 2026-03-11 07:12:10 +00:00
Samidy
ffdcc1d396 THERE YOU SHITHEAD 2026-03-11 10:11:38 +03:00
SamidyFR
a35b51f8cd style: auto-fix linting issues 2026-03-11 06:28:37 +00:00
Samidy
6fd334f74d PLEASE JUST FUCKING WORK WHAT 2026-03-11 09:28:03 +03:00
SamidyFR
3c51d45d74 style: auto-fix linting issues 2026-03-11 06:14:00 +00:00
Samidy
c4af3ea204 Merge branch 'main' of github.com:monochrome-music/monochrome 2026-03-11 09:13:33 +03:00
Samidy
17964a8bc9 fix media playback errors in firefox 2026-03-11 09:13:28 +03:00
SamidyFR
12baaaa55f style: auto-fix linting issues 2026-03-11 05:23:57 +00:00
Samidy
71a2c5be93 make le diddy infinite radio better kinda 2026-03-11 08:23:27 +03:00
edideaur
2e1367e5c2 video covers 2026-03-10 21:58:02 +00:00
SamidyFR
ce79d6d4c6 style: auto-fix linting issues 2026-03-10 02:43:19 +00:00
Samidy
49592e38a3 Merge branch 'main' of github.com:monochrome-music/monochrome 2026-03-10 05:42:50 +03:00
Samidy
f67123a9d1 fix(inf-radio): IM A DUMBASS 2026-03-10 05:37:51 +03:00
SamidyFR
4cb8b84f91 style: auto-fix linting issues 2026-03-10 01:58:49 +00:00
Samidy
473e5ba8b6 feat(recommendations): Infinite Radio 2026-03-10 04:58:17 +03:00
SamidyFR
c8b919a4c7 style: auto-fix linting issues 2026-03-09 00:04:26 +00:00
Samidy
75d16e6ce4 feat: music videos 2026-03-09 03:03:29 +03:00
Samidy
e3f781d588 feat(covers): animated covers 2026-03-08 05:27:20 +03:00