Browse Source

avformat/id3v2: Remove unnecessary indirection

ff_id3v2_parse_apic/chapters/priv/priv_dict all had a parameter
extra_meta of type ID3v2ExtraMeta ** as if the functions wanted to make
*extra_meta point to something else. But they don't, so just use an
ID3v2ExtraMeta *.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
tags/n4.3
Andreas Rheinhardt 5 years ago
parent
commit
37140ebd87
12 changed files with 33 additions and 33 deletions
  1. +1
    -1
      libavformat/aacdec.c
  2. +2
    -2
      libavformat/aiffdec.c
  3. +2
    -2
      libavformat/asfdec_f.c
  4. +2
    -2
      libavformat/asfdec_o.c
  5. +2
    -2
      libavformat/dsfdec.c
  6. +4
    -4
      libavformat/hls.c
  7. +7
    -7
      libavformat/id3v2.c
  8. +4
    -4
      libavformat/id3v2.h
  9. +2
    -2
      libavformat/iff.c
  10. +1
    -1
      libavformat/omadec.c
  11. +3
    -3
      libavformat/utils.c
  12. +3
    -3
      libavformat/wavdec.c

+ 1
- 1
libavformat/aacdec.c View File

@@ -146,7 +146,7 @@ static int handle_id3(AVFormatContext *s, AVPacket *pkt)

ffio_init_context(&ioctx, pkt->data, pkt->size, 0, NULL, NULL, NULL, NULL);
ff_id3v2_read_dict(&ioctx, &metadata, ID3v2_DEFAULT_MAGIC, &id3v2_extra_meta);
if ((ret = ff_id3v2_parse_priv_dict(&metadata, &id3v2_extra_meta)) < 0)
if ((ret = ff_id3v2_parse_priv_dict(&metadata, id3v2_extra_meta)) < 0)
goto error;

if (metadata) {


+ 2
- 2
libavformat/aiffdec.c View File

@@ -261,8 +261,8 @@ static int aiff_read_header(AVFormatContext *s)
position = avio_tell(pb);
ff_id3v2_read(s, ID3v2_DEFAULT_MAGIC, &id3v2_extra_meta, size);
if (id3v2_extra_meta)
if ((ret = ff_id3v2_parse_apic(s, &id3v2_extra_meta)) < 0 ||
(ret = ff_id3v2_parse_chapters(s, &id3v2_extra_meta)) < 0) {
if ((ret = ff_id3v2_parse_apic(s, id3v2_extra_meta)) < 0 ||
(ret = ff_id3v2_parse_chapters(s, id3v2_extra_meta)) < 0) {
ff_id3v2_free_extra_meta(&id3v2_extra_meta);
return ret;
}


+ 2
- 2
libavformat/asfdec_f.c View File

@@ -308,8 +308,8 @@ static void get_id3_tag(AVFormatContext *s, int len)

ff_id3v2_read(s, ID3v2_DEFAULT_MAGIC, &id3v2_extra_meta, len);
if (id3v2_extra_meta) {
ff_id3v2_parse_apic(s, &id3v2_extra_meta);
ff_id3v2_parse_chapters(s, &id3v2_extra_meta);
ff_id3v2_parse_apic(s, id3v2_extra_meta);
ff_id3v2_parse_chapters(s, id3v2_extra_meta);
}
ff_id3v2_free_extra_meta(&id3v2_extra_meta);
}


+ 2
- 2
libavformat/asfdec_o.c View File

@@ -461,8 +461,8 @@ static void get_id3_tag(AVFormatContext *s, int len)

ff_id3v2_read(s, ID3v2_DEFAULT_MAGIC, &id3v2_extra_meta, len);
if (id3v2_extra_meta) {
ff_id3v2_parse_apic(s, &id3v2_extra_meta);
ff_id3v2_parse_chapters(s, &id3v2_extra_meta);
ff_id3v2_parse_apic(s, id3v2_extra_meta);
ff_id3v2_parse_chapters(s, id3v2_extra_meta);
}
ff_id3v2_free_extra_meta(&id3v2_extra_meta);
}


+ 2
- 2
libavformat/dsfdec.c View File

@@ -56,8 +56,8 @@ static void read_id3(AVFormatContext *s, uint64_t id3pos)

ff_id3v2_read(s, ID3v2_DEFAULT_MAGIC, &id3v2_extra_meta, 0);
if (id3v2_extra_meta) {
ff_id3v2_parse_apic(s, &id3v2_extra_meta);
ff_id3v2_parse_chapters(s, &id3v2_extra_meta);
ff_id3v2_parse_apic(s, id3v2_extra_meta);
ff_id3v2_parse_chapters(s, id3v2_extra_meta);
}
ff_id3v2_free_extra_meta(&id3v2_extra_meta);
}


+ 4
- 4
libavformat/hls.c View File

