55 db = strtol(
value, &fraction, 0);
56 if (*fraction++ ==
'.') {
58 mb += scale * (*fraction -
'0');
64 if (
abs(db) > (INT32_MAX -
mb) / 100000)
67 return db * 100000 + sign *
mb;
75 if (
tg == INT32_MIN && ag == INT32_MIN)
@ AV_PKT_DATA_REPLAYGAIN
This side data should be associated with an audio stream and contains ReplayGain information in form ...
uint8_t * av_stream_new_side_data(AVStream *stream, enum AVPacketSideDataType type, size_t size)
Allocate new information from stream.
AVDictionaryEntry * av_dict_get(const AVDictionary *m, const char *key, const AVDictionaryEntry *prev, int flags)
Get a dictionary entry with matching key.
static av_const int av_isdigit(int c)
Locale-independent conversion of ASCII isdigit.
common internal API header
Memory handling functions.
int ff_replaygain_export(AVStream *st, AVDictionary *metadata)
Parse replaygain tags and export them as per-stream side data.
int ff_replaygain_export_raw(AVStream *st, int32_t tg, uint32_t tp, int32_t ag, uint32_t ap)
Export already decoded replaygain values as per-stream side data.
static int32_t parse_value(const char *value, int32_t min)
ReplayGain information (see http://wiki.hydrogenaudio.org/index.php?title=ReplayGain_1....
uint32_t track_peak
Peak track amplitude, with 100000 representing full scale (but values may overflow).
uint32_t album_peak
Same as track_peak, but for the whole album,.
int32_t track_gain
Track replay gain in microbels (divide by 100000 to get the value in dB).
int32_t album_gain
Same as track_gain, but for the whole album.