SACD2flac Ripper tool

QuadraphonicQuad

Help Support QuadraphonicQuad:

This site may earn a commission from merchant affiliate links, including eBay, Amazon, and others.
Ok - I have no idea what will happen when others start to try to use this. But if anyone wants a tool to automate the ripping of SACD to flac, give this a try.

prerequisites:
python
sacd_extract.exe
sox
ffmpeg

Extract all the contents of the zip file into a folder of your choosing.
Run the file sacd2flac_ripper_gui.py - if you have python installed, you should be able to run it by double clicking the sacd2flac_ripper_gui.py file. Or by opening a command prompt, browsing to the folder that contains the files, and typing "python sacd2flac_ripper_gui.py" and pressing enter.

Click on file - settings, and fill in the location of your sacd_extract.exe file, sox.exe file, ffmpeg.exe file, and ffprobe.exe file. Also fill in your output folder - this is where folders Multichannel_FLAC and Stereo_FLAC will be created, and have flacs saved out to. Some temp folders/files will also be created and deleted from this folder during the process. Click save.

1741838876370.png


Here's an image of the GUI
1741839016939.png


With Local ISO Extraction selected, you'll have the options to select a single ISO file, or select folder with ISO files. Using the Browse button, you can browse out to the ISO file, or folder of files, that you wish to convert to flac.

Or, if you have a blu-ray player that supports ripping SACDs, and have it booted to the mode for extraction over the network, you can select the Network Extraction option, which will give you a field to enter the ip address and port of the player.
1741839312749.png


Check the checkboxes for Process Stereo and/or Process Multichannel depending on what portion of the disc you want to convert. If you check the Multichannel box, and the disc doesn't have Multichannel material, this won't cause a crash or a problem, it'll simply skip and move on to the next thing - so if you have a folder of isos that aren't all multi, and you want to extract stereo and multi of all of them, this won't be a problem, simply check both and it'll extract all there is to extract.

The Force 5.1 Output checkbox will insert silent channels to any multichannel content that uses less channels, like 5.0 or 4.0.

The apply gain adjustment checkbox is checked by default, and is what enables the feature to scan for the peak level, and apply gain to bring the peak up to -1.0dB. With discussion here of people choosing not to apply gain and use replaygain, I figured some may prefer to continue not applying gain, but want to make use of a tool that simplifies the process of going from SACD to flac. Simply uncheck the box, and no gain will be applied, if that's your preference.

Once everything is setup and you have an iso or folder chosen, or a disc ready to go in a player with the correct ip filled in, press run process, and away it goes. You can follow along with the process in the command prompt window that is opened.

The flac files are saved in the format of Stereo_FLAC\artist - album\track - title and Multichannel_FLAC\artist - album\track - title.

Tagging relies on the metadata of the SACD, which is better than nothing, but not perfect. I find a lot of incorrect or not filled in genres, sometimes song titles include the track number, sometimes all caps are used, so if you're particular about things like that, you may want to clean that up a bit with something like mp3tag.

 
Last edited:
Ok - I have no idea what will happen when others start to try to use this. But if anyone wants a tool to automate the ripping of SACD to flac, give this a try.

prerequisites:
python
sacd_extract.exe
sox
ffmpeg

Extract all the contents of the zip file into a folder of your choosing.
Run the file sacd2flac_ripper_gui.py - if you have python installed, you should be able to run it by double clicking the sacd2flac_ripper_gui.py file. Or by opening a command prompt, browsing to the folder that contains the files, and typing "python sacd2flac_ripper_gui.py" and pressing enter.

Click on file - settings, and fill in the location of your sacd_extract.exe file, sox.exe file, ffmpeg.exe file, and ffprobe.exe file. Also fill in your output folder - this is where folders Multichannel_FLAC and Stereo_FLAC will be created, and have flacs saved out to. Some temp folders/files will also be created and deleted from this folder during the process. Click save.

View attachment 114806

Here's an image of the GUI
View attachment 114807

With Local ISO Extraction selected, you'll have the options to select a single ISO file, or select folder with ISO files. Using the Browse button, you can browse out to the ISO file, or folder of files, that you wish to convert to flac.

Or, if you have a blu-ray player that supports ripping SACDs, and have it booted to the mode for extraction over the network, you can select the Network Extraction option, which will give you a field to enter the ip address and port of the player.
View attachment 114809