@@ -1070,12 +1070,12 @@ static void handle_id3(AVIOContext *pb, struct playlist *pls)

/* get picture attachment and set text metadata */
if (pls->ctx->nb_streams)
ff_id3v2_parse_apic(pls->ctx, &extra_meta);
ff_id3v2_parse_apic(pls->ctx, extra_meta);
else
/* demuxer not yet opened, defer picture attachment */
pls->id3_deferred_extra = extra_meta;

ff_id3v2_parse_priv_dict(&metadata, &extra_meta);
ff_id3v2_parse_priv_dict(&metadata, extra_meta);
av_dict_copy(&pls->ctx->metadata, metadata, 0);
pls->id3_initial = metadata;

@@ -1965,9 +1965,9 @@ static int hls_read_header(AVFormatContext *s)
goto fail;

if (pls->id3_deferred_extra && pls->ctx->nb_streams == 1) {
ff_id3v2_parse_apic(pls->ctx, &pls->id3_deferred_extra);
ff_id3v2_parse_apic(pls->ctx, pls->id3_deferred_extra);
avformat_queue_attached_pictures(pls->ctx);
ff_id3v2_parse_priv(pls->ctx, &pls->id3_deferred_extra);
ff_id3v2_parse_priv(pls->ctx, pls->id3_deferred_extra);
ff_id3v2_free_extra_meta(&pls->id3_deferred_extra);
}



+ 7
- 7
libavformat/id3v2.c View File

@@ -1127,11 +1127,11 @@ void ff_id3v2_free_extra_meta(ID3v2ExtraMeta **extra_meta)
*extra_meta = NULL;
}

