💾 Archived View for zigford.org › burning-a-cd-cli-style.gmi captured on 2023-06-16 at 16:31:19. Gemini links have been rewritten to link to archived content
⬅️ Previous capture (2023-03-20)
-=-=-=-=-=-=-
Sharing linux/windows scripts and tips
December 18, 2018 — Jesse Harris
I've written about ripping an album cli style, and sometimes it still makes sense to have older tech around. Like for example if you have 6 kids, you can't exactly afford to buy them all iPods. Or, maybe you can't afford the latest cars, and your car still has cd audio.
Thanksfully with Linux we don't have to resort to some clunky UI. We can do anything on the good ole' command line
~~~
So, you got your Audio files. They may not be titled with nice numbers so that the list well with ls or a * glob. Not to worry. You probably downloaded them in order. We can fix this in bash. The ls command sorts files by default in alphabetical order. ls -U on the other hand, disables sorting and they should be shown in order they were added to the filesystem :
i=1 ls -U | while read f do mv "${f}" "$(printf %02d $i)_${f}" i=$((i+1)); done
With this touch of cli magic, we have prepended a 01..etc number to each file.
Next we need to ensure the files are in the right format for cdrecord to burn. The command line tool cdrecord, needs files to be in WAV, stereo at 44100hz. ffmpeg to the rescue! PS, you might need to adjust for file ext
mkdir burn for i in *.webm do ffmpeg -i "${i}" -ar 44100 burn/"${i}".wav done
Now we are ready to burn those files to disc with cdrecord:
cdrecord -v -nofix -audio -pad *.wav
And finally we need to finalize the disc if we want any hope of reading it on a regular old cd player
cdrecord -v -fix -eject
Tags:
Generated with bashblog, a single bash script to easily create blogs like this one