[slinkelist] converting cd's to mp3
Thomas W. Humphrey
TWHumphrey@fuse.net
Sun, 6 Aug 2000 07:52:36 -0400
This is a multi-part message in MIME format.
------=_NextPart_000_009A_01BFFF7B.497DBA60
Content-Type: text/plain;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
RE: [slinkelist] converting cd's to mp3Zeke, some thoughts:
As to the CDJID, why not just make two audio file albums of two MP3's =
each and see what ID's they get assigned? Whatever the pattern is, I'm =
sure it will be obvious and you can replicate it for the other MP3's. =
I'll do this experiment on my end when I have a moment.
As to track lengths, wouldn't the existing data for the CD have this so =
you could just copy it over?
Tom.
----- Original Message -----=20
From: Zeke Koch=20
To: Thomas W. Humphrey=20
Cc: slinkelist@nirvis.com=20
Sent: Sunday, August 06, 2000 12:40 AM
Subject: RE: [slinkelist] converting cd's to mp3
After some quick playing around with it things seem slightly more =
complicated that I would think. CDJ uses the CDJID to link between the =
tracks and albums tables so they do matter. There's a bunch of other =
things that you have to get right (in addition to getting the track =
count for the albums correct the total album length and such seems to =
matter). I'd love it if I could just add the album and tracks with a =
consistent cdjid and have CDJ figure the rest out. =20
=20
There's some odd logic in the display code. For example the Album =
table has data in it like the number of tracks (which of course you =
could get by just doing a query of the tracks table with tracks.cdjid =
=3D album.cdjid). But CDJ seems to just the track number to actually =
determine the number of tracks to look for in the tracks table. So if =
you reduce the number of tracks in the Albums row then the last track =
seems to drop out of the UI.
=20
To really do this, I think that I'll need some help from Nirvis (or =
someone). Basically I just need to know exactly I need to do to add an =
mp3 'album' programmatically. I could probably hack around it, but =
other things are distracting me right now.
=20
I haven't tried your suggestion of blowing away the current albums and =
reusing the rows. That might work better, but I actually like playing =
CD's when I'm on my main computer (the CD's often seem to sound better =
even when I rip my mp3's at VBR maxed out).
=20
Right now I'm getting the track info from the mp3's ID3 tags (which =
come from CDDB when MMJB rips them), but I don't know how to get the =
track length yet (I haven't needed to figure that out for my other =
project) and CDJ seems to need them (unfortunately). I'm currently =
working on some software (tangled in with that) to augment that with =
more info (and yes covers) from www.allmusic.com so that I can build a =
prettier front end for CDJ on a wince device. Unfortunately (or perhaps =
fortunately) things are rather busy at work these days so I don't have a =
lot of time to spend on this project.=20
=20
-Zeke
------=_NextPart_000_009A_01BFFF7B.497DBA60
Content-Type: text/html;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML xmlns=3D"http://www.w3.org/TR/REC-html40" xmlns:v =3D=20
"urn:schemas-microsoft-com:vml" xmlns:o =3D=20
"urn:schemas-microsoft-com:office:office" xmlns:w =3D=20
"urn:schemas-microsoft-com:office:word"><HEAD><TITLE>RE: [slinkelist] =
converting cd's to mp3</TITLE>
<META content=3D"text/html; charset=3Diso-8859-1" =
http-equiv=3DContent-Type>
<META content=3DWord.Document name=3DProgId>
<META content=3D"MSHTML 5.00.3018.900" name=3DGENERATOR>
<META content=3D"Microsoft Word 9" name=3DOriginator><LINK=20
href=3D"cid:filelist.xml@01BFFF25.9A34AF00" rel=3DFile-List><!--[if gte =
mso 9]><xml>
<o:OfficeDocumentSettings>
<o:DoNotRelyOnCSS/>
</o:OfficeDocumentSettings>
</xml><![endif]--><!--[if gte mso 9]><xml>
<w:WordDocument>
<w:Zoom>0</w:Zoom>
<w:DocumentKind>DocumentEmail</w:DocumentKind>
<w:EnvelopeVis/>
</w:WordDocument>
</xml><![endif]-->
<STYLE>@font-face {
font-family: Trebuchet MS;
}
@font-face {
font-family: Tahoma;
}
P.MsoNormal {
FONT-FAMILY: "Times New Roman"; FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; =
mso-style-parent: ""; mso-pagination: widow-orphan; =
mso-fareast-font-family: "Times New Roman"
}
LI.MsoNormal {
FONT-FAMILY: "Times New Roman"; FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; =
mso-style-parent: ""; mso-pagination: widow-orphan; =
mso-fareast-font-family: "Times New Roman"
}
DIV.MsoNormal {
FONT-FAMILY: "Times New Roman"; FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; =
mso-style-parent: ""; mso-pagination: widow-orphan; =
mso-fareast-font-family: "Times New Roman"
}
A:link {
COLOR: blue; TEXT-DECORATION: underline; text-underline: single
}
SPAN.MsoHyperlink {
COLOR: blue; TEXT-DECORATION: underline; text-underline: single
}
A:visited {
COLOR: blue; TEXT-DECORATION: underline; text-underline: single
}
SPAN.MsoHyperlinkFollowed {
COLOR: blue; TEXT-DECORATION: underline; text-underline: single
}
P.MsoAutoSig {
FONT-FAMILY: "Times New Roman"; FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; =
mso-pagination: widow-orphan; mso-fareast-font-family: "Times New Roman"
}
LI.MsoAutoSig {
FONT-FAMILY: "Times New Roman"; FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; =
mso-pagination: widow-orphan; mso-fareast-font-family: "Times New Roman"
}
DIV.MsoAutoSig {
FONT-FAMILY: "Times New Roman"; FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; =
mso-pagination: widow-orphan; mso-fareast-font-family: "Times New Roman"
}
P {
FONT-FAMILY: "Times New Roman"; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; =
MARGIN-RIGHT: 0in; mso-margin-top-alt: auto; mso-margin-bottom-alt: =
auto; mso-pagination: widow-orphan; mso-fareast-font-family: "Times New =
Roman"
}
SPAN.EmailStyle18 {
COLOR: maroon; FONT-STYLE: normal; FONT-WEIGHT: normal; mso-style-type: =
personal-reply; mso-ansi-font-size: 10.0pt; mso-ascii-font-family: =
"Trebuchet MS"; mso-hansi-font-family: "Trebuchet MS"; =
mso-bidi-font-family: Arial
}
DIV.Section1 {
page: Section1
}
</STYLE>
<!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1027"/>
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1"/>
</o:shapelayout></xml><![endif]--></HEAD>
<BODY bgColor=3Dwhite lang=3DEN-US link=3Dblue style=3D"tab-interval: =
.5in" vLink=3Dblue>
<DIV><FONT size=3D2>Zeke, some t</FONT><FONT =
size=3D2>houghts:</FONT></DIV>
<DIV> </DIV>
<DIV><FONT size=3D2>As to the CDJID, why not just make two audio file =
albums of=20
two MP3's each and see what ID's they get assigned? Whatever the =
pattern=20
is, I'm sure it will be obvious and you can replicate it for the other=20
MP3's. I'll do this experiment on my end when I have a=20
moment.</FONT></DIV>
<DIV> </DIV>
<DIV><FONT size=3D2>As to track lengths, wouldn't the existing data for =
the CD=20
have this so you could just copy it over?</FONT></DIV>
<DIV> </DIV>
<DIV><FONT size=3D2>Tom.</FONT></DIV>
<BLOCKQUOTE=20
style=3D"BORDER-LEFT: #000000 2px solid; MARGIN-LEFT: 5px; MARGIN-RIGHT: =
0px; PADDING-LEFT: 5px; PADDING-RIGHT: 0px">
<DIV style=3D"FONT: 10pt arial">----- Original Message ----- </DIV>
<DIV=20
style=3D"BACKGROUND: #e4e4e4; FONT: 10pt arial; font-color: =
black"><B>From:</B>=20
<A href=3D"mailto:zeke@Exchange.Microsoft.com"=20
title=3Dzeke@Exchange.Microsoft.com>Zeke Koch</A> </DIV>
<DIV style=3D"FONT: 10pt arial"><B>To:</B> <A=20
href=3D"mailto:TWHumphrey@alum.mit.edu" =
title=3DTWHumphrey@alum.mit.edu>Thomas W.=20
Humphrey</A> </DIV>
<DIV style=3D"FONT: 10pt arial"><B>Cc:</B> <A=20
href=3D"mailto:slinkelist@nirvis.com"=20
title=3Dslinkelist@nirvis.com>slinkelist@nirvis.com</A> </DIV>
<DIV style=3D"FONT: 10pt arial"><B>Sent:</B> Sunday, August 06, 2000 =
12:40=20
AM</DIV>
<DIV style=3D"FONT: 10pt arial"><B>Subject:</B> RE: [slinkelist] =
converting cd's=20
to mp3</DIV>
<DIV><BR></DIV>
<DIV class=3DSection1>
<P class=3DMsoNormal><SPAN class=3DEmailStyle18><FONT color=3Dmaroon=20
face=3D"Trebuchet MS" size=3D2><SPAN=20
style=3D"FONT-FAMILY: 'Trebuchet MS'; FONT-SIZE: 10pt; =
mso-bidi-font-size: 12.0pt">After=20
some quick playing around with it things seem slightly more =
complicated that I=20
would think.<SPAN style=3D"mso-spacerun: yes"> </SPAN>CDJ uses =
the CDJID=20
to link between the tracks and albums tables so they do matter.<SPAN=20
style=3D"mso-spacerun: yes"> </SPAN>There’s a bunch of =
other things that=20
you have to get right (in addition to getting the track count for the =
albums=20
correct the total album length and such seems to matter).<SPAN=20
style=3D"mso-spacerun: yes"> </SPAN>I’d love it if I could =
just add the=20
album and tracks with a consistent cdjid and have CDJ figure the rest=20
out.<SPAN style=3D"mso-spacerun: yes"> =20
</SPAN><o:p></o:p></SPAN></FONT></SPAN></P>
<P class=3DMsoNormal><SPAN class=3DEmailStyle18><FONT color=3Dmaroon=20
face=3D"Trebuchet MS" size=3D2><SPAN=20
style=3D"FONT-FAMILY: 'Trebuchet MS'; FONT-SIZE: 10pt; =
mso-bidi-font-size: 12.0pt"><![if =
!supportEmptyParas]> <![endif]><o:p></o:p></SPAN></FONT></SPAN></P>
<P class=3DMsoNormal><SPAN class=3DEmailStyle18><FONT color=3Dmaroon=20
face=3D"Trebuchet MS" size=3D2><SPAN=20
style=3D"FONT-FAMILY: 'Trebuchet MS'; FONT-SIZE: 10pt; =
mso-bidi-font-size: 12.0pt">There’s=20
some odd logic in the display code.<SPAN style=3D"mso-spacerun: =
yes"> =20
</SPAN>For example the Album table has data in it like the number of =
tracks=20
(which of course you could get by just doing a query of the tracks =
table with=20
tracks.cdjid =3D album.cdjid).<SPAN style=3D"mso-spacerun: yes"> =
</SPAN>But=20
CDJ seems to just the track number to actually determine the number of =
tracks=20
to look for in the tracks table.<SPAN style=3D"mso-spacerun: =
yes"> =20
</SPAN>So if you reduce the number of tracks in the Albums row then =
the last=20
track seems to drop out of the UI.<o:p></o:p></SPAN></FONT></SPAN></P>
<P class=3DMsoNormal><SPAN class=3DEmailStyle18><FONT color=3Dmaroon=20
face=3D"Trebuchet MS" size=3D2><SPAN=20
style=3D"FONT-FAMILY: 'Trebuchet MS'; FONT-SIZE: 10pt; =
mso-bidi-font-size: 12.0pt"><![if =
!supportEmptyParas]> <![endif]><o:p></o:p></SPAN></FONT></SPAN></P>
<P class=3DMsoNormal><SPAN class=3DEmailStyle18><FONT color=3Dmaroon=20
face=3D"Trebuchet MS" size=3D2><SPAN=20
style=3D"FONT-FAMILY: 'Trebuchet MS'; FONT-SIZE: 10pt; =
mso-bidi-font-size: 12.0pt">To=20
really do this, I think that I’ll need some help from Nirvis (or =
someone).<SPAN style=3D"mso-spacerun: yes"> </SPAN>Basically I =
just need=20
to know exactly I need to do to add an mp3 ‘album’ =
programmatically.<SPAN=20
style=3D"mso-spacerun: yes"> </SPAN>I could probably hack around =
it, but=20
other things are distracting me right =
now.<o:p></o:p></SPAN></FONT></SPAN></P>
<P class=3DMsoNormal><SPAN class=3DEmailStyle18><FONT color=3Dmaroon=20
face=3D"Trebuchet MS" size=3D2><SPAN=20
style=3D"FONT-FAMILY: 'Trebuchet MS'; FONT-SIZE: 10pt; =
mso-bidi-font-size: 12.0pt"><![if =
!supportEmptyParas]> <![endif]><o:p></o:p></SPAN></FONT></SPAN></P>
<P class=3DMsoNormal><SPAN class=3DEmailStyle18><FONT color=3Dmaroon=20
face=3D"Trebuchet MS" size=3D2><SPAN=20
style=3D"FONT-FAMILY: 'Trebuchet MS'; FONT-SIZE: 10pt; =
mso-bidi-font-size: 12.0pt">I=20
haven’t tried your suggestion of blowing away the current albums =
and reusing=20
the rows.<SPAN style=3D"mso-spacerun: yes"> </SPAN>That might =
work better,=20
but I actually like playing CD’s when I’m on my main =
computer (the CD’s often=20
seem to sound better even when I rip my mp3’s at VBR maxed=20
out).<o:p></o:p></SPAN></FONT></SPAN></P>
<P class=3DMsoNormal><SPAN class=3DEmailStyle18><FONT color=3Dmaroon=20
face=3D"Trebuchet MS" size=3D2><SPAN=20
style=3D"FONT-FAMILY: 'Trebuchet MS'; FONT-SIZE: 10pt; =
mso-bidi-font-size: 12.0pt"><![if =
!supportEmptyParas]> <![endif]><o:p></o:p></SPAN></FONT></SPAN></P>
<P class=3DMsoNormal><SPAN class=3DEmailStyle18><FONT color=3Dmaroon=20
face=3D"Trebuchet MS" size=3D2><SPAN=20
style=3D"FONT-FAMILY: 'Trebuchet MS'; FONT-SIZE: 10pt; =
mso-bidi-font-size: 12.0pt">Right=20
now I’m getting the track info from the mp3’s ID3 tags =
(which come from CDDB=20
when MMJB rips them), but I don’t know how to get the track =
length yet (I=20
haven’t needed to figure that out for my other project) and CDJ =
seems to need=20
them (unfortunately).<SPAN style=3D"mso-spacerun: yes"> =
</SPAN>I’m=20
currently working on some software (tangled in with that) to augment =
that with=20
more info (and yes covers) from <A=20
href=3D"http://www.allmusic.com/">www.allmusic.com</A> so that I can =
build a=20
prettier front end for CDJ on a wince device.<SPAN=20
style=3D"mso-spacerun: yes"> </SPAN>Unfortunately (or perhaps =
fortunately)=20
things are rather busy at work these days so I don’t have a lot =
of time to=20
spend on this project. <o:p></o:p></SPAN></FONT></SPAN></P>
<P class=3DMsoNormal><SPAN class=3DEmailStyle18><FONT color=3Dmaroon=20
face=3D"Trebuchet MS" size=3D2><SPAN=20
style=3D"FONT-FAMILY: 'Trebuchet MS'; FONT-SIZE: 10pt; =
mso-bidi-font-size: 12.0pt"><![if =
!supportEmptyParas]> <![endif]><o:p></o:p></SPAN></FONT></SPAN></P>
<P class=3DMsoNormal><SPAN class=3DEmailStyle18><FONT color=3Dmaroon=20
face=3D"Trebuchet MS" size=3D2><SPAN=20
style=3D"FONT-FAMILY: 'Trebuchet MS'; FONT-SIZE: 10pt; =
mso-bidi-font-size: 12.0pt">-Zeke</SPAN></FONT></SPAN><![if =
!supportEmptyParas]><![endif]><![if !supportEmptyParas]><![endif]><![if =
!supportEmptyParas]><![endif]><![if =
!supportEmptyParas]><![endif]></P></DIV></BLOCKQUOTE></BODY></HTML>
------=_NextPart_000_009A_01BFFF7B.497DBA60--