INTERACT FORUM

Please login or register.

Login with username, password and session length
Advanced search  
Pages: [1]   Go Down

Author Topic: API or command line support for conversion engine  (Read 1039 times)

KENZO

  • Recent member
  • *
  • Posts: 25
API or command line support for conversion engine
« on: March 07, 2021, 08:57:21 pm »

I read the wiki on commnd line and expressions and I cannot see that either can support automation/batch format conversions.

  I will soon have about 1000 DFS files of around 1 gig each in size, that I would want to convert to PCM, so batch processing or scripted automation would obviously be the way to go.

Can the conversion engine be executed using command line?   
 
Logged

JimH

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 72436
  • Where did I put my teeth?
Re: API or command line support for conversion engine
« Reply #1 on: March 08, 2021, 05:42:28 am »

You probably know that, in MC Standard View, you can select as many files as you want, then right click to get to conversion. 

I would try a small number first before doing all.
Logged

KENZO

  • Recent member
  • *
  • Posts: 25
Re: API or command line support for conversion engine
« Reply #2 on: March 08, 2021, 09:03:31 am »

Thanks for the reply Jim and yes I understand about multi-select.  I was hoping to fully script the processing, given it will be so many files (I am digitizing my LP collection) and I am somewhat disorganized sometimes. 

With a script I can write it once, run it anytime, and with a bit of logic it can be more foolproof and require less babysitting- creating folders, moving the files,renaming the files,  selecting and loading files not already converted, kicking off the conversion processing, you get the idea...

 I can still script all of the above except  selecting and loading the files into MC during a session and the kickiff of the conversion step, so not a huge issue.

But it would be nice to use a script to do all those steps so I don't screw it up over many repititions.  I can write all the logic in powershell or batch commands, but if there is no API for the conversion execution, nothing I can do about that.

 
Logged

tij

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 1563
Re: API or command line support for conversion engine
« Reply #3 on: March 08, 2021, 09:23:30 am »

Why not leave it as dfs ... conversion to pcm is a lossy process ... and MC can do conversion on fly if required
Logged
HTPC: Win11 Pro, MC: latest 31(64b), NV Driver: v425.31, CPU: i9-12900K, 32GB RAM, GeForce: 2080ti
Screen: LG 2016 E6
NAS: FreeNAS 11.1, SuperMicro SSG-5048R-E1CR36L, E5-1620v4, 64GB ECC RAM, 18xUltrastar He12-SAS3 drives, 2x240GB SSD (OS)

KENZO

  • Recent member
  • *
  • Posts: 25
Re: API or command line support for conversion engine
« Reply #4 on: March 08, 2021, 10:05:38 am »

Metada.  That's the problem.  I will not delete the DSD files, but all the tools I can find that have any capability to accomplish post processing with some amount of automation/logic - for example downloading and associating metadata - only work with PCM files.

For example:
Audacity
VinylStudio (has some minimal capability with DSD files)
all the click fixers...
SongKong
DBPowerAmp

To be clear I really, really, like MC, it is my first choice for player, librarian, converter. 
Logged

tij

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 1563
Re: API or command line support for conversion engine
« Reply #5 on: March 08, 2021, 10:11:46 am »

I thought dsf supported metadata ... dff and iso are the ones that do not support metadata

EDIT: plus it does not solve original problem ... you cannot tag your original DSD ... all you will be taghing are converted PCM

From my understanding MC can tag DSF files
Logged
HTPC: Win11 Pro, MC: latest 31(64b), NV Driver: v425.31, CPU: i9-12900K, 32GB RAM, GeForce: 2080ti
Screen: LG 2016 E6
NAS: FreeNAS 11.1, SuperMicro SSG-5048R-E1CR36L, E5-1620v4, 64GB ECC RAM, 18xUltrastar He12-SAS3 drives, 2x240GB SSD (OS)

Awesome Donkey

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 7804
  • Autumn shade...
Re: API or command line support for conversion engine
« Reply #6 on: March 08, 2021, 11:28:45 am »

MC can also tag DFF and ISOs if the sidecar option is enabled.
Logged
I don't work for JRiver... I help keep the forums safe from "male enhancements" and other sources of sketchy pharmaceuticals.

Windows 11 24H2 Update 64-bit + Ubuntu 24.10 Oracular Oriole 64-bit | Windows 11 24H2 Update 64-bit (Intel N305 Fanless NUC 16GB RAM/500GB M.2 NVMe SSD)
JRiver Media Center 33 (Windows + Linux) | iFi ZEN DAC 3 | JBL 306P MkII Studio Monitors | Audio-Technica ATH-M50x Headphones

KENZO

  • Recent member
  • *
  • Posts: 25
Re: API or command line support for conversion engine
« Reply #7 on: March 09, 2021, 12:33:25 am »

I thought dsf supported metadata ... dff and iso are the ones that do not support metadata

EDIT: plus it does not solve original problem ... you cannot tag your original DSD ... all you will be taghing are converted PCM

From my understanding MC can tag DSF files

I am digitizing to DSF. 
Logged

tij

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 1563
Re: API or command line support for conversion engine
« Reply #8 on: March 09, 2021, 03:22:47 am »

I am digitizing to DSF.

If you have iso or dff ... and converting to dsf ... be careful, MC does dff/iso->pcm->dsf

Thats a lossy process. Best is to directly convert dff/iso->dsf. But MC cannot do it. That way DSD stream is not touched.

There are tools to do this. But i am lost there. Awesome Donkey is much more knowledgabke than i am in this.
Logged
HTPC: Win11 Pro, MC: latest 31(64b), NV Driver: v425.31, CPU: i9-12900K, 32GB RAM, GeForce: 2080ti
Screen: LG 2016 E6
NAS: FreeNAS 11.1, SuperMicro SSG-5048R-E1CR36L, E5-1620v4, 64GB ECC RAM, 18xUltrastar He12-SAS3 drives, 2x240GB SSD (OS)

Awesome Donkey

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 7804
  • Autumn shade...
Re: API or command line support for conversion engine
« Reply #9 on: March 09, 2021, 03:37:15 am »

Use a tool like ISO2DSD or sacd_extract either via the command line or a GUI frontend app to extract DSF files from a SACD ISO file. It extracts the data from the ISO file, it doesn't do any sort of conversion.
Logged
I don't work for JRiver... I help keep the forums safe from "male enhancements" and other sources of sketchy pharmaceuticals.

Windows 11 24H2 Update 64-bit + Ubuntu 24.10 Oracular Oriole 64-bit | Windows 11 24H2 Update 64-bit (Intel N305 Fanless NUC 16GB RAM/500GB M.2 NVMe SSD)
JRiver Media Center 33 (Windows + Linux) | iFi ZEN DAC 3 | JBL 306P MkII Studio Monitors | Audio-Technica ATH-M50x Headphones

zybex

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 2615
Re: API or command line support for conversion engine
« Reply #10 on: March 09, 2021, 04:51:12 am »

Kenzo mentioned he's digitizing his LP collection, I'm assuming directly from vinyl with some ADC device that outputs DSD, and/or capture software.
It you're simply connecting the turntable to the PC via USB or even via the soundcard input, then you could record as WAV directly. It seems to me that the extra DSD step is redundant.
Logged

KENZO

  • Recent member
  • *
  • Posts: 25
Re: API or command line support for conversion engine
« Reply #11 on: March 09, 2021, 10:29:08 am »

I'm assuming directly from vinyl with some ADC device that outputs DSD

Correct! I am using a KORG MR-1 to digitize from phono preamp output (IFI Zen phono).

Much to my suprise, there is a subtle - but defintely audible - improvement with the sound of the digitized files when recording to DSF vs. even 24x176 PCM.

It could be the nature of the MR-1, perhaps more headroom for DSD, I don't know.  But in preparation for my long delayed LP digitizing project I have done well over a dozen test recordings with careful listening afterwards.  There is a smoothness with the DSD - especially on loud vocal passages - where there is some harshness with the PCM.  Frequency extremes are more realistic with the DSD (cymbals, triangles, etc) - low level information - for example the inhales or lip smacks of the vocalists are more realistic, etc. etc. 

So DSD it is for my project, even though DSD is much less convenient in post-processing vs. PCM.
Logged

tij

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 1563
Re: API or command line support for conversion engine
« Reply #12 on: March 09, 2021, 10:50:08 am »

If DSD encoding sounds better to you than PCM, then go with DSD.

If its DSF file format you ripping to, then those can have embedded tags ... so no need imho to have a separate copy in PCM ... let MC convert it in real time to PCM when you need to
Logged
HTPC: Win11 Pro, MC: latest 31(64b), NV Driver: v425.31, CPU: i9-12900K, 32GB RAM, GeForce: 2080ti
Screen: LG 2016 E6
NAS: FreeNAS 11.1, SuperMicro SSG-5048R-E1CR36L, E5-1620v4, 64GB ECC RAM, 18xUltrastar He12-SAS3 drives, 2x240GB SSD (OS)

