Browse Source

Move GUID-related objects to riffenc.c and riff.c.

This simplifies the following eac3-in-wav patch.
tags/n2.2-rc1
Carl Eugen Hoyos 11 years ago
parent
commit
862174ec83
8 changed files with 27 additions and 27 deletions
  1. +1
    -0
      configure
  2. +0
    -2
      libavformat/asf.h
  3. +0
    -6
      libavformat/asfenc.c
  4. +8
    -0
      libavformat/riff.c
  5. +2
    -0
      libavformat/riff.h
  6. +0
    -8
      libavformat/riffdec.c
  7. +16
    -0
      libavformat/riffenc.c
  8. +0
    -11
      libavformat/wtvenc.c

+ 1
- 0
configure View File

@@ -2247,6 +2247,7 @@ wav_demuxer_select="riffdec"
wav_muxer_select="riffenc" wav_muxer_select="riffenc"
webm_muxer_select="riffenc" webm_muxer_select="riffenc"
wtv_demuxer_select="riffdec" wtv_demuxer_select="riffdec"
wtv_muxer_select="riffenc"
xmv_demuxer_select="riffdec" xmv_demuxer_select="riffdec"
xwma_demuxer_select="riffdec" xwma_demuxer_select="riffdec"




+ 0
- 2
libavformat/asf.h View File

@@ -189,6 +189,4 @@ extern const AVMetadataConv ff_asf_metadata_conv[];


extern AVInputFormat ff_asf_demuxer; extern AVInputFormat ff_asf_demuxer;


void ff_put_guid(AVIOContext *s, const ff_asf_guid *g);

#endif /* AVFORMAT_ASF_H */ #endif /* AVFORMAT_ASF_H */

+ 0
- 6
libavformat/asfenc.c View File

@@ -223,12 +223,6 @@ static const AVCodecTag codec_asf_bmp_tags[] = {


#define PREROLL_TIME 3100 #define PREROLL_TIME 3100


void ff_put_guid(AVIOContext *s, const ff_asf_guid *g)
{
av_assert0(sizeof(*g) == 16);
avio_write(s, *g, sizeof(*g));
}

static void put_str16(AVIOContext *s, const char *tag) static void put_str16(AVIOContext *s, const char *tag)
{ {
int len; int len;


+ 8
- 0
libavformat/riff.c View File

@@ -456,3 +456,11 @@ const struct AVCodecTag *avformat_get_riff_audio_tags(void)
{ {
return ff_codec_wav_tags; return ff_codec_wav_tags;
} }

const AVCodecGuid ff_codec_wav_guids[] = {
{ AV_CODEC_ID_AC3, { 0x2C, 0x80, 0x6D, 0xE0, 0x46, 0xDB, 0xCF, 0x11, 0xB4, 0xD1, 0x00, 0x80, 0x5F, 0x6C, 0xBB, 0xEA } },
{ AV_CODEC_ID_ATRAC3P, { 0xBF, 0xAA, 0x23, 0xE9, 0x58, 0xCB, 0x71, 0x44, 0xA1, 0x19, 0xFF, 0xFA, 0x01, 0xE4, 0xCE, 0x62 } },
{ AV_CODEC_ID_EAC3, { 0xAF, 0x87, 0xFB, 0xA7, 0x02, 0x2D, 0xFB, 0x42, 0xA4, 0xD4, 0x05, 0xCD, 0x93, 0x84, 0x3B, 0xDD } },
{ AV_CODEC_ID_MP2, { 0x2B, 0x80, 0x6D, 0xE0, 0x46, 0xDB, 0xCF, 0x11, 0xB4, 0xD1, 0x00, 0x80, 0x5F, 0x6C, 0xBB, 0xEA } },
{ AV_CODEC_ID_NONE }
};

+ 2
- 0
libavformat/riff.h View File

@@ -92,6 +92,8 @@ static av_always_inline int ff_guidcmp(const void *g1, const void *g2)
} }


void ff_get_guid(AVIOContext *s, ff_asf_guid *g); void ff_get_guid(AVIOContext *s, ff_asf_guid *g);
void ff_put_guid(AVIOContext *s, const ff_asf_guid *g);
const ff_asf_guid *get_codec_guid(enum AVCodecID id, const AVCodecGuid *av_guid);


enum AVCodecID ff_codec_guid_get_id(const AVCodecGuid *guids, ff_asf_guid guid); enum AVCodecID ff_codec_guid_get_id(const AVCodecGuid *guids, ff_asf_guid guid);




+ 0
- 8
libavformat/riffdec.c View File

@@ -29,14 +29,6 @@
#include "avio_internal.h" #include "avio_internal.h"
#include "riff.h" #include "riff.h"


const AVCodecGuid ff_codec_wav_guids[] = {
{ AV_CODEC_ID_AC3, { 0x2C, 0x80, 0x6D, 0xE0, 0x46, 0xDB, 0xCF, 0x11, 0xB4, 0xD1, 0x00, 0x80, 0x5F, 0x6C, 0xBB, 0xEA } },
{ AV_CODEC_ID_ATRAC3P, { 0xBF, 0xAA, 0x23, 0xE9, 0x58, 0xCB, 0x71, 0x44, 0xA1, 0x19, 0xFF, 0xFA, 0x01, 0xE4, 0xCE, 0x62 } },
{ AV_CODEC_ID_EAC3, { 0xAF, 0x87, 0xFB, 0xA7, 0x02, 0x2D, 0xFB, 0x42, 0xA4, 0xD4, 0x05, 0xCD, 0x93, 0x84, 0x3B, 0xDD } },
{ AV_CODEC_ID_MP2, { 0x2B, 0x80, 0x6D, 0xE0, 0x46, 0xDB, 0xCF, 0x11, 0xB4, 0xD1, 0x00, 0x80, 0x5F, 0x6C, 0xBB, 0xEA } },
{ AV_CODEC_ID_NONE }
};

void ff_get_guid(AVIOContext *s, ff_asf_guid *g) void ff_get_guid(AVIOContext *s, ff_asf_guid *g)
{ {
av_assert0(sizeof(*g) == 16); //compiler will optimize this out av_assert0(sizeof(*g) == 16); //compiler will optimize this out


+ 16
- 0
libavformat/riffenc.c View File

@@ -312,3 +312,19 @@ void ff_riff_write_info(AVFormatContext *s)
ff_riff_write_info_tag(s->pb, t->key, t->value); ff_riff_write_info_tag(s->pb, t->key, t->value);
ff_end_tag(pb, list_pos); ff_end_tag(pb, list_pos);
} }

void ff_put_guid(AVIOContext *s, const ff_asf_guid *g)
{
av_assert0(sizeof(*g) == 16);
avio_write(s, *g, sizeof(*g));
}

const ff_asf_guid *get_codec_guid(enum AVCodecID id, const AVCodecGuid *av_guid)
{
int i;
for (i = 0; av_guid[i].id != AV_CODEC_ID_NONE; i++) {
if (id == av_guid[i].id)
return &(av_guid[i].guid);
}
return NULL;
}

+ 0
- 11
libavformat/wtvenc.c View File

@@ -31,7 +31,6 @@
#include "avio_internal.h" #include "avio_internal.h"
#include "internal.h" #include "internal.h"
#include "wtv.h" #include "wtv.h"
#include "asf.h"


#define WTV_BIGSECTOR_SIZE (1 << WTV_BIGSECTOR_BITS) #define WTV_BIGSECTOR_SIZE (1 << WTV_BIGSECTOR_BITS)
#define INDEX_BASE 0x2 #define INDEX_BASE 0x2
@@ -130,16 +129,6 @@ typedef struct {


#define write_pad(pb, size) ffio_fill(pb, 0, size) #define write_pad(pb, size) ffio_fill(pb, 0, size)


static const ff_asf_guid *get_codec_guid(enum AVCodecID id, const AVCodecGuid *av_guid)
{
int i;
for (i = 0; av_guid[i].id != AV_CODEC_ID_NONE; i++) {
if (id == av_guid[i].id)
return &(av_guid[i].guid);
}
return NULL;
}

/** /**
* Write chunk header. If header chunk (0x80000000 set) then add to list of header chunks * Write chunk header. If header chunk (0x80000000 set) then add to list of header chunks
*/ */


Loading…
Cancel
Save