21 #ifndef AVFORMAT_ASF_H
22 #define AVFORMAT_ASF_H
107 #define ASF_PACKET_FLAG_ERROR_CORRECTION_PRESENT 0x80
126 #define ASF_PPI_FLAG_MULTIPLE_PAYLOADS_PRESENT 1
128 #define ASF_PPI_FLAG_SEQUENCE_FIELD_IS_BYTE 0x02
129 #define ASF_PPI_FLAG_SEQUENCE_FIELD_IS_WORD 0x04
130 #define ASF_PPI_FLAG_SEQUENCE_FIELD_IS_DWORD 0x06
131 #define ASF_PPI_MASK_SEQUENCE_FIELD_SIZE 0x06
133 #define ASF_PPI_FLAG_PADDING_LENGTH_FIELD_IS_BYTE 0x08
134 #define ASF_PPI_FLAG_PADDING_LENGTH_FIELD_IS_WORD 0x10
135 #define ASF_PPI_FLAG_PADDING_LENGTH_FIELD_IS_DWORD 0x18
136 #define ASF_PPI_MASK_PADDING_LENGTH_FIELD_SIZE 0x18
138 #define ASF_PPI_FLAG_PACKET_LENGTH_FIELD_IS_BYTE 0x20
139 #define ASF_PPI_FLAG_PACKET_LENGTH_FIELD_IS_WORD 0x40
140 #define ASF_PPI_FLAG_PACKET_LENGTH_FIELD_IS_DWORD 0x60
141 #define ASF_PPI_MASK_PACKET_LENGTH_FIELD_SIZE 0x60
144 #define ASF_PL_FLAG_REPLICATED_DATA_LENGTH_FIELD_IS_BYTE 0x01
145 #define ASF_PL_FLAG_REPLICATED_DATA_LENGTH_FIELD_IS_WORD 0x02
146 #define ASF_PL_FLAG_REPLICATED_DATA_LENGTH_FIELD_IS_DWORD 0x03
147 #define ASF_PL_MASK_REPLICATED_DATA_LENGTH_FIELD_SIZE 0x03
149 #define ASF_PL_FLAG_OFFSET_INTO_MEDIA_OBJECT_LENGTH_FIELD_IS_BYTE 0x04
150 #define ASF_PL_FLAG_OFFSET_INTO_MEDIA_OBJECT_LENGTH_FIELD_IS_WORD 0x08
151 #define ASF_PL_FLAG_OFFSET_INTO_MEDIA_OBJECT_LENGTH_FIELD_IS_DWORD 0x0c
152 #define ASF_PL_MASK_OFFSET_INTO_MEDIA_OBJECT_LENGTH_FIELD_SIZE 0x0c
154 #define ASF_PL_FLAG_MEDIA_OBJECT_NUMBER_LENGTH_FIELD_IS_BYTE 0x10
155 #define ASF_PL_FLAG_MEDIA_OBJECT_NUMBER_LENGTH_FIELD_IS_WORD 0x20
156 #define ASF_PL_FLAG_MEDIA_OBJECT_NUMBER_LENGTH_FIELD_IS_DWORD 0x30
157 #define ASF_PL_MASK_MEDIA_OBJECT_NUMBER_LENGTH_FIELD_SIZE 0x30
159 #define ASF_PL_FLAG_STREAM_NUMBER_LENGTH_FIELD_IS_BYTE 0x40
160 #define ASF_PL_MASK_STREAM_NUMBER_LENGTH_FIELD_SIZE 0xc0
162 #define ASF_PL_FLAG_PAYLOAD_LENGTH_FIELD_IS_BYTE 0x40
163 #define ASF_PL_FLAG_PAYLOAD_LENGTH_FIELD_IS_WORD 0x80
164 #define ASF_PL_MASK_PAYLOAD_LENGTH_FIELD_SIZE 0xc0
166 #define ASF_PL_FLAG_KEY_FRAME 0x80
const ff_asf_guid ff_asf_video_conceal_none
const ff_asf_guid ff_asf_codec_comment1_header
const ff_asf_guid ff_asf_mutex_language
const ff_asf_guid ff_asf_video_stream
const ff_asf_guid ff_asf_ext_stream_header
const AVMetadataConv ff_asf_metadata_conv[]
const ff_asf_guid ff_asf_stream_header
const ff_asf_guid ff_asf_extended_stream_properties_object
const ff_asf_guid ff_asf_command_stream
const ff_asf_guid ff_asf_ext_stream_audio_stream
const ff_asf_guid ff_asf_audio_conceal_spread
const ff_asf_guid ff_asf_language_guid
const ff_asf_guid ff_asf_group_mutual_exclusion_object
const ff_asf_guid ff_asf_header
const ff_asf_guid ff_asf_audio_stream
const ff_asf_guid ff_asf_simple_index_header
const ff_asf_guid ff_asf_ext_stream_embed_stream_header
const ff_asf_guid ff_asf_content_encryption
const ff_asf_guid ff_asf_extended_content_header
const ff_asf_guid ff_asf_reserved_4
const ff_asf_guid ff_asf_head1_guid
const ff_asf_guid ff_asf_head2_guid
const ff_asf_guid ff_asf_marker_header
const ff_asf_guid ff_asf_metadata_library_header
const ff_asf_guid ff_asf_data_header
const ff_asf_guid ff_asf_jfif_media
const ff_asf_guid ff_asf_digital_signature
const ff_asf_guid ff_asf_ext_content_encryption
const ff_asf_guid ff_asf_codec_comment_header
const ff_asf_guid ff_asf_my_guid
const ff_asf_guid ff_asf_file_header
const ff_asf_guid ff_asf_comment_header
const ff_asf_guid ff_asf_metadata_header
internal header for RIFF based (de)muxers do NOT include this in end user applications
uint64_t create_time
time of creation, in 100-nanosecond units since 1.1.1601 invalid if broadcasting
uint32_t min_pktsize
size of a data packet invalid if broadcasting
uint32_t ignore
preroll is 64 bits - but let's just ignore it
ff_asf_guid guid
generated by client computer
uint32_t max_pktsize
shall be the same as for min_pktsize invalid if broadcasting
uint64_t send_time
time to send file, in 100-nanosecond units invalid if broadcasting (could be ignored)
uint32_t max_bitrate
bandwidth of stream in bps should be the sum of bitrates of the individual media streams
uint32_t flags
0x01 - broadcast 0x02 - seekable rest is reserved should be 0
uint64_t file_size
in bytes invalid if broadcasting
uint64_t play_time
play time, in 100-nanosecond units invalid if broadcasting
uint32_t preroll
timestamp of the first packet, in milliseconds if nonzero - subtract from time