Browse Source

Add a VorbisComment metadata conversion table and use it in the FLAC and

Ogg demuxers.

Originally committed as revision 19186 to svn://svn.ffmpeg.org/ffmpeg/trunk
tags/v0.6
Justin Ruggles 16 years ago
parent
commit
d7bb185f99
4 changed files with 20 additions and 0 deletions
  1. +1
    -0
      libavformat/flacdec.c
  2. +1
    -0
      libavformat/oggdec.c
  3. +3
    -0
      libavformat/oggdec.h
  4. +15
    -0
      libavformat/oggparsevorbis.c

+ 1
- 0
libavformat/flacdec.c View File

@@ -146,4 +146,5 @@ AVInputFormat flac_demuxer = {
.flags= AVFMT_GENERIC_INDEX,
.extensions = "flac",
.value = CODEC_ID_FLAC,
.metadata_conv = ff_vorbiscomment_metadata_conv,
};

+ 1
- 0
libavformat/oggdec.c View File

@@ -583,4 +583,5 @@ AVInputFormat ogg_demuxer = {
NULL,
ogg_read_timestamp,
.extensions = "ogg",
.metadata_conv = ff_vorbiscomment_metadata_conv,
};

+ 3
- 0
libavformat/oggdec.h View File

@@ -26,6 +26,7 @@
#define AVFORMAT_OGGDEC_H

#include "avformat.h"
#include "metadata.h"

struct ogg_codec {
const int8_t *magic;
@@ -91,6 +92,8 @@ extern const struct ogg_codec ff_speex_codec;
extern const struct ogg_codec ff_theora_codec;
extern const struct ogg_codec ff_vorbis_codec;

extern const AVMetadataConv ff_vorbiscomment_metadata_conv[];

int vorbis_comment(AVFormatContext *ms, uint8_t *buf, int size);

#endif /* AVFORMAT_OGGDEC_H */

+ 15
- 0
libavformat/oggparsevorbis.c View File

@@ -30,6 +30,21 @@
#include "avformat.h"
#include "oggdec.h"

/**
* VorbisComment metadata conversion mapping.
* from Ogg Vorbis I format specification: comment field and header specification
* http://xiph.org/vorbis/doc/v-comment.html
*/
const AVMetadataConv ff_vorbiscomment_metadata_conv[] = {
{ "ARTIST" , "author" },
{ "TITLE" , "title" },
{ "ALBUM" , "album" },
{ "DATE" , "year" },
{ "TRACKNUMBER", "track" },
{ "GENRE" , "genre" },
{ 0 }
};

int
vorbis_comment(AVFormatContext * as, uint8_t *buf, int size)
{


Loading…
Cancel
Save