Closed benzekat75 closed 1 month ago
Same problem here.
very true...
I realized I wasn't clear last time :)
I wanted to use something like that: folder_format = "{albumartist}\{title} ({year}) [{container}]"
I realized I wasn't clear last time :)
I wanted to use something like that: folder_format = "{albumartist}{title} ({year}) [{container}]"
think you were very clear ^^...previous version that wasnt any issue automatically created subfolders disc 1 disc 2 for double cd etc..
This makes downloading multi disc albums impossible, is there any fix?
I created a small Python script to sort the discs automatically (as a workaround) for now.
import os
import shutil
from mutagen.flac import FLAC
# Function to move files to subfolders based on disc number
def sort_discs(album_directory):
# Iterate over all files in the album directory
for filename in os.listdir(album_directory):
# Check if the file is a FLAC file
if filename.endswith('.flac'):
file_path = os.path.join(album_directory, filename)
# Read the metadata from the FLAC file
audio = FLAC(file_path)
# Extract the disc number, use 'discnumber' instead of 'part'
if 'discnumber' in audio:
disc_number = audio['discnumber'][0]
disc_folder_name = f"Disc {disc_number}"
disc_folder_path = os.path.join(album_directory, disc_folder_name)
# Create a subfolder for the disc if it doesn't exist
if not os.path.exists(disc_folder_path):
os.makedirs(disc_folder_path)
# Move the FLAC file into the corresponding subfolder
shutil.move(file_path, os.path.join(disc_folder_path, filename))
print(f"Moved {filename} to {disc_folder_path}")
else:
print(f"No discnumber tag found for {filename}")
# Replace this with the path to your main album folder
album_directory = 'albumname'
sort_discs(album_directory)
I created a small Python script to sort the discs automatically (as a workaround) for now.
That's brilliant, @naiches! I expanded it to allow it to recurse through your library (or, in my case the temporary folder where I rip to, before I move to my library)
Two key changes: Moved the creation of the full path ahead of the test for a flac file (so I could use it later), and added the test for a folder, and if found, recurs into sort_discs again.
import os
import shutil
from mutagen.flac import FLAC
# Function to move files to subfolders based on disc number
def sort_discs(music_directory):
# Iterate over all files in the album directory
for filename in os.listdir(music_directory):
print(filename)
file_path = os.path.join(music_directory, filename)
# Check if the file is a FLAC file
if filename.endswith('.flac'):
# Read the metadata from the FLAC file
audio = FLAC(file_path)
# Extract the disc number, use 'discnumber' instead of 'part'
if 'discnumber' in audio:
disc_number = audio['discnumber'][0]
disc_folder_name = f"Disc {disc_number}"
disc_folder_path = os.path.join(album_directory, disc_folder_name)
# Create a subfolder for the disc if it doesn't exist
if not os.path.exists(disc_folder_path):
os.makedirs(disc_folder_path)
# Move the FLAC file into the corresponding subfolder
shutil.move(file_path, os.path.join(disc_folder_path, filename))
print(f"Moved {filename} to {disc_folder_path}")
else:
print(f"No discnumber tag found for {filename}")
elif os.path.isdir(file_path):
sort_discs(file_path)
# Replace this with the path to your main music folder
music_directory = '/mnt/f/TEMP/Music'
sort_discs(music_directory)
Having disks separated in the latest version.
I'd suggest using that and with a clean config file, which should be posted fully in the question btw.
Should be the option disc_subdirectories
that maybe didn't exist previously.
btw, I think these questions are ignored because they are not formatted as asked, with full log, full config file, and literal command...
This is closed by #679. Live on dev branch. Will be in next release.
Describe the bug
in previous versions there was a sub folder created per disc now it seems all tracks are located in the same folder
Command Used
Debug Traceback
Config File
Operating System
Windows
streamrip version
2.0.3
Screenshots and recordings
No response
Additional context
No response