Check the checkboxes for Process Stereo and/or Process Multichannel depending on what portion of the disc you want to convert. If you check the Multichannel box, and the disc doesn't have Multichannel material, this won't cause a crash or a problem, it'll simply skip and move on to the next thing - so if you have a folder of isos that aren't all multi, and you want to extract stereo and multi of all of them, this won't be a problem, simply check both and it'll extract all there is to extract.

The Force 5.1 Output checkbox will insert silent channels to any multichannel content that uses less channels, like 5.0 or 4.0.

The apply gain adjustment checkbox is checked by default, and is what enables the feature to scan for the peak level, and apply gain to bring the peak up to -1.0dB. With discussion here of people choosing not to apply gain and use replaygain, I figured some may prefer to continue not applying gain, but want to make use of a tool that simplifies the process of going from SACD to flac. Simply uncheck the box, and no gain will be applied, if that's your preference.

Once everything is setup and you have an iso or folder chosen, or a disc ready to go in a player with the correct ip filled in, press run process, and away it goes. You can follow along with the process in the command prompt window that is opened.

The flac files are saved in the format of Stereo_FLAC\artist - album\track - title and Multichannel_FLAC\artist - album\track - title.

Tagging relies on the metadata of the SACD, which is better than nothing, but not perfect. I find a lot of incorrect or not filled in genres, sometimes song titles include the track number, sometimes all caps are used, so if you're particular about things like that, you may want to clean that up a bit with something like mp3tag.



This looks like a much better version of something I wrote many years ago with the help of others on the [PS3]SACD forums. I haven't used it for a long time, so I'm not sure if it will work on current versions of Windows - but if you are interested in taking a look, attached is the last version dating from around 2016. I think it includes everything you need other than Saracon, which was used for the PCM conversion.
The workflow seems very similar to yours... First, it uses DR plug-in on foobar to find the peak track. Then it does a pcm conversion of just that track using saracon and calculates the gain required, before doing a conversion of the full disc, splitting up into individual tracks and tagging using data extracted from the disc image.
 

Attachments

  • SACD_Conversion_scripts (Version 0.6.1).zip
    6.5 MB
Last edited:
I've had to fix a bug that came up today, and have updated the link above, which I'll also post here for convenience.

Santana - Borboletta has no song names in the meta data for the multichannel portion, which caused the process to crash on flac creation because it wanted to tag the flac with a song name. This update has it fill in "Track xx" for the song name if none is present.

I suspect if other metadata fields are empty, it may cause a similar problem - but I try to keep my asks simple and specific when making changes - one time the AI went rogue and started trashing the code when my ask was too broad.

At this point I've ripped over 100 discs (most of that is the folder of ISOs I had that I let run overnight), this was the first encounter of a disc that had empty data that caused this problem. The song titles are in the metadata of the stereo portion - this must be an error in the disc creation, how odd.

 
Ran into a few problem discs yesterday that crashed the app and had to make a few more tweaks, here's the latest version.

 
No one has mentioned this yet, so I'll be the first.

DSD at 0db = PCM at -6db. This is how it has been designed from the start, because Sony/Phillips wanted mastering engineers to not worry about managing loudness and preventing clipping and just set it where it feels comfortable. It was always the intention to have any DSD that peaks at 0db to be equivalent to -6db in PCM so that anything that goes over doesn't actually...uh clip. Remember, early DSD/SACD editing was rudimentary. This is why some SACD players play PCM 6db quieter than DSD sources, so they roughly equal in volume for the same mastering.

Now the SACD spec says that DSD levels shouldn't exceed +3.1db, which is the equivalent of -2.9db PCM, but we all know there are plenty of SACDs (mainly made by Sony) that go over...like the 1999 Thriller SACD, which goes over +6db DSD (and hence clips upon conversion to PCM) in some parts!

Those Thriller overages are obvious glitches. Very short spikes nothing to do with the actual music.
 
Those Thriller overages are obvious glitches. Very short spikes nothing to do with the actual music.
Ah, I just brought up Thriller as the most famous example I can think of. I certainly have a bunch of discs from Sony that actually average above +3.1db DSD for musical content, so it's not like overages happen only due to glitches.
 
Back
Top