libavformat/mp3.c File Reference

#include <strings.h>
#include "libavutil/avstring.h"
#include "libavutil/intreadwrite.h"
#include "avformat.h"
#include "id3v2.h"
#include "id3v1.h"
#include "libavcodec/mpegaudio.h"
#include "libavcodec/mpegaudiodecheader.h"

Go to the source code of this file.

Defines

#define MP3_PACKET_SIZE   1024

Functions

static int mp3_read_probe (AVProbeData *p)
static int mp3_parse_vbr_tags (AVFormatContext *s, AVStream *st, int64_t base)
 Try to find Xing/Info/VBRI tags and compute duration from info therein.
static int mp3_read_header (AVFormatContext *s, AVFormatParameters *ap)
static int mp3_read_packet (AVFormatContext *s, AVPacket *pkt)
static int id3v1_set_string (AVFormatContext *s, const char *key, uint8_t *buf, int buf_size)
static int id3v1_create_tag (AVFormatContext *s, uint8_t *buf)
static void id3v2_put_size (AVFormatContext *s, int size)
static void id3v2_put_ttag (AVFormatContext *s, const char *buf, int len, uint32_t tag)
static int mp3_write_packet (struct AVFormatContext *s, AVPacket *pkt)
static int mp3_write_trailer (struct AVFormatContext *s)
static int mp3_write_header (struct AVFormatContext *s)
 Write an ID3v2.4 header at beginning of stream.

Variables

AVInputFormat mp3_demuxer
AVOutputFormat mp2_muxer
AVOutputFormat mp3_muxer


Define Documentation

#define MP3_PACKET_SIZE   1024

Definition at line 164 of file mp3.c.

Referenced by mp3_read_packet().


Function Documentation

static int id3v1_create_tag ( AVFormatContext s,
uint8_t *  buf 
) [static]

Definition at line 208 of file mp3.c.

Referenced by mp3_write_trailer().

static int id3v1_set_string ( AVFormatContext s,
const char *  key,
uint8_t *  buf,
int  buf_size 
) [static]

Definition at line 199 of file mp3.c.

Referenced by id3v1_create_tag().

static void id3v2_put_size ( AVFormatContext s,
int  size 
) [static]

Definition at line 242 of file mp3.c.

Referenced by id3v2_put_ttag(), and mp3_write_header().

static void id3v2_put_ttag ( AVFormatContext s,
const char *  buf,
int  len,
uint32_t  tag 
) [static]

Definition at line 250 of file mp3.c.

Referenced by mp3_write_header().

static int mp3_parse_vbr_tags ( AVFormatContext s,
AVStream st,
int64_t  base 
) [static]

Try to find Xing/Info/VBRI tags and compute duration from info therein.

Definition at line 83 of file mp3.c.

Referenced by mp3_read_header().

static int mp3_read_header ( AVFormatContext s,
AVFormatParameters ap 
) [static]

Definition at line 133 of file mp3.c.

static int mp3_read_packet ( AVFormatContext s,
AVPacket pkt 
) [static]

Definition at line 166 of file mp3.c.

static int mp3_read_probe ( AVProbeData p  )  [static]

Definition at line 36 of file mp3.c.

static int mp3_write_header ( struct AVFormatContext s  )  [static]

Write an ID3v2.4 header at beginning of stream.

Definition at line 301 of file mp3.c.

static int mp3_write_packet ( struct AVFormatContext s,
AVPacket pkt 
) [static]

Definition at line 261 of file mp3.c.

static int mp3_write_trailer ( struct AVFormatContext s  )  [static]

Definition at line 268 of file mp3.c.


Variable Documentation

Initial value:

 {
    "mp2",
    NULL_IF_CONFIG_SMALL("MPEG audio layer 2"),
    "audio/x-mpeg",
    "mp2,m2a",
    0,
    CODEC_ID_MP2,
    CODEC_ID_NONE,
    NULL,
    mp3_write_packet,
    mp3_write_trailer,
}

Definition at line 282 of file mp3.c.

Initial value:

 {
    "mp3",
    NULL_IF_CONFIG_SMALL("MPEG audio layer 2/3"),
    0,
    mp3_read_probe,
    mp3_read_header,
    mp3_read_packet,
    .flags= AVFMT_GENERIC_INDEX,
    .extensions = "mp2,mp3,m2a", 
    .metadata_conv = ff_id3v2_metadata_conv,
}

Definition at line 185 of file mp3.c.

Initial value:

 {
    "mp3",
    NULL_IF_CONFIG_SMALL("MPEG audio layer 3"),
    "audio/x-mpeg",
    "mp3",
    0,
    CODEC_ID_MP3,
    CODEC_ID_NONE,
    mp3_write_header,
    mp3_write_packet,
    mp3_write_trailer,
    .metadata_conv = ff_id3v2_metadata_conv,
}

Definition at line 352 of file mp3.c.


Generated on Tue Apr 20 17:39:51 2010 for FFmpeg by  doxygen 1.5.6