Using Linux Liquidsoap and HLS for streaming media, you may run into an issue if your file or folder names have certain characters that are illegal in a url path.
While working on our HLS and Liquidsoap server, I encountered issues with our naming system and Liquidsoap.
The issue was that Liquidsoap could not play songs with periods or parentheses in the name.
Example of what can't be.
The top one has parentheses, and the bottom one has periods. Both will be skipped.
An error you may encounter will resemble this.

Error
FAILED
2024/04/07 22:24:48 =[procol.external:3] Failed to find a file extension for
"https://demo.example.com/host/Files/Evanescence/2004-Anywhere But Home (LIVE)/01222024174431188.mp3".
Response has unknown mime-type: "text/html", you may want to add it to
settings.http.mime.extnames
Copy
Search Site
Search Google
and report to us if it is a common one.
2024/04/07 22:24:49 [procol.external:3] Error while fetching http data: 404 -
2024/04/07 22:24:49 [request.dynamic:3] Fetch failed: empty.
Important
Informative Best naming practice for streaming media files.
Give the folder and file name a number. Examples below.
Update: June 04, 2025 @ 10:02 AM
I changed the naming method for my folders from the names above to their ID numbers.
So instead of
W.A.S.P. <= Main Folder (Artist Folder)
1984-W.A.S.P. <=Sub-Folder (Album Folder)
It is now
2 <= Main Folder (Artist Folder)
1 <=Sub-Folder (Album Folder)
2\1\01222024174431188.mp3
Copy
Search Site
Search Google
This ensures that Liquidsoap can locate and play the file without any issues.
Make things simple, not hard. It took me a little while to finally catch on to something I have told others to do for years. [Make it simple, not hard].