USA Linux Users Group Forum Index
Log in Register FAQ Memberlist Search USA Linux Users Group Forum Index Album

Rip Audio CD to ogg, the old way

 
Post new topic   Reply to topic   printer-friendly view    USA Linux Users Group Forum Index » Audio and Video Applications
View previous topic :: View next topic  
Author Message
mmmna
. . . . . . .


Joined: 21 Apr 2024
Posts: 5100
Location: Centah Bahnstead Nuh Ham-shuh

PostPosted: Tue Feb 24, 2024 6:13 pm    Post subject: Rip Audio CD to ogg, the old way Reply with quote

Originally posted by mmmna, yours truly.

Step one: Rip audio CDs to wav files without XMMS (because XMMS 1.2.8 crashes w/diskwriter plugin, fix coming in 1.2.9).

I used Slackware 9.1 download edition, stock kernel, full newbie install.

I have launched a terminal (or console) window, you need never use the X Windows interface for this excercise.

The command I used:
Code:
mmmna@solomon:~/Desktop/ZZ$ cdparanoia -Bvw

mmmna is my login user name
solomon is the name of my local system
~/Desktop/ZZ$ is the current directory
cdparanoia performs ripping
-B refers to batch ripping - the whole CD gets ripped, track by track, with track boundaries per the Audio CD track boundaries.
v refers to verbosity, meaning, in this program, very verbose output.
w refers to what type of output file to create; Microsoft wav format is option w.
Note: 3 Audio CDs converted to Microsoft wav format all converted to OGG without any errors.

Executing the above command results in the following:
Code:
mmmna@solomon:~/Desktop/ZZ$ cdparanoia -Bvw
cdparanoia III release 9.8 (March 23, 2024)
(C) 2024 Monty <monty@xiph.org> and Xiphophorus

Report bugs to paranoia@xiph.org
http://www.xiph.org/paranoia/

Checking /dev/cdrom for cdrom...
        Testing /dev/cdrom for cooked ioctl() interface
                /dev/sr0 is not a cooked ioctl CDROM.
        Testing /dev/cdrom for SCSI interface
                generic device: /dev/sg0
                ioctl device: /dev/sr0

Found an accessible SCSI CDROM drive.
Looking at revision of the SG interface in use...
        SG interface version 3.1.25; OK.

CDROM model sensed sensed: LITE-ON LTR-52327S QS0B


Checking for SCSI emulation...
        Drive is ATAPI (using SCSI host adaptor emulation)

Checking for MMC style command set...
        Drive is MMC style
        DMA scatter/gather table entries: 256
        table entry size: 32768 bytes
        maximum theoretical transfer: 3566 sectors
        Setting default read size to 13 sectors (30576 bytes).

Verifying CDDA command set...
        Expected command set reads OK.

Table of contents (audio tracks only):
track        length               begin        copy pre ch
===========================================================
  1.    19745 [04:23.20]       33 [00:00.33]    no   no  2
  2.    14127 [03:08.27]    19778 [04:23.53]    no   no  2
  3.    19655 [04:22.05]    33905 [07:32.05]    no   no  2
  4.    13405 [02:58.55]    53560 [11:54.10]    no   no  2
  5.    15483 [03:26.33]    66965 [14:52.65]    no   no  2
  6.    16565 [03:40.65]    82448 [18:19.23]    no   no  2
  7.    14585 [03:14.35]    99013 [22:00.13]    no   no  2
  8.    14082 [03:07.57]   113598 [25:14.48]    no   no  2
  9.    13633 [03:01.58]   127680 [28:22.30]    no   no  2
 10.     15860 [03:31.35]   141313 [31:24.13]    no   no  2
 11.     13892 [03:05.17]   157173 [34:55.48]    no   no  2
 12.     21668 [04:48.68]   171065 [38:00.65]    no   no  2
 13.     19790 [04:23.65]   192733 [42:49.58]    no   no  2
 14.     14815 [03:17.40]   212523 [47:13.48]    no   no  2
 15.     19817 [04:24.17]   227338 [50:31.13]    no   no  2
 16.     23375 [05:11.50]   247155 [54:55.30]    no   no  2
 17.     18545 [04:07.20]   270530 [60:07.05]    no   no  2
 18.     12340 [02:44.40]   289075 [64:14.25]    no   no  2
 19.     11525 [02:33.50]   301415 [66:58.65]    no   no  2
 20.     12700 [02:49.25]   312940 [69:32.40]    no   no  2