int ff_id3v2_parse_apic(AVFormatContext *s, ID3v2ExtraMeta **extra_meta)
int ff_id3v2_parse_apic(AVFormatContext *s, ID3v2ExtraMeta *extra_meta)
{
ID3v2ExtraMeta *cur;

for (cur = *extra_meta; cur; cur = cur->next) {
for (cur = extra_meta; cur; cur = cur->next) {
ID3v2ExtraMetaAPIC *apic;
AVStream *st;

@@ -1167,7 +1167,7 @@ int ff_id3v2_parse_apic(AVFormatContext *s, ID3v2ExtraMeta **extra_meta)
return 0;
}

int ff_id3v2_parse_chapters(AVFormatContext *s, ID3v2ExtraMeta **extra_meta)
int ff_id3v2_parse_chapters(AVFormatContext *s, ID3v2ExtraMeta *extra_meta)
{
int ret = 0;
ID3v2ExtraMeta *cur;
@@ -1178,7 +1178,7 @@ int ff_id3v2_parse_chapters(AVFormatContext *s, ID3v2ExtraMeta **extra_meta)

// since extra_meta is a linked list where elements are prepended,
// we need to reverse the order of chapters
for (cur = *extra_meta; cur; cur = cur->next) {
for (cur = extra_meta; cur; cur = cur->next) {
ID3v2ExtraMetaCHAP *chap;

if (strcmp(cur->tag, "CHAP"))
@@ -1218,12 +1218,12 @@ end:
return ret;
}

int ff_id3v2_parse_priv_dict(AVDictionary **metadata, ID3v2ExtraMeta **extra_meta)
int ff_id3v2_parse_priv_dict(AVDictionary **metadata, ID3v2ExtraMeta *extra_meta)
{
ID3v2ExtraMeta *cur;
int dict_flags = AV_DICT_DONT_OVERWRITE | AV_DICT_DONT_STRDUP_KEY | AV_DICT_DONT_STRDUP_VAL;

for (cur = *extra_meta; cur; cur = cur->next) {
for (cur = extra_meta; cur; cur = cur->next) {
if (!strcmp(cur->tag, "PRIV")) {
ID3v2ExtraMetaPRIV *priv = &cur->data.priv;
AVBPrint bprint;
@@ -1258,7 +1258,7 @@ int ff_id3v2_parse_priv_dict(AVDictionary **metadata, ID3v2ExtraMeta **extra_met
return 0;
}

int ff_id3v2_parse_priv(AVFormatContext *s, ID3v2ExtraMeta **extra_meta)
int ff_id3v2_parse_priv(AVFormatContext *s, ID3v2ExtraMeta *extra_meta)
{
return ff_id3v2_parse_priv_dict(&s->metadata, extra_meta);
}

+ 4
- 4
libavformat/id3v2.h View File

@@ -167,25 +167,25 @@ void ff_id3v2_free_extra_meta(ID3v2ExtraMeta **extra_meta);
* Create a stream for each APIC (attached picture) extracted from the
* ID3v2 header.
*/
int ff_id3v2_parse_apic(AVFormatContext *s, ID3v2ExtraMeta **extra_meta);
int ff_id3v2_parse_apic(AVFormatContext *s, ID3v2ExtraMeta *extra_meta);

/**
* Create chapters for all CHAP tags found in the ID3v2 header.
*/
int ff_id3v2_parse_chapters(AVFormatContext *s, ID3v2ExtraMeta **extra_meta);
int ff_id3v2_parse_chapters(AVFormatContext *s, ID3v2ExtraMeta *extra_meta);

/**
* Parse PRIV tags into a dictionary. The PRIV owner is the metadata key. The
* PRIV data is the value, with non-printable characters escaped.
*/
int ff_id3v2_parse_priv_dict(AVDictionary **d, ID3v2ExtraMeta **extra_meta);
int ff_id3v2_parse_priv_dict(AVDictionary **d, ID3v2ExtraMeta *extra_meta);

/**
* Add metadata for all PRIV tags in the ID3v2 header. The PRIV owner is the
* metadata key. The PRIV data is the value, with non-printable characters
* escaped.
*/
int ff_id3v2_parse_priv(AVFormatContext *s, ID3v2ExtraMeta **extra_meta);
int ff_id3v2_parse_priv(AVFormatContext *s, ID3v2ExtraMeta *extra_meta);

extern const AVMetadataConv ff_id3v2_34_metadata_conv[];
extern const AVMetadataConv ff_id3v2_4_metadata_conv[];


+ 2
- 2
libavformat/iff.c View File

@@ -312,8 +312,8 @@ static int parse_dsd_prop(AVFormatContext *s, AVStream *st, uint64_t eof)
id3v2_extra_meta = NULL;
ff_id3v2_read(s, ID3v2_DEFAULT_MAGIC, &id3v2_extra_meta, size);
if (id3v2_extra_meta) {
if ((ret = ff_id3v2_parse_apic(s, &id3v2_extra_meta)) < 0 ||
(ret = ff_id3v2_parse_chapters(s, &id3v2_extra_meta)) < 0) {
if ((ret = ff_id3v2_parse_apic(s, id3v2_extra_meta)) < 0 ||
(ret = ff_id3v2_parse_chapters(s, id3v2_extra_meta)) < 0) {
ff_id3v2_free_extra_meta(&id3v2_extra_meta);
return ret;
}


+ 1
- 1
libavformat/omadec.c View File

@@ -396,7 +396,7 @@ static int oma_read_header(AVFormatContext *s)
OMAContext *oc = s->priv_data;

ff_id3v2_read(s, ID3v2_EA3_MAGIC, &extra_meta, 0);
if ((ret = ff_id3v2_parse_chapters(s, &extra_meta)) < 0) {
if ((ret = ff_id3v2_parse_chapters(s, extra_meta)) < 0) {
ff_id3v2_free_extra_meta(&extra_meta);
return ret;
}


+ 3
- 3
libavformat/utils.c View File

@@ -638,11 +638,11 @@ FF_ENABLE_DEPRECATION_WARNINGS
if (id3v2_extra_meta) {
if (!strcmp(s->iformat->name, "mp3") || !strcmp(s->iformat->name, "aac") ||
!strcmp(s->iformat->name, "tta") || !strcmp(s->iformat->name, "wav")) {
if ((ret = ff_id3v2_parse_apic(s, &id3v2_extra_meta)) < 0)
if ((ret = ff_id3v2_parse_apic(s, id3v2_extra_meta)) < 0)
goto close;
if ((ret = ff_id3v2_parse_chapters(s, &id3v2_extra_meta)) < 0)
if ((ret = ff_id3v2_parse_chapters(s, id3v2_extra_meta)) < 0)
goto close;
if ((ret = ff_id3v2_parse_priv(s, &id3v2_extra_meta)) < 0)
if ((ret = ff_id3v2_parse_priv(s, id3v2_extra_meta)) < 0)
goto close;
} else
av_log(s, AV_LOG_DEBUG, "demuxer does not support additional id3 data, skipping\n");


+ 3
- 3
libavformat/wavdec.c View File

@@ -507,9 +507,9 @@ static int wav_read_header(AVFormatContext *s)
ID3v2ExtraMeta *id3v2_extra_meta = NULL;
ff_id3v2_read_dict(pb, &s->internal->id3v2_meta, ID3v2_DEFAULT_MAGIC, &id3v2_extra_meta);
if (id3v2_extra_meta) {
ff_id3v2_parse_apic(s, &id3v2_extra_meta);
ff_id3v2_parse_chapters(s, &id3v2_extra_meta);
ff_id3v2_parse_priv(s, &id3v2_extra_meta);
ff_id3v2_parse_apic(s, id3v2_extra_meta);
ff_id3v2_parse_chapters(s, id3v2_extra_meta);
ff_id3v2_parse_priv(s, id3v2_extra_meta);
}
ff_id3v2_free_extra_meta(&id3v2_extra_meta);
}


Loading…
Cancel
Save