#include "avformat.h"
#include "internal.h"
#include "riff.h"
#include "asf.h"
#include "avio_internal.h"
#include "libavutil/dict.h"
#include <assert.h>
Go to the source code of this file.
#define ASF_INDEX_BLOCK (1<<9) |
#define ASF_INDEXED_INTERVAL 10000000 |
#define ASF_PACKET_ERROR_CORRECTION_DATA_SIZE 0x2 |
#define ASF_PACKET_ERROR_CORRECTION_FLAGS |
#define ASF_PAYLOAD_FLAGS ASF_PL_FLAG_PAYLOAD_LENGTH_FIELD_IS_WORD |
#define ASF_PAYLOAD_REPLICATED_DATA_LENGTH 0x08 |
#define ASF_PPI_LENGTH_TYPE_FLAGS 0 |
#define ASF_PPI_PROPERTY_FLAGS |
Value:
(\ ASF_PL_FLAG_REPLICATED_DATA_LENGTH_FIELD_IS_BYTE | \ ASF_PL_FLAG_OFFSET_INTO_MEDIA_OBJECT_LENGTH_FIELD_IS_DWORD | \ ASF_PL_FLAG_MEDIA_OBJECT_NUMBER_LENGTH_FIELD_IS_BYTE | \ ASF_PL_FLAG_STREAM_NUMBER_LENGTH_FIELD_IS_BYTE \ )
Definition at line 47 of file asfenc.c.
Referenced by put_payload_parsing_info().
#define MULTI_PAYLOAD_CONSTANT |
Value:
(\ PACKET_SIZE - \ PACKET_HEADER_MIN_SIZE - \ 1 - /*Payload Flags*/ \ 2*PAYLOAD_HEADER_SIZE_MULTIPLE_PAYLOADS \ )
Definition at line 186 of file asfenc.c.
Referenced by put_frame().
#define PACKET_HEADER_MIN_SIZE |
Value:
(\ ASF_PACKET_ERROR_CORRECTION_FLAGS_FIELD_SIZE + \ ASF_PACKET_ERROR_CORRECTION_DATA_SIZE + \ 1 + /*Length Type Flags*/ \ 1 + /*Property Flags*/ \ ASF_PPI_PACKET_LENGTH_FIELD_SIZE + \ ASF_PPI_SEQUENCE_FIELD_SIZE + \ ASF_PPI_PADDING_LENGTH_FIELD_SIZE + \ 4 + /*Send Time Field*/ \ 2 /*Duration Field*/ \ )
Definition at line 147 of file asfenc.c.
Referenced by put_frame(), and put_payload_parsing_info().
#define PAYLOAD_HEADER_SIZE_MULTIPLE_PAYLOADS |
Value:
(\ 1 + /*Stream Number*/ \ ASF_PAYLOAD_MEDIA_OBJECT_NUMBER_FIELD_SIZE + \ ASF_PAYLOAD_OFFSET_INTO_MEDIA_OBJECT_FIELD_SIZE + \ ASF_PAYLOAD_REPLICATED_DATA_LENGTH_FIELD_SIZE + \ ASF_PAYLOAD_REPLICATED_DATA_LENGTH + \ ASF_PAYLOAD_LENGTH_FIELD_SIZE \ )
Definition at line 171 of file asfenc.c.
Referenced by put_frame().
#define PAYLOAD_HEADER_SIZE_SINGLE_PAYLOAD |
Value:
(\ 1 + /*Stream Number*/ \ ASF_PAYLOAD_MEDIA_OBJECT_NUMBER_FIELD_SIZE + \ ASF_PAYLOAD_OFFSET_INTO_MEDIA_OBJECT_FIELD_SIZE + \ ASF_PAYLOAD_REPLICATED_DATA_LENGTH_FIELD_SIZE + \ ASF_PAYLOAD_REPLICATED_DATA_LENGTH \ )
Definition at line 163 of file asfenc.c.
Referenced by put_frame().
#define PREROLL_TIME 3100 |
Definition at line 227 of file asfenc.c.
Referenced by asf_write_header1(), asf_write_packet(), and put_frame().
#define SINGLE_PAYLOAD_DATA_LENGTH |
Value:
(\ PACKET_SIZE - \ PACKET_HEADER_MIN_SIZE - \ PAYLOAD_HEADER_SIZE_SINGLE_PAYLOAD \ )
Definition at line 180 of file asfenc.c.
Referenced by put_frame().
static int asf_write_header | ( | AVFormatContext * | s | ) | [static] |
static int asf_write_header1 | ( | AVFormatContext * | s, | |
int64_t | file_size, | |||
int64_t | data_chunk_size | |||
) | [static] |
static int asf_write_index | ( | AVFormatContext * | s, | |
ASFIndex * | index, | |||
uint16_t | max, | |||
uint32_t | count | |||
) | [static] |
static int asf_write_packet | ( | AVFormatContext * | s, | |
AVPacket * | pkt | |||
) | [static] |
static int asf_write_stream_header | ( | AVFormatContext * | s | ) | [static] |
static int asf_write_trailer | ( | AVFormatContext * | s | ) | [static] |
static void end_header | ( | AVIOContext * | pb, | |
int64_t | pos | |||
) | [static] |
void ff_put_guid | ( | AVIOContext * | s, | |
const ff_asf_guid * | g | |||
) |
Definition at line 229 of file asfenc.c.
Referenced by asf_write_header1(), asf_write_index(), put_header(), write_chunk_header(), write_header(), write_index(), write_root_table(), write_stream_codec_info(), and write_tag().
static void flush_packet | ( | AVFormatContext * | s | ) | [static] |
Definition at line 647 of file asfenc.c.
Referenced by asf_write_trailer(), ffm_write_data(), ffm_write_trailer(), output_packet(), and put_frame().
static void put_chunk | ( | AVFormatContext * | s, | |
int | type, | |||
int | payload_length, | |||
int | flags | |||
) | [static] |
Definition at line 272 of file asfenc.c.
Referenced by asf_write_header1(), asf_write_trailer(), and flush_packet().
static void put_frame | ( | AVFormatContext * | s, | |
ASFStream * | stream, | |||
AVStream * | avst, | |||
int64_t | timestamp, | |||
const uint8_t * | buf, | |||
int | m_obj_size, | |||
int | flags | |||
) | [static] |
static int64_t put_header | ( | AVIOContext * | pb, | |
const ff_asf_guid * | g | |||
) | [static] |
static void put_payload_header | ( | AVFormatContext * | s, | |
ASFStream * | stream, | |||
int64_t | presentation_time, | |||
int | m_obj_size, | |||
int | m_obj_offset, | |||
int | payload_len, | |||
int | flags | |||
) | [static] |
static int put_payload_parsing_info | ( | AVFormatContext * | s, | |
unsigned int | sendtime, | |||
unsigned int | duration, | |||
int | nb_payloads, | |||
int | padsize | |||
) | [static] |
static void put_str16 | ( | AVIOContext * | s, | |
const char * | tag | |||
) | [static] |
static int64_t unix_to_file_time | ( | int | ti | ) | [static] |
static void update_index | ( | AVFormatContext * | s, | |
int | start_sec, | |||
uint32_t | packet_number, | |||
uint16_t | packet_count | |||
) | [static] |
const AVCodecTag codec_asf_bmp_tags[] [static] |
Initial value:
{ { CODEC_ID_MPEG4, MKTAG('M', '4', 'S', '2') }, { CODEC_ID_MPEG4, MKTAG('M', 'P', '4', 'S') }, { CODEC_ID_MSMPEG4V3, MKTAG('M', 'P', '4', '3') }, { CODEC_ID_NONE, 0 }, }