dtc

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3118
Re: API or command line support for conversion engine
« Reply #13 on: March 09, 2021, 11:05:29 am »

I completely understand. I digitzed much of my vinyl collection using a Korg MR-2000s with the Busman modifications to the input stream, using Vinyl Studio.  I experimented with multiple formats and sample rates, including DSD and high rez PCM. I very much liked the DSD sound, but, in the end, I used 192 KHz PCM, since there is just no easily available post processing that can be done in purely DSD format. I wanted to get rid of the pops and clicks and Vinyl Studio did a great job of that, but the results have to be saved as PCM.  There is professional software that converts only the part you are fixing to PCM and then converts that little section back to DSD. So, almost all the file is native DSD, with just the corrections having been converted to PCM and back to DSD. Unfortunately, the author of Vinyl Studio tried to do that, but never could get the conversion back to DSD to be seamless.  In the end, I decided that there was not enough difference between DSD and 192 KHz PCM to warrant not doing the fixes, so I digitized most of the vinyls to 192 KHz PCM directly.  Of course, the difference very much depends on your DAC and your hearing.  I found that there was definitely a difference between digitizing to 44.1 KHz versus 88.2/96 Khz and a much less of a difference between 88.2/96 and 192.  But, disk space is cheap, so I went with the higher sampling rate.  My DAC is a Chord Hugo.  At 192 Khz, there was basically no difference in sound between the analog stream from the turntable and the digital stream to the Hugo. Again, that depends on the DAC.
Logged

dtc

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3118
Re: API or command line support for conversion engine
« Reply #14 on: March 09, 2021, 11:27:36 am »

If you use MC to convert from DSD to PCM, I suggest you look at the low pass filter options in Tools - Options - Audio -Advanced - Configure Input Plug-in. By default it is set to 24KHz with a 48 dB/octave slope. If you are using 192 KHz PCM,  a less aggressive filter is probably appropriate. A 50 Khz  with 48 dB/octave stope was recently added. That is probably more appropriate for high rez PCM.
Logged

KENZO

  • Recent member
  • *
  • Posts: 25
Re: API or command line support for conversion engine
« Reply #15 on: March 10, 2021, 01:54:37 pm »

If you use MC to convert from DSD to PCM, I suggest you look at the low pass filter options in Tools - Options - Audio -Advanced - Configure Input Plug-in.

Very helpful, thank you!
Logged

KENZO

  • Recent member
  • *
  • Posts: 25
Re: API or command line support for conversion engine
« Reply #16 on: March 10, 2021, 02:03:49 pm »

. I very much liked the DSD sound, but, in the end, I used 192 KHz PCM, since there is just no easily available post processing that can be done in purely DSD format.

Chord DAC!  I envy you!  I am using a humble Schiit Modi3.

I am leaning towards recording all my LPS to DSF but then making a 24x176 PCM copy of all the files so I can use vinyl studio.  I think making those copies won't be too big a hassle in my workflow even if I have to load and select the files interactively in MC.

I guess there is no MC plug in or filter for pop/click removal? 
Logged

dtc

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3118
Re: API or command line support for conversion engine
« Reply #17 on: March 10, 2021, 04:26:05 pm »

Chord DAC!  I envy you!  I am using a humble Schiit Modi3.

I am leaning towards recording all my LPS to DSF but then making a 24x176 PCM copy of all the files so I can use vinyl studio.  I think making those copies won't be too big a hassle in my workflow even if I have to load and select the files interactively in MC.

I guess there is no MC plug in or filter for pop/click removal?

Vinyl Studio is the way to go for click removal. MC does not have that capability. VS also has some nice patch tools for repairing more damaged sections and has the hum and rumble filters. VS can also convert from DSD to PCM.  I ended up using 192 rather than 176 simply because not all DACs support 176.

VS is  a better tagging tool for the basics, since it has direct access to discogs. You can even do your searches in discogs and then use their catalog number to pull the tag data into VS. That also helps a lot in separating tracks.  MC's database is user based, so is mostly CD based.   If you digitize to DSD, you can separate tracks and tag in VS and then convert to PCM in VS and the tags carry over.  You can do additional tagging in MC if needed.

My recommendation would be to explore all the options in VS at the start. Then you can decide which ones you want to use on a regular basis. Then, you can get into a production mode.

It takes time, but it is worth it.  I ended up doing about half of my vinyls. I decided that I would probably not listen to the rest, or that I already had good enough CDs of them that I did not need the digitized vinyl version.
Logged
Pages: [1]   Go Up