TOTAL  325607 [72:21.32]    (audio only)

Ripping from sector       0 (track  0 [0:00.00])
          to sector  325639 (track 20 [2:49.24])

outputting to track00.cdda.wav

 (== PROGRESS == [                              | 000032 00 ] == :^D * ==)

outputting to track01.cdda.wav

 (== PROGRESS == [                              | 019777 00 ] == :^D * ==)

outputting to track02.cdda.wav

 (== PROGRESS == [                              | 033904 00 ] == :^D * ==)

outputting to track03.cdda.wav

 (== PROGRESS == [                              | 053559 00 ] == :^D * ==)

outputting to track04.cdda.wav

 (== PROGRESS == [                              | 066964 00 ] == :^D * ==)

outputting to track05.cdda.wav

 (== PROGRESS == [                              | 082447 00 ] == :^D * ==)

outputting to track06.cdda.wav

 (== PROGRESS == [                              | 099012 00 ] == :^D * ==)

outputting to track07.cdda.wav

 (== PROGRESS == [                              | 113597 00 ] == :^D * ==)

outputting to track08.cdda.wav

 (== PROGRESS == [                              | 127679 00 ] == :^D * ==)

outputting to track09.cdda.wav

 (== PROGRESS == [                              | 141312 00 ] == :^D * ==)

outputting to track10.cdda.wav

 (== PROGRESS == [                              | 157172 00 ] == :^D * ==)

outputting to track11.cdda.wav

 (== PROGRESS == [                              | 171064 00 ] == :^D * ==)

outputting to track12.cdda.wav

 (== PROGRESS == [                              | 192732 00 ] == :^D * ==)

outputting to track13.cdda.wav

 (== PROGRESS == [                              | 212522 00 ] == :^D * ==)

outputting to track14.cdda.wav

 (== PROGRESS == [                              | 227337 00 ] == :^D * ==)

outputting to track15.cdda.wav

 (== PROGRESS == [                              | 247154 00 ] == :^D * ==)

outputting to track16.cdda.wav

 (== PROGRESS == [                              | 270529 00 ] == :^D * ==)

outputting to track17.cdda.wav

 (== PROGRESS == [                              | 289074 00 ] == :^D * ==)

outputting to track18.cdda.wav

 (== PROGRESS == [                              | 301414 00 ] == :^D * ==)

outputting to track19.cdda.wav

 (== PROGRESS == [                              | 312939 00 ] == :^D * ==)

outputting to track20.cdda.wav

 (== PROGRESS == [                              | 325639 00 ] == :^D * ==)

Done.


mmmna@solomon:~/Desktop/ZZ$


In the directory /home/mmmna/Desktop/ZZ, I now have 21 wav files (my CD has 20 tracks, more on this in a minute), named track00.cdda.wav to track 20.cdda.wav.
There are only 20 tracks on the CD, so I listened to each of them, and when I listened to track00.cdda.wav, it is a fraudulent track - it contains nothing that is on the CD; I simply deleted track00.cdda.wav. I then set about anually renaming the files according to the correct CD track name; but because in Linux, the filenames cannot have certain punctuation marks, I therefore skipped all punctuation marks.

And yes, those are smilies in the progress line, they definitely have meaning, and the man page (man cdparanoia) explains their meaning - some represent important warnings!

My ultimate destination is OGG Vorbis formatted files, so.... read the next tutorial about OGG conversion!


Back to top
View user's profile Send private message Visit poster's website
mmmna
. . . . . . .


Joined: 21 Apr 2024
Posts: 5100
Location: Centah Bahnstead Nuh Ham-shuh

PostPosted: Tue Feb 24, 2024 6:15 pm    Post subject: wav to ogg Reply with quote

Step 2: Ogg encoding your wav files (this works nicely when you convert Microsoft format wav files, such as files generated by cdparanoia with a -w option, as above).

I have a bunch of wav files made from tracks on a CD, and I want to make them smaller, like MP3 files. I know that I will not be playing them on any portable or car sound systems, so I do not need to be using MP3 format. Besides that I'm interested in staying with the Open Source philosophy - Ogg was developed as an Open Source alternative to MP3 enocding.

Slackware 9.1 download edition, stock kernel, full newbie install.
I have launched a terminal (or console window), you need never use the X Windows interface for this excercise.

Code:
mmmna@solomon:~/Desktop/ZZ$ oggenc *zz\ top.wav -q 6 -a ZZ\ Top

mmmna is my login user name
solomon is the name of my local system
~/Desktop/ZZ$ is the current directory
oggenc performs the conversion from wav format to Ogg Vorbis format
*zz\ top.wav is a file name for oggenc to use for conversion
-q is a quality restriction for oggenc
-a is a feature of oggenc where the artist name will be stored as part of the ID3 tag inside the ogg file (just like MP3)
ZZ\ Top is the artist name to use with the -a command.

As an explanation, my source wav files all have file names that end with 'zz top.wav', but when I tell the oggenc command to use
Code:
*zz top.wav
oggenc gives me one error saying it can't find files to match '*zz', and another error saying it can't find the file 'top.wav'.
The reason is that when oggenc (and many other Linux commands) see a blank space, the commands are not assuming that the last text is part of the first text.
This is because the command uses the space to determine separate options to the command itself.
Thus, oggenc thought I had specified 2 file names (Also known as arguments) for it to convert:
one file ending in zz (*.zz) and
one file completely named 'top.wav'.
Thankfully, there were no files by that name, so all I did was misdirect oggenc, it caught me and told me what it thought I meant.
So, the way around that problem was to use the escape character slash (\).
That (ultimately) tells the command the following space is not part of the separation of instructions for the command.
That forced oggenc to see the option zz\ top.wav as.... zz top.wav, just like we expect it to be found in the filesystem.

Long story, eh? Sometimes would be easier to simply use '_' as a space!!

The quality restriction was my first attempt at keeping my ogg file quality from dropping into mono 8khz land. Nothing more than my first guess.
That left me with variable bit rate encoded files, the average VBR of the final files were between 195.2 - 170.5 kb/s for a total of 20 tracks. Next time I will demand a fixed bitrate, using the option -b with an instruction for 192 kb/s. Normal quality range is 0 - 10, fractional quality levels such as 2.5 are permitted. And for the audiophiles amongst us, simply make your own decisions about what is best for you, and do not delete the wav file until you achieve your goals!!

As for the -a option, in every .ogg file, just as in every mp3 file, there are ID tags which explain the particular track. I told oggenc that all the files have an artist name of ZZ Top. Again as in the filename argument, I needed to use the escape character (\) to force the oggenc command to put the space into the artist name. Otherwise, I'd likely have been warned that there was no such option as 'Top'. Thus, the artist name in the tags reads 'ZZ Top", just as it should read.


Back to top
View user's profile Send private message Visit poster's website
mmmna
. . . . . . .


Joined: 21 Apr 2024
Posts: 5100
Location: Centah Bahnstead Nuh Ham-shuh

PostPosted: Tue Feb 24, 2024 6:17 pm    Post subject: Reply with quote

Originally posted by jbsnake
mmmmna wrote:
but because in Linux, the filenames cannot have certain punctuation marks, I therefore skipped all punctuation marks.

although it seems true...it can be bypassed...annoying but possible. just use \ infront of punctuation such as
Code:
there'e always a way!
can be done
Code:
there\'s\ always\ a\ way\!
like i said...annoying...but possible Smile
p.s. also a good way to protect delicate files from newbie destruction Smile


Back to top
View user's profile Send private message Visit poster's website
Display posts from previous:   
Post new topic   Reply to topic   printer-friendly view    USA Linux Users Group Forum Index » Audio and Video Applications All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
All content © 2024 - Usa Linux Users Group
This forum is powered by phpBB. © 2024-2006 phpBB Group
Theme created by phpBBStyles.com and modified by Crouse