IPB

Welcome Guest ( Log In | Register )

> foobar2000 Development Forum Rules

This forum is for developer discussions only. If you have a problem / bug report / idea / feature request that isn't related to foobar2000 SDK, post it in an appropiate forum instead - tech support questions go to support forum, everything else goes to general forum.
All non-developer posts on this forum will be removed. Continued abuse of this forum will result in admin actions (warnings, account suspension).

Convert replaygain to iTunes/iPod volume?, Can this be done & does it make sense?
davelasker
post Aug 1 2004, 22:39
Post #1





Group: Members
Posts: 123
Joined: 1-August 04
From: San Francisco
Member No.: 15951



I'm an experienced Windows programmer, but a digital audio newbie and also a new iPod owner. I'm trying to normalize playback volume through my iPod.

I tried Apple's Sound Check and didn't like the results. Just turning Sound Check on in the iPod makes its output sound terrible, even before any normalization was done in iTunes.

I'm looking for something like iVolume (Mac-only AFAIK) for Windows that manipulates the volume for each track. I'd like to take a crack at building a fb2k plug-in to do this.

I looked at foo_pod, but it seems they are going the Sound Check route. I'm suffering from the delusion that manipulating volume will give better results than Sound Check. Any truth to this?

Info I'm looking for includes:
a) Where & how is the Volume stored in an Apple .mp4 file? Or is it in the iTunes DB? Any pointers to docs on this would be apprecated.
b) Or would it be easier to use the QuickTime API to set the volume?
c) In either case, how are the replaygain db levels mapped to Apple volume levels???
d) Any other forums where I should be asking this question?

Thanks for the help!

Dave

This post has been edited by davelasker: Aug 1 2004, 22:40
Go to the top of the page
+Quote Post
 
Start new topic
Replies
Aero
post Aug 1 2004, 23:51
Post #2





Group: Members
Posts: 836
Joined: 20-December 02
Member No.: 4166



QUOTE (davelasker @ Aug 1 2004, 03:39 PM)
I'm an experienced Windows programmer, but a digital audio newbie and also a new iPod owner. I'm trying to normalize playback volume through my iPod.

I tried Apple's Sound Check and didn't like the results. Just turning Sound Check on in the iPod makes its output sound terrible, even before any normalization was done in iTunes.

I'm looking for something like iVolume (Mac-only AFAIK) for Windows that manipulates the volume for each track. I'd like to take a crack at building a fb2k plug-in to do this.

I looked at foo_pod, but it seems they are going the Sound Check route. I'm suffering from the delusion that manipulating volume will give better results than Sound Check. Any truth to this?

There are two ways to manipulate the volume of songs on the iPod. The first is the way done by EUPod and foo_pod's "Volume Adjustment" preference item. This boosts the volume only, since as of iPod firmware version 2.2 (at least), there is no way to lower the volume. This is really only useful for compensating for volume limited iPods, such as those sold in Europe.

Edit: My mistake - you actually can lower the volume. I could have sworn it didn't work at one point, just I just did a quick test, and in fact, it does work on the iPod (3G, version 2.2). The range is -255 to 255, so since this is an unsigned 32 bit value, the lowest volume (i.e. silence) is 4,294,967,041.

The second way is through the SoundCheck entry in the iTunesDB. I'm not sure what you mean by "manipulating volume will give better results than Sound Check", but the SoundCheck field in the iPod database is just a means of having fine control over the output volume. foo_pod uses ReplayGain to calculate this value, but you can set this value however you wish. The only downside (and this can be an upside as well), is that SoundCheck needs to be enabled on the iPod for the volume adjustment to be active.

Actually, I think I do understand. What the author of iVolume means by it being better than SoundCheck is that he feels that ReplayGain (which iVolume uses) is a better algorithm than the SoundCheck algorithm used in iTunes. Which is basically correct, since ReplayGain can calculate the volume of an entire album, whereas SoundCheck in iTunes just does per-track gain.

Note that "SoundCheck" in the iTunesDB is just an unsigned integer value representing the volume gain adjustment in milliWatts, while "SoundCheck" in iTunes is Apple's ReplayGain equivalent.


QUOTE
Info I'm looking for includes:
a) Where & how is the Volume stored in an Apple .mp4 file? Or is it in the iTunes DB? Any pointers to docs on this would be apprecated.

I don't know about the MP4 container and if it has any volume field, but iTunes uses a field in the iTunesDB. Download iPodDB and look at iPod_mhit::soundcheck.

QUOTE
b) Or would it be easier to use the QuickTime API to set the volume?

I can't imagine it would be easier than setting the SoundCheck value in the iTunesDB, and it would modify your song.

QUOTE
c) In either case, how are the replaygain db levels mapped to Apple volume levels???

The C code for converting ReplayGain to SoundCheck is: soundcheck = 1000 * pow(10.0, (-0.1 * gain))


Feel free to contact me if you have any other questions, but from what I understand, foo_pod already done exactly what you are looking for.

This post has been edited by Aero: Aug 2 2004, 01:02
Go to the top of the page
+Quote Post

Posts in this topic
- davelasker   Convert replaygain to iTunes/iPod volume?   Aug 1 2004, 22:39
- - Aero   QUOTE (davelasker @ Aug 1 2004, 03:39 PM)I...   Aug 1 2004, 23:51
|- - davelasker   Thanks for the quick and detailed reply. I see in...   Aug 2 2004, 01:50
|- - Aero   QUOTE (davelasker @ Aug 1 2004, 06:50 PM)I se...   Aug 2 2004, 02:10
|- - Otto42   QUOTE (davelasker @ Aug 1 2004, 07:50 PM)I wa...   Aug 4 2004, 17:06
|- - davelasker   When I first got my iPod, I intended to use soundc...   Aug 9 2004, 19:03
- - JohanDeBock   This is something I just made for people that stil...   Mar 21 2006, 18:17
|- - SNAG   QUOTE (JohanDeBock @ Mar 21 2006, 09:17 A...   Apr 13 2006, 04:42
||- - david_dl   QUOTE (SNAG @ Apr 13 2006, 04:42 PM) Just...   Apr 13 2006, 04:56
||- - JohanDeBock   QUOTE (david_dl @ Apr 13 2006, 05:56 AM) ...   Apr 13 2006, 08:32
||- - SNAG   QUOTE (JohanDeBock @ Apr 12 2006, 11:32 P...   Apr 13 2006, 18:48
|- - incripshin   For those who use linux, or have cygwin installed,...   Sep 21 2006, 05:21
- - foosion   MS-DOS wouldn't help, but cmd.exe will do. T...   Apr 13 2006, 19:19
- - JohanDeBock   An extra tip, you should place the directory locat...   Apr 14 2006, 11:09
|- - SNAG   QUOTE (JohanDeBock @ Apr 14 2006, 02:09 A...   May 2 2006, 13:47
|- - JohanDeBock   QUOTE (SNAG @ May 2 2006, 02:47 PM) EDIT:...   May 3 2006, 13:19
- - magnusak   I run the utility to convert replay gain to Sound ...   May 31 2006, 11:40
|- - JohanDeBock   QUOTE (magnusak @ May 31 2006, 12:40) I r...   May 31 2006, 21:27
|- - magnusak   QUOTE (JohanDeBock @ May 31 2006, 21:27) ...   Jun 1 2006, 09:39
|- - JohanDeBock   QUOTE (magnusak @ Jun 1 2006, 10:39) QUOT...   Jun 1 2006, 09:59
|- - magnusak   QUOTE (JohanDeBock @ Jun 1 2006, 09:59) Q...   Jun 1 2006, 17:10
|- - JohanDeBock   QUOTE (magnusak @ Jun 1 2006, 18:10) Is t...   Jun 1 2006, 19:51
|- - Otto42   QUOTE (magnusak @ Jun 1 2006, 11:10) By t...   Jun 2 2006, 17:38
|- - magnusak   QUOTE (Otto42 @ Jun 2 2006, 17:38) Edit: ...   Jun 5 2006, 07:55
|- - Mike Giacomelli   QUOTE (Otto42 @ Jun 2 2006, 09:38) QUOTE ...   Jun 6 2006, 20:29
- - =trott=   I've been looking for a while now to remove so...   Jun 2 2006, 21:38
- - dano   It's just a comment frame with the description...   Jun 7 2006, 00:55
- - Skates   What's this certain way of adding the dummy ta...   Aug 18 2006, 21:14
- - dano   Ok, some time has passed and it has become a bit e...   Aug 18 2006, 22:09
|- - W.A.B.   QUOTE (dano @ Aug 18 2006, 15:09) Ok, som...   Sep 25 2006, 17:06
- - karl_lillevold   It's too bad ipodrg does not work with MPEG4 t...   Dec 9 2006, 00:21
- - dano   It's now also possible to use only Mp3tag for ...   Dec 20 2006, 15:22
|- - Prodoc   QUOTE (dano @ Dec 20 2006, 15:22) It...   Dec 20 2006, 15:55
|- - karl_lillevold   QUOTE (dano @ Dec 20 2006, 06:22) It...   Jan 1 2007, 22:16
- - dano   I currently have iTunes 7.0.2.16 1) It reads the ...   Jan 2 2007, 00:26
|- - karl_lillevold   dano: I think my "Replace with regular expres...   Jan 2 2007, 00:52
- - dano   Ok I've uploaded the 4 possible actions here. ...   Jan 2 2007, 01:43
- - karl_lillevold   Excellent. Everything works fine now. Thanks!   Jan 2 2007, 01:53
|- - LadFromDownUnder   So let's say I wanted to do the following: 1....   Jan 7 2007, 10:31
- - riffmaker   QUOTE (JohanDeBock @ Apr 14 2006, 04:09) ...   Feb 13 2007, 20:23
|- - swyn   QUOTE (riffmaker @ Feb 13 2007, 15:23) QU...   Apr 18 2007, 04:24
- - dhartson   I was having trouble running ipodrg from the comma...   Jan 11 2008, 12:12


Reply to this topicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 



RSS Lo-Fi Version Time is now: 16th September 2014 - 22:43