libavformat/flvenc.c File Reference

#include "libavutil/intfloat.h"
#include "avformat.h"
#include "flv.h"
#include "internal.h"
#include "avc.h"
#include "metadata.h"
#include "libavutil/dict.h"
#include <assert.h>

Go to the source code of this file.

Data Structures

struct  FLVContext
struct  FLVStreamContext

Typedefs

typedef struct FLVContext FLVContext
typedef struct FLVStreamContext FLVStreamContext

Functions

static int get_audio_flags (AVCodecContext *enc)
static void put_amf_string (AVIOContext *pb, const char *str)
static void put_avc_eos_tag (AVIOContext *pb, unsigned ts)
static void put_amf_double (AVIOContext *pb, double d)
static void put_amf_bool (AVIOContext *pb, int b)
static int flv_write_header (AVFormatContext *s)
static int flv_write_trailer (AVFormatContext *s)
static int flv_write_packet (AVFormatContext *s, AVPacket *pkt)

Variables

static const AVCodecTag flv_video_codec_ids []
static const AVCodecTag flv_audio_codec_ids []
AVOutputFormat ff_flv_muxer

Typedef Documentation

typedef struct FLVContext FLVContext

Function Documentation

static int flv_write_header ( AVFormatContext s  )  [static]

Definition at line 176 of file flvenc.c.

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

Definition at line 377 of file flvenc.c.

static int flv_write_trailer ( AVFormatContext s  )  [static]

Definition at line 347 of file flvenc.c.

static int get_audio_flags ( AVCodecContext enc  )  [static]

Definition at line 67 of file flvenc.c.

Referenced by flv_write_header(), and flv_write_packet().

static void put_amf_bool ( AVIOContext pb,
int  b 
) [static]

Definition at line 171 of file flvenc.c.

Referenced by flv_write_header().

static void put_amf_double ( AVIOContext pb,
double  d 
) [static]

Definition at line 165 of file flvenc.c.

Referenced by flv_write_header(), and flv_write_trailer().

static void put_amf_string ( AVIOContext pb,
const char *  str 
) [static]

Definition at line 146 of file flvenc.c.

Referenced by flv_write_header().

static void put_avc_eos_tag ( AVIOContext pb,
unsigned  ts 
) [static]

Definition at line 153 of file flvenc.c.

Referenced by flv_write_trailer().


Variable Documentation

Initial value:
 {
    .name           = "flv",
    .long_name      = NULL_IF_CONFIG_SMALL("FLV format"),
    .mime_type      = "video/x-flv",
    .extensions     = "flv",
    .priv_data_size = sizeof(FLVContext),

    .audio_codec    = CODEC_ID_MP3,


 
    .video_codec    = CODEC_ID_FLV1,
    .write_header   = flv_write_header,
    .write_packet   = flv_write_packet,
    .write_trailer  = flv_write_trailer,
    .codec_tag= (const AVCodecTag* const []){flv_video_codec_ids, flv_audio_codec_ids, 0},
    .flags= AVFMT_GLOBALHEADER | AVFMT_VARIABLE_FPS,
}

Definition at line 472 of file flvenc.c.

const AVCodecTag flv_audio_codec_ids[] [static]
Initial value:
 {
    {CODEC_ID_MP3,       FLV_CODECID_MP3    >> FLV_AUDIO_CODECID_OFFSET},
    {CODEC_ID_PCM_U8,    FLV_CODECID_PCM    >> FLV_AUDIO_CODECID_OFFSET},
    {CODEC_ID_PCM_S16BE, FLV_CODECID_PCM    >> FLV_AUDIO_CODECID_OFFSET},
    {CODEC_ID_PCM_S16LE, FLV_CODECID_PCM_LE >> FLV_AUDIO_CODECID_OFFSET},
    {CODEC_ID_ADPCM_SWF, FLV_CODECID_ADPCM  >> FLV_AUDIO_CODECID_OFFSET},
    {CODEC_ID_AAC,       FLV_CODECID_AAC    >> FLV_AUDIO_CODECID_OFFSET},
    {CODEC_ID_NELLYMOSER, FLV_CODECID_NELLYMOSER >> FLV_AUDIO_CODECID_OFFSET},
    {CODEC_ID_SPEEX,     FLV_CODECID_SPEEX  >> FLV_AUDIO_CODECID_OFFSET},
    {CODEC_ID_NONE,      0}
}

Definition at line 43 of file flvenc.c.

const AVCodecTag flv_video_codec_ids[] [static]
Initial value:
 {
    {CODEC_ID_FLV1,    FLV_CODECID_H263  },
    {CODEC_ID_FLASHSV, FLV_CODECID_SCREEN},
    {CODEC_ID_FLASHSV2, FLV_CODECID_SCREEN2},
    {CODEC_ID_VP6F,    FLV_CODECID_VP6   },
    {CODEC_ID_VP6,     FLV_CODECID_VP6   },
    {CODEC_ID_H264,    FLV_CODECID_H264  },
    {CODEC_ID_NONE,    0}
}

Definition at line 33 of file flvenc.c.