Create m3u files from multiple folders

Hello everyone.

I am very surprised of the great quality of the Mp3tag program.

I have been looking for a program that allows me to create M3U files of folders with a complete Albun. I would like to be able to create M3U files automatically for each folder in my music library.

I do not want to generate the M3U as an albun that has checked the Mp3tag program, I want the Mp3tag to scan the folders in my library and make an M3U file of the MP3s in that folder and continue to the next one.

Is this possible? Thank you!

This proposal should work ...
Playlisten mal so mal so? Export-Alternative: Helft ihr mir beim Code?

  1. Create a Mp3tag export script text file, name it as you wish, ... having the following text content ...
$filename(%_folderpath%$replace(%ALBUM%' - '%ARTIST%,';',' -',':',' -')'.m3u',ansi)$loop(%_filename_ext%)%_filename_ext% $loopend()
  1. Load all folders and files into the Mp3tag list view ... and select all the files, which should be treated.
    (Note: while testing the script do it for one folder only.)

  2. Execute the menu function "Export" [Ctrl+E] and apply the export script from step 1.
    (Note: Activate the option " one file per directory")

  3. Look into the target folder and check for the existance of the newly created m3u file.

If all looks ok, then do it for all selected files at once.


Thank you DetlevD, this m3u-script is spot-on.

First of all thank you so much for helping the community! I have a slight problem here with the created .m3u playlists that I found a solution for but don't have the knowledge to apply it on the script text file.
Here's the issue, the script adds all selected songs in a single row and Foobar can't read the songs.
When I edit the m3u with Notepad and just place the songs one under the other it works!

Do you have a workaround for this?

Unfortunately, you do not show us the export script that produces this result.
But: I think it would be easiest, if you add an extra line in the export script right before the $loopend() statement.

1 Like

Here it is

Adding a simple extra line did indeed fix it! Thanks a ton mate!!!