Commit 15c5a8d2 authored by Anton Khirnov's avatar Anton Khirnov

mp3dec: export replaygain tags from ID3v2

parent 06c3cd3c
...@@ -4,6 +4,7 @@ releases are sorted from youngest to oldest. ...@@ -4,6 +4,7 @@ releases are sorted from youngest to oldest.
version <next>: version <next>:
- libx265 encoder - libx265 encoder
- shuffleplanes filter - shuffleplanes filter
- replaygain data export
version 10: version 10:
......
...@@ -182,7 +182,7 @@ OBJS-$(CONFIG_MOV_DEMUXER) += mov.o isom.o mov_chan.o ...@@ -182,7 +182,7 @@ OBJS-$(CONFIG_MOV_DEMUXER) += mov.o isom.o mov_chan.o
OBJS-$(CONFIG_MOV_MUXER) += movenc.o isom.o avc.o hevc.o \ OBJS-$(CONFIG_MOV_MUXER) += movenc.o isom.o avc.o hevc.o \
movenchint.o mov_chan.o movenchint.o mov_chan.o
OBJS-$(CONFIG_MP2_MUXER) += mp3enc.o rawenc.o id3v2enc.o OBJS-$(CONFIG_MP2_MUXER) += mp3enc.o rawenc.o id3v2enc.o
OBJS-$(CONFIG_MP3_DEMUXER) += mp3dec.o OBJS-$(CONFIG_MP3_DEMUXER) += mp3dec.o replaygain.o
OBJS-$(CONFIG_MP3_MUXER) += mp3enc.o rawenc.o id3v2enc.o OBJS-$(CONFIG_MP3_MUXER) += mp3enc.o rawenc.o id3v2enc.o
OBJS-$(CONFIG_MPC_DEMUXER) += mpc.o apetag.o img2.o OBJS-$(CONFIG_MPC_DEMUXER) += mpc.o apetag.o img2.o
OBJS-$(CONFIG_MPC8_DEMUXER) += mpc8.o apetag.o img2.o OBJS-$(CONFIG_MPC8_DEMUXER) += mpc8.o apetag.o img2.o
......
...@@ -27,6 +27,8 @@ ...@@ -27,6 +27,8 @@
#include "internal.h" #include "internal.h"
#include "id3v2.h" #include "id3v2.h"
#include "id3v1.h" #include "id3v1.h"
#include "replaygain.h"
#include "libavcodec/mpegaudiodecheader.h" #include "libavcodec/mpegaudiodecheader.h"
#define XING_FLAG_FRAMES 0x01 #define XING_FLAG_FRAMES 0x01
...@@ -194,6 +196,7 @@ static int mp3_read_header(AVFormatContext *s) ...@@ -194,6 +196,7 @@ static int mp3_read_header(AVFormatContext *s)
{ {
AVStream *st; AVStream *st;
int64_t off; int64_t off;
int ret;
st = avformat_new_stream(s, NULL); st = avformat_new_stream(s, NULL);
if (!st) if (!st)
...@@ -215,6 +218,10 @@ static int mp3_read_header(AVFormatContext *s) ...@@ -215,6 +218,10 @@ static int mp3_read_header(AVFormatContext *s)
if (mp3_parse_vbr_tags(s, st, off) < 0) if (mp3_parse_vbr_tags(s, st, off) < 0)
avio_seek(s->pb, off, SEEK_SET); avio_seek(s->pb, off, SEEK_SET);
ret = ff_replaygain_export(st, s->metadata);
if (ret < 0)
return ret;
/* the parameters will be extracted from the compressed bitstream */ /* the parameters will be extracted from the compressed bitstream */
return 0; return 0;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment