TagLib: Read MP4 ReplayGain tags as foobar2000 writes them, not just as EZ CD Audio Converter writes them
parent
5bf5830b17
commit
ae10e3e75b
|
@ -797,6 +797,8 @@ MP4::Tag::cuesheet() const
|
||||||
float
|
float
|
||||||
MP4::Tag::rgAlbumGain() const
|
MP4::Tag::rgAlbumGain() const
|
||||||
{
|
{
|
||||||
|
if(d->items.contains("----:com.apple.iTunes:replaygain_album_gain"))
|
||||||
|
return d->items["----:com.apple.iTunes:replaygain_album_gain"].toStringList()[0].toFloat();
|
||||||
if(d->items.contains("----:org.hydrogenaudio.replaygain:replaygain_album_gain"))
|
if(d->items.contains("----:org.hydrogenaudio.replaygain:replaygain_album_gain"))
|
||||||
return d->items["----:org.hydrogenaudio.replaygain:replaygain_album_gain"].toStringList()[0].toFloat();
|
return d->items["----:org.hydrogenaudio.replaygain:replaygain_album_gain"].toStringList()[0].toFloat();
|
||||||
return 0;
|
return 0;
|
||||||
|
@ -805,6 +807,8 @@ MP4::Tag::rgAlbumGain() const
|
||||||
float
|
float
|
||||||
MP4::Tag::rgAlbumPeak() const
|
MP4::Tag::rgAlbumPeak() const
|
||||||
{
|
{
|
||||||
|
if(d->items.contains("----:com.apple.iTunes:replaygain_album_peak"))
|
||||||
|
return d->items["----:com.apple.iTunes:replaygain_album_peak"].toStringList()[0].toFloat();
|
||||||
if(d->items.contains("----:org.hydrogenaudio.replaygain:replaygain_album_peak"))
|
if(d->items.contains("----:org.hydrogenaudio.replaygain:replaygain_album_peak"))
|
||||||
return d->items["----:org.hydrogenaudio.replaygain:replaygain_album_peak"].toStringList()[0].toFloat();
|
return d->items["----:org.hydrogenaudio.replaygain:replaygain_album_peak"].toStringList()[0].toFloat();
|
||||||
return 0;
|
return 0;
|
||||||
|
@ -813,6 +817,8 @@ MP4::Tag::rgAlbumPeak() const
|
||||||
float
|
float
|
||||||
MP4::Tag::rgTrackGain() const
|
MP4::Tag::rgTrackGain() const
|
||||||
{
|
{
|
||||||
|
if(d->items.contains("----:com.apple.iTunes:replaygain_track_gain"))
|
||||||
|
return d->items["----:com.apple.iTunes:replaygain_track_gain"].toStringList()[0].toFloat();
|
||||||
if(d->items.contains("----:org.hydrogenaudio.replaygain:replaygain_track_gain"))
|
if(d->items.contains("----:org.hydrogenaudio.replaygain:replaygain_track_gain"))
|
||||||
return d->items["----:org.hydrogenaudio.replaygain:replaygain_track_gain"].toStringList()[0].toFloat();
|
return d->items["----:org.hydrogenaudio.replaygain:replaygain_track_gain"].toStringList()[0].toFloat();
|
||||||
return 0;
|
return 0;
|
||||||
|
@ -821,6 +827,8 @@ MP4::Tag::rgTrackGain() const
|
||||||
float
|
float
|
||||||
MP4::Tag::rgTrackPeak() const
|
MP4::Tag::rgTrackPeak() const
|
||||||
{
|
{
|
||||||
|
if(d->items.contains("----:com.apple.iTunes:replaygain_track_peak"))
|
||||||
|
return d->items["----:com.apple.iTunes:replaygain_track_peak"].toStringList()[0].toFloat();
|
||||||
if(d->items.contains("----:org.hydrogenaudio.replaygain:replaygain_track_peak"))
|
if(d->items.contains("----:org.hydrogenaudio.replaygain:replaygain_track_peak"))
|
||||||
return d->items["----:org.hydrogenaudio.replaygain:replaygain_track_peak"].toStringList()[0].toFloat();
|
return d->items["----:org.hydrogenaudio.replaygain:replaygain_track_peak"].toStringList()[0].toFloat();
|
||||||
return 0;
|
return 0;
|
||||||
|
@ -913,25 +921,25 @@ MP4::Tag::setCuesheet(const String &)
|
||||||
void
|
void
|
||||||
MP4::Tag::setRGAlbumGain(float f)
|
MP4::Tag::setRGAlbumGain(float f)
|
||||||
{
|
{
|
||||||
setTextItem("----:org.hydrogenaudio.replaygain:replaygain_album_gain", String::number(f) + " dB");
|
setTextItem("----:com.apple.iTunes:replaygain_album_gain", String::number(f) + " dB");
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
MP4::Tag::setRGAlbumPeak(float f)
|
MP4::Tag::setRGAlbumPeak(float f)
|
||||||
{
|
{
|
||||||
setTextItem("----:org.hydrogenaudio.replaygain:replaygain_album_peak", String::number(f));
|
setTextItem("----:com.apple.iTunes:replaygain_album_peak", String::number(f));
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
MP4::Tag::setRGTrackGain(float f)
|
MP4::Tag::setRGTrackGain(float f)
|
||||||
{
|
{
|
||||||
setTextItem("----:org.hydrogenaudio.replaygain:replaygain_track_gain", String::number(f) + " dB");
|
setTextItem("----:com.apple.iTunes:replaygain_track_gain", String() + ((f >= 0) ? "+" : "") + String::number(f) + " dB");
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
MP4::Tag::setRGTrackPeak(float f)
|
MP4::Tag::setRGTrackPeak(float f)
|
||||||
{
|
{
|
||||||
setTextItem("----:org.hydrogenaudio.replaygain:replaygain_track_peak", String::number(f));
|
setTextItem("----:com.apple.iTunes:replaygain_track_peak", String::number(f));
|
||||||
}
|
}
|
||||||
|
|
||||||
bool MP4::Tag::isEmpty() const
|
bool MP4::Tag::isEmpty() const
|
||||||
|
@ -1014,6 +1022,10 @@ namespace
|
||||||
{ "----:org.hydrogenaudio.replaygain:replaygain_track_peak", "REPLAYGAIN_TRACK_PEAK" },
|
{ "----:org.hydrogenaudio.replaygain:replaygain_track_peak", "REPLAYGAIN_TRACK_PEAK" },
|
||||||
{ "----:org.hydrogenaudio.replaygain:replaygain_album_gain", "REPLAYGAIN_ALBUM_GAIN" },
|
{ "----:org.hydrogenaudio.replaygain:replaygain_album_gain", "REPLAYGAIN_ALBUM_GAIN" },
|
||||||
{ "----:org.hydrogenaudio.replaygain:replaygain_album_peak", "REPLAYGAIN_ALBUM_PEAK" },
|
{ "----:org.hydrogenaudio.replaygain:replaygain_album_peak", "REPLAYGAIN_ALBUM_PEAK" },
|
||||||
|
{ "----:com.apple.iTunes:replaygain_track_gain", "REPLAYGAIN_TRACK_GAIN" },
|
||||||
|
{ "----:com.apple.iTunes:replaygain_track_peak", "REPLAYGAIN_TRACK_PEAK" },
|
||||||
|
{ "----:com.apple.iTunes:replaygain_album_gain", "REPLAYGAIN_ALBUM_GAIN" },
|
||||||
|
{ "----:com.apple.iTunes:replaygain_album_peak", "REPLAYGAIN_ALBUM_PEAK" },
|
||||||
{ "----:com.apple.iTunes:MusicBrainz Track Id", "MUSICBRAINZ_TRACKID" },
|
{ "----:com.apple.iTunes:MusicBrainz Track Id", "MUSICBRAINZ_TRACKID" },
|
||||||
{ "----:com.apple.iTunes:MusicBrainz Artist Id", "MUSICBRAINZ_ARTISTID" },
|
{ "----:com.apple.iTunes:MusicBrainz Artist Id", "MUSICBRAINZ_ARTISTID" },
|
||||||
{ "----:com.apple.iTunes:MusicBrainz Album Id", "MUSICBRAINZ_ALBUMID" },
|
{ "----:com.apple.iTunes:MusicBrainz Album Id", "MUSICBRAINZ_ALBUMID" },
|
||||||
|
@ -1045,6 +1057,7 @@ namespace
|
||||||
{ "----:com.apple.iTunes:LANGUAGE", "LANGUAGE" },
|
{ "----:com.apple.iTunes:LANGUAGE", "LANGUAGE" },
|
||||||
{ "----:com.apple.iTunes:LICENSE", "LICENSE" },
|
{ "----:com.apple.iTunes:LICENSE", "LICENSE" },
|
||||||
{ "----:com.apple.iTunes:MEDIA", "MEDIA" },
|
{ "----:com.apple.iTunes:MEDIA", "MEDIA" },
|
||||||
|
{ "----:com.apple.iTunes:iTunNORM", "SOUNDCHECK" },
|
||||||
};
|
};
|
||||||
const size_t keyTranslationSize = sizeof(keyTranslation) / sizeof(keyTranslation[0]);
|
const size_t keyTranslationSize = sizeof(keyTranslation) / sizeof(keyTranslation[0]);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue