Commit Graph

14 Commits

Author SHA1 Message Date
xtrullor73
441d89cca4 test(utils): add tests for utility functions in utils folder 2024-07-04 11:57:43 -07:00
xtrullor73
7148ab0208 test: add test cases for metadata adapters 2024-07-03 11:43:19 -07:00
xtrullor73
f19aaac8d5 test(setup): add Mocha, Chai, and Sinon for testing setup 2024-07-01 20:45:11 -07:00
xtrullor73
448e96e1fd chore(deps): remove redundant qs library in favor of built-in
querystring"
2024-06-23 16:39:19 -07:00
xtrullor73
56dbb5df31 chore: prepare for npm publishing 2024-05-27 17:01:57 -07:00
xtrullor73
f63bab30f0 refactor(validation): abstract MIME type validation in validateAudioFile; check supported extensions in fileService; enhance docs and error logging 2024-05-27 15:53:47 -07:00
xtrullor73
68ae0c105b chore: add ffmetadata package which also requires FFmpeg to be installed in PATH for Windows 2024-05-25 00:28:21 -07:00
xtrullor73
d7d99d701e chore: remove unused libraries from package.json 2024-05-13 22:14:47 -07:00
xtrullor73
d8683cb8ad feat: Refactor project structure for modularity and expandability
- Implemented the service and adapter layers instead of controllers to simplify the integration of new audio recognition and metadata fetching APIs.
- Unified code styling and practices throughout the project to ensure consistency.
2024-05-13 22:11:08 -07:00
xtrullor73
538ffdbe36 feat: integrate AcoustID for song recognition using audio fingerprinting
- Transitioned audio recognition in audioRecognition service from Audd API to AcoustID, leveraging audio fingerprinting instead of direct audio file analysis.

- Created acoustidApiErrorHandler for modular error handling within the audioRecognition service.

- Developed a retry mechanism for axios requests in the retryAxios service to enhance robustness.

- Added dependencies on fpcalc and chromaprint to generate audio fingerprints, now required to be installed and set in the system PATH for Windows environments.
2024-05-11 19:45:26 -07:00
xtrullor73
a97736abee refactor: remove AuDD references and unused project files
Removed all files, dependencies, and mentions related to the AuDD API. Cleaned up the src directory, removing all non-developed or unused items, as part of a major cleanup. This change is due to the strategic shift towards using audio fingerprinting for song recognition, as opposed to sending the raw audio file itself.
2024-05-09 23:40:46 -07:00
xtrullor73
8bb93cafd6 feat: improve error handling and add streamline audio processing
- Refactor error handling by consolidating all errors in a newly created 'errors' directory.
- Introduce truncateAudioStream functionality to limit audio file processing to 25 seconds, optimizing performance and API usage.

The newly added 'errors' directory contains the apiError handler which provides a centralized error handling mechanism to easily manage error consistency and possible expansion in the future.
2024-05-07 20:00:36 -07:00
xtrullor73
c27113dac2 feat(env): switch to native --env-file flag support
Remove dotenv package and update the application to use Node.jss built-in --env-file flag for loading environment variables. This change is made to simplify the configuration by utilizing native capabilities introduced in Node.js v16.x.x.
2024-04-21 23:55:15 -07:00
xtrullor73
10722dfd8b chore: configure npm packages and ESLint 2024-04-19 10:25:28 -07:00