This time I added the RG values (-9, -6, ...) to the mp3 files and told
foobar to apply non-losslessly the RG to the files and I removes all the
ReplayGain tags
I loaded the files in iTunes for it to add the SoundCheck data.
I noted the Volume correction iTunes applied for each song add came up
with the following table:
file rg Volume iTunesSD (decimal)
------------------------------------------------------
m9 -9 +3.1 00 00 03 +3
m6 -6 +0.2 00 00 00 +0
m3 -3 -2.4 ff ff fe -2
p0 +0 -5.0 ff ff fb -5
p3 +3 -7.8 ff ff f8 -8
p45 +4.5 -9.3 ff ff f7 -9
p6 +6 -10.1 ff ff f6 -10
p75 +7.5 -10.8 ff ff f5 -11
p9 +9 -11.8 ff ff f5 -11
where
file: m9 for -9, m6 for -6
rg: the ReplayGain applied with foobar
Volume: Volume correction by iPod (Get Info function)
iTunesSD:
The hexadecimal value found in the iTunes created iTunesSD file
All files sound (more or less) the same
The p75 and p9 files don't sound exactly the same because they get the
same volume correction applied even though they don't have the same volume.
I only recovered the hexdumps of the iTunesSD that I join
If you want more information I'll redo the experiment
So, it seems than *ipod 2nd gen shuffle* uses the integer ReplayGain
value with some crude rounding up algorithm. Rather crappy
By the way, http://www.ipodlinux.org/wiki/ITunesDB#iTunesSD_file doesn't
speak of a SoundCheck field but of a Volume field!
The range specified (0x00 - 0xC8) doesn't seem to correspond.
What do you think?
Cheers
Chris
P.S. Do you happen to have an algorithm lying around that can convert
the SoundCheck value to ReplayGain? I'm not that good at maths :(
H. Langos wrote:
Hi chris,
On Fri, May 29, 2009 at 12:36:30AM +0200, H. Langos wrote:
...
As you see the gnupod file allways contains 00 00 64 in the volume
field while the iTunes generated field contains:
ff ff f7 for the -9dB file,
ff ff fb for the 0 file (are you sure it is realy 0? soundcheck 3E8 or none at
all?),
00 00 09 for the +9dB
Unfortunately this is not the format documented in
http://banshee-project.org/~gburt/itunesdb.html so we'll have to
investigate a little further.
Are you sure that the manual volume adjustment in iTunes was +/-0% for all
files?
It would be great if you could send me some more examples with +6dB and -6dB
and maybe +3dB and -3dB.
Did you get around to run those additional tests? If you did, please post
those to bug-gnupod.
cheers
-henrik
00000000 00 00 09 01 08 00 00 00 12 00 00 00 00 00 00 00 |................|
00000010 00 00 00 02 2e 5a a5 01 00 00 00 00 00 00 00 00 |.....Z..........|
00000020 00 00 00 00 00 00 00 00 00 00 00 00 64 00 00 01 |............d...|
00000030 00 02 00 2f 00 69 00 50 00 6f 00 64 00 5f 00 43 |.../.i.P.o.d._.C|
00000040 00 6f 00 6e 00 74 00 72 00 6f 00 6c 00 2f 00 4d |.o.n.t.r.o.l./.M|
00000050 00 75 00 73 00 69 00 63 00 2f 00 46 00 31 00 38 |.u.s.i.c./.F.1.8|
00000060 00 2f 00 67 00 30 00 5f 00 61 00 70 00 70 00 6c |./.g.0._.a.p.p.l|
00000070 00 69 00 65 00 64 00 5f 00 72 00 67 00 5f 00 6d |.i.e.d._.r.g._.m|
00000080 00 39 00 2e 00 6d 00 70 00 33 00 00 00 00 00 00 |.9...m.p.3......|
00000090 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00000230 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 |................|
00000240 00 02 2e 5a a5 01 00 00 00 00 00 00 00 00 00 00 |...Z............|
00000250 00 00 00 00 00 00 00 00 00 00 64 00 00 01 00 02 |..........d.....|
00000260 00 2f 00 69 00 50 00 6f 00 64 00 5f 00 43 00 6f |./.i.P.o.d._.C.o|
00000270 00 6e 00 74 00 72 00 6f 00 6c 00 2f 00 4d 00 75 |.n.t.r.o.l./.M.u|
00000280 00 73 00 69 00 63 00 2f 00 46 00 30 00 39 00 2f |.s.i.c./.F.0.9./|
00000290 00 67 00 30 00 5f 00 61 00 70 00 70 00 6c 00 69 |.g.0._.a.p.p.l.i|
000002a0 00 65 00 64 00 5f 00 72 00 67 00 5f 00 6d 00 36 |.e.d._.r.g._.m.6|
000002b0 00 2e 00 6d 00 70 00 33 00 00 00 00 00 00 00 00 |...m.p.3........|
000002c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00000460 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 02 |................|
00000470 2e 5a a5 01 00 00 00 00 00 00 00 00 00 00 00 00 |.Z..............|
00000480 00 00 00 00 00 00 00 00 64 00 00 01 00 02 00 2f |........d....../|
00000490 00 69 00 50 00 6f 00 64 00 5f 00 43 00 6f 00 6e |.i.P.o.d._.C.o.n|
000004a0 00 74 00 72 00 6f 00 6c 00 2f 00 4d 00 75 00 73 |.t.r.o.l./.M.u.s|
000004b0 00 69 00 63 00 2f 00 46 00 30 00 39 00 2f 00 67 |.i.c./.F.0.9./.g|
000004c0 00 30 00 5f 00 61 00 70 00 70 00 6c 00 69 00 65 |.0._.a.p.p.l.i.e|
000004d0 00 64 00 5f 00 72 00 67 00 5f 00 6d 00 33 00 2e |.d._.r.g._.m.3..|
000004e0 00 6d 00 70 00 33 00 00 00 00 00 00 00 00 00 00 |.m.p.3..........|
000004f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00000690 00 00 00 00 00 00 00 00 00 01 00 00 00 02 2e 5a |...............Z|
000006a0 a5 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
000006b0 00 00 00 00 00 00 64 00 00 01 00 02 00 2f 00 69 |......d....../.i|
000006c0 00 50 00 6f 00 64 00 5f 00 43 00 6f 00 6e 00 74 |.P.o.d._.C.o.n.t|
000006d0 00 72 00 6f 00 6c 00 2f 00 4d 00 75 00 73 00 69 |.r.o.l./.M.u.s.i|
000006e0 00 63 00 2f 00 46 00 30 00 31 00 2f 00 67 00 30 |.c./.F.0.1./.g.0|
000006f0 00 5f 00 61 00 70 00 70 00 6c 00 69 00 65 00 64 |._.a.p.p.l.i.e.d|
00000700 00 5f 00 72 00 67 00 5f 00 70 00 30 00 2e 00 6d |._.r.g._.p.0...m|
00000710 00 70 00 33 00 00 00 00 00 00 00 00 00 00 00 00 |.p.3............|
00000720 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
000008c0 00 00 00 00 00 00 00 01 00 00 00 02 2e 5a a5 01 |.............Z..|
000008d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
000008e0 00 00 00 00 64 00 00 01 00 02 00 2f 00 69 00 50 |....d....../.i.P|
000008f0 00 6f 00 64 00 5f 00 43 00 6f 00 6e 00 74 00 72 |.o.d._.C.o.n.t.r|
00000900 00 6f 00 6c 00 2f 00 4d 00 75 00 73 00 69 00 63 |.o.l./.M.u.s.i.c|
00000910 00 2f 00 46 00 30 00 33 00 2f 00 67 00 30 00 5f |./.F.0.3./.g.0._|
00000920 00 61 00 70 00 70 00 6c 00 69 00 65 00 64 00 5f |.a.p.p.l.i.e.d._|
00000930 00 72 00 67 00 5f 00 70 00 33 00 2e 00 6d 00 70 |.r.g._.p.3...m.p|
00000940 00 33 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |.3..............|
00000950 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00000af0 00 00 00 00 00 01 00 00 00 02 2e 5a a5 01 00 00 |...........Z....|
00000b00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000b10 00 00 64 00 00 01 00 02 00 2f 00 69 00 50 00 6f |..d....../.i.P.o|
00000b20 00 64 00 5f 00 43 00 6f 00 6e 00 74 00 72 00 6f |.d._.C.o.n.t.r.o|
00000b30 00 6c 00 2f 00 4d 00 75 00 73 00 69 00 63 00 2f |.l./.M.u.s.i.c./|
00000b40 00 46 00 31 00 31 00 2f 00 67 00 30 00 5f 00 61 |.F.1.1./.g.0._.a|
00000b50 00 70 00 70 00 6c 00 69 00 65 00 64 00 5f 00 72 |.p.p.l.i.e.d._.r|
00000b60 00 67 00 5f 00 70 00 34 00 35 00 2e 00 6d 00 70 |.g._.p.4.5...m.p|
00000b70 00 33 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |.3..............|
00000b80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00000d20 00 00 00 01 00 00 00 02 2e 5a a5 01 00 00 00 00 |.........Z......|
00000d30 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000d40 64 00 00 01 00 02 00 2f 00 69 00 50 00 6f 00 64 |d....../.i.P.o.d|
00000d50 00 5f 00 43 00 6f 00 6e 00 74 00 72 00 6f 00 6c |._.C.o.n.t.r.o.l|
00000d60 00 2f 00 4d 00 75 00 73 00 69 00 63 00 2f 00 46 |./.M.u.s.i.c./.F|
00000d70 00 30 00 33 00 2f 00 67 00 30 00 5f 00 61 00 70 |.0.3./.g.0._.a.p|
00000d80 00 70 00 6c 00 69 00 65 00 64 00 5f 00 72 00 67 |.p.l.i.e.d._.r.g|
00000d90 00 5f 00 70 00 36 00 2e 00 6d 00 70 00 33 00 00 |._.p.6...m.p.3..|
00000da0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00000f50 00 01 00 00 00 02 2e 5a a5 01 00 00 00 00 00 00 |.......Z........|
00000f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 64 00 |..............d.|
00000f70 00 01 00 02 00 2f 00 69 00 50 00 6f 00 64 00 5f |...../.i.P.o.d._|
00000f80 00 43 00 6f 00 6e 00 74 00 72 00 6f 00 6c 00 2f |.C.o.n.t.r.o.l./|
00000f90 00 4d 00 75 00 73 00 69 00 63 00 2f 00 46 00 31 |.M.u.s.i.c./.F.1|
00000fa0 00 31 00 2f 00 67 00 30 00 5f 00 61 00 70 00 70 |.1./.g.0._.a.p.p|
00000fb0 00 6c 00 69 00 65 00 64 00 5f 00 72 00 67 00 5f |.l.i.e.d._.r.g._|
00000fc0 00 70 00 37 00 35 00 2e 00 6d 00 70 00 33 00 00 |.p.7.5...m.p.3..|
00000fd0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00001170 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 |................|
00001180 00 00 00 02 2e 5a a5 01 00 00 00 00 00 00 00 00 |.....Z..........|
00001190 00 00 00 00 00 00 00 00 00 00 00 00 64 00 00 01 |............d...|
000011a0 00 02 00 2f 00 69 00 50 00 6f 00 64 00 5f 00 43 |.../.i.P.o.d._.C|
000011b0 00 6f 00 6e 00 74 00 72 00 6f 00 6c 00 2f 00 4d |.o.n.t.r.o.l./.M|
000011c0 00 75 00 73 00 69 00 63 00 2f 00 46 00 31 00 33 |.u.s.i.c./.F.1.3|
000011d0 00 2f 00 67 00 30 00 5f 00 61 00 70 00 70 00 6c |./.g.0._.a.p.p.l|
000011e0 00 69 00 65 00 64 00 5f 00 72 00 67 00 5f 00 70 |.i.e.d._.r.g._.p|
000011f0 00 39 00 2e 00 6d 00 70 00 33 00 00 00 00 00 00 |.9...m.p.3......|
00001200 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
000013a0 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 |................|
000013b0
00000000 00 00 09 01 08 00 00 00 12 00 00 00 00 00 00 00 |................|
00000010 00 00 00 02 2e 5a a5 01 00 00 00 00 00 00 00 00 |.....Z..........|
00000020 00 00 00 00 00 00 00 00 00 00 00 00 03 00 00 01 |................|
00000030 00 02 00 2f 00 69 00 50 00 6f 00 64 00 5f 00 43 |.../.i.P.o.d._.C|
00000040 00 6f 00 6e 00 74 00 72 00 6f 00 6c 00 2f 00 4d |.o.n.t.r.o.l./.M|
00000050 00 75 00 73 00 69 00 63 00 2f 00 46 00 30 00 30 |.u.s.i.c./.F.0.0|
00000060 00 2f 00 4b 00 56 00 52 00 44 00 2e 00 6d 00 70 |./.K.V.R.D...m.p|
00000070 00 33 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |.3..............|
00000080 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00000230 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 |................|
00000240 00 02 2e 5a a5 01 00 00 00 00 00 00 00 00 00 00 |...Z............|
00000250 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 02 |................|
00000260 00 2f 00 69 00 50 00 6f 00 64 00 5f 00 43 00 6f |./.i.P.o.d._.C.o|
00000270 00 6e 00 74 00 72 00 6f 00 6c 00 2f 00 4d 00 75 |.n.t.r.o.l./.M.u|
00000280 00 73 00 69 00 63 00 2f 00 46 00 30 00 32 00 2f |.s.i.c./.F.0.2./|
00000290 00 43 00 4b 00 43 00 52 00 2e 00 6d 00 70 00 33 |.C.K.C.R...m.p.3|
000002a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00000460 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 02 |................|
00000470 2e 5a a5 01 00 00 00 00 00 00 00 00 00 00 00 00 |.Z..............|
00000480 00 00 00 00 00 00 ff ff fe 00 00 01 00 02 00 2f |.............../|
00000490 00 69 00 50 00 6f 00 64 00 5f 00 43 00 6f 00 6e |.i.P.o.d._.C.o.n|
000004a0 00 74 00 72 00 6f 00 6c 00 2f 00 4d 00 75 00 73 |.t.r.o.l./.M.u.s|
000004b0 00 69 00 63 00 2f 00 46 00 30 00 32 00 2f 00 43 |.i.c./.F.0.2./.C|
000004c0 00 4f 00 50 00 42 00 2e 00 6d 00 70 00 33 00 00 |.O.P.B...m.p.3..|
000004d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00000690 00 00 00 00 00 00 00 00 00 01 00 00 00 02 2e 5a |...............Z|
000006a0 a5 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
000006b0 00 00 00 00 ff ff fb 00 00 01 00 02 00 2f 00 69 |............./.i|
000006c0 00 50 00 6f 00 64 00 5f 00 43 00 6f 00 6e 00 74 |.P.o.d._.C.o.n.t|
000006d0 00 72 00 6f 00 6c 00 2f 00 4d 00 75 00 73 00 69 |.r.o.l./.M.u.s.i|
000006e0 00 63 00 2f 00 46 00 30 00 32 00 2f 00 55 00 50 |.c./.F.0.2./.U.P|
000006f0 00 4d 00 4a 00 2e 00 6d 00 70 00 33 00 00 00 00 |.M.J...m.p.3....|
00000700 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
000008c0 00 00 00 00 00 00 00 01 00 00 00 02 2e 5a a5 01 |.............Z..|
000008d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
000008e0 00 00 ff ff f8 00 00 01 00 02 00 2f 00 69 00 50 |.........../.i.P|
000008f0 00 6f 00 64 00 5f 00 43 00 6f 00 6e 00 74 00 72 |.o.d._.C.o.n.t.r|
00000900 00 6f 00 6c 00 2f 00 4d 00 75 00 73 00 69 00 63 |.o.l./.M.u.s.i.c|
00000910 00 2f 00 46 00 30 00 31 00 2f 00 46 00 48 00 48 |./.F.0.1./.F.H.H|
00000920 00 41 00 2e 00 6d 00 70 00 33 00 00 00 00 00 00 |.A...m.p.3......|
00000930 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00000af0 00 00 00 00 00 01 00 00 00 02 2e 5a a5 01 00 00 |...........Z....|
00000b00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000b10 ff ff f7 00 00 01 00 02 00 2f 00 69 00 50 00 6f |........./.i.P.o|
00000b20 00 64 00 5f 00 43 00 6f 00 6e 00 74 00 72 00 6f |.d._.C.o.n.t.r.o|
00000b30 00 6c 00 2f 00 4d 00 75 00 73 00 69 00 63 00 2f |.l./.M.u.s.i.c./|
00000b40 00 46 00 30 00 32 00 2f 00 41 00 55 00 4b 00 4a |.F.0.2./.A.U.K.J|
00000b50 00 2e 00 6d 00 70 00 33 00 00 00 00 00 00 00 00 |...m.p.3........|
00000b60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00000d20 00 00 00 01 00 00 00 02 2e 5a a5 01 00 00 00 00 |.........Z......|
00000d30 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ff ff |................|
00000d40 f6 00 00 01 00 02 00 2f 00 69 00 50 00 6f 00 64 |......./.i.P.o.d|
00000d50 00 5f 00 43 00 6f 00 6e 00 74 00 72 00 6f 00 6c |._.C.o.n.t.r.o.l|
00000d60 00 2f 00 4d 00 75 00 73 00 69 00 63 00 2f 00 46 |./.M.u.s.i.c./.F|
00000d70 00 30 00 30 00 2f 00 52 00 56 00 53 00 44 00 2e |.0.0./.R.V.S.D..|
00000d80 00 6d 00 70 00 33 00 00 00 00 00 00 00 00 00 00 |.m.p.3..........|
00000d90 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00000f50 00 01 00 00 00 02 2e 5a a5 01 00 00 00 00 00 00 |.......Z........|
00000f60 00 00 00 00 00 00 00 00 00 00 00 00 ff ff f5 00 |................|
00000f70 00 01 00 02 00 2f 00 69 00 50 00 6f 00 64 00 5f |...../.i.P.o.d._|
00000f80 00 43 00 6f 00 6e 00 74 00 72 00 6f 00 6c 00 2f |.C.o.n.t.r.o.l./|
00000f90 00 4d 00 75 00 73 00 69 00 63 00 2f 00 46 00 30 |.M.u.s.i.c./.F.0|
00000fa0 00 30 00 2f 00 43 00 51 00 4c 00 4a 00 2e 00 6d |.0./.C.Q.L.J...m|
00000fb0 00 70 00 33 00 00 00 00 00 00 00 00 00 00 00 00 |.p.3............|
00000fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00001170 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 |................|
00001180 00 00 00 02 2e 5a a5 01 00 00 00 00 00 00 00 00 |.....Z..........|
00001190 00 00 00 00 00 00 00 00 00 00 ff ff f5 00 00 01 |................|
000011a0 00 02 00 2f 00 69 00 50 00 6f 00 64 00 5f 00 43 |.../.i.P.o.d._.C|
000011b0 00 6f 00 6e 00 74 00 72 00 6f 00 6c 00 2f 00 4d |.o.n.t.r.o.l./.M|
000011c0 00 75 00 73 00 69 00 63 00 2f 00 46 00 30 00 32 |.u.s.i.c./.F.0.2|
000011d0 00 2f 00 55 00 58 00 47 00 44 00 2e 00 6d 00 70 |./.U.X.G.D...m.p|
000011e0 00 33 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |.3..............|
000011f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
000013a0 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 |................|
000013b0
_______________________________________________
Bug-gnupod mailing list
Bug-gnupod@nongnu.org
http://lists.nongnu.org/mailman/listinfo/bug-gnupod