[FFmpeg-cvslog] r17619 - in trunk/libavformat: Makefile asf.c asf.h asfdec.c asfenc.c
aurel
subversion
Thu Feb 26 17:17:18 CET 2009
Author: aurel
Date: Thu Feb 26 17:17:17 2009
New Revision: 17619
Log:
move static tables from asf.h to non-static tables in asf.c
this avoid getting those tables duplicated in asfenc.o and asfdec.o
Added:
trunk/libavformat/asf.c (contents, props changed)
- copied, changed from r17617, trunk/libavformat/asf.h
Modified:
trunk/libavformat/Makefile
trunk/libavformat/asf.h
trunk/libavformat/asfdec.c
trunk/libavformat/asfenc.c
Modified: trunk/libavformat/Makefile
==============================================================================
--- trunk/libavformat/Makefile Thu Feb 26 16:44:19 2009 (r17618)
+++ trunk/libavformat/Makefile Thu Feb 26 17:17:17 2009 (r17619)
@@ -18,9 +18,9 @@ OBJS-$(CONFIG_AMR_DEMUXER)
OBJS-$(CONFIG_AMR_MUXER) += amr.o
OBJS-$(CONFIG_APC_DEMUXER) += apc.o
OBJS-$(CONFIG_APE_DEMUXER) += ape.o
-OBJS-$(CONFIG_ASF_DEMUXER) += asfdec.o asfcrypt.o riff.o
-OBJS-$(CONFIG_ASF_MUXER) += asfenc.o riff.o
-OBJS-$(CONFIG_ASF_STREAM_MUXER) += asfenc.o riff.o
+OBJS-$(CONFIG_ASF_DEMUXER) += asfdec.o asf.o asfcrypt.o riff.o
+OBJS-$(CONFIG_ASF_MUXER) += asfenc.o asf.o riff.o
+OBJS-$(CONFIG_ASF_STREAM_MUXER) += asfenc.o asf.o riff.o
OBJS-$(CONFIG_ASS_DEMUXER) += assdec.o
OBJS-$(CONFIG_ASS_MUXER) += assenc.o
OBJS-$(CONFIG_AU_DEMUXER) += au.o raw.o
Copied and modified: trunk/libavformat/asf.c (from r17617, trunk/libavformat/asf.h)
==============================================================================
--- trunk/libavformat/asf.h Thu Feb 26 15:40:04 2009 (r17617, copy source)
+++ trunk/libavformat/asf.c Thu Feb 26 17:17:17 2009 (r17619)
@@ -18,293 +18,96 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
-#ifndef AVFORMAT_ASF_H
-#define AVFORMAT_ASF_H
-
-#include <stdint.h>
-#include "avformat.h"
-
-#define PACKET_SIZE 3200
-
-typedef struct {
- int num;
- unsigned char seq;
- /* use for reading */
- AVPacket pkt;
- int frag_offset;
- int timestamp;
- int64_t duration;
-
- int ds_span; /* descrambling */
- int ds_packet_size;
- int ds_chunk_size;
-
- int64_t packet_pos;
-
-} ASFStream;
-
-typedef uint8_t GUID[16];
-
-typedef struct {
- GUID guid; ///< generated by client computer
- uint64_t file_size; /**< in bytes
- * invalid if broadcasting */
- uint64_t create_time; /**< time of creation, in 100-nanosecond units since 1.1.1601
- * invalid if broadcasting */
- uint64_t play_time; /**< play time, in 100-nanosecond units
- * invalid if broadcasting */
- uint64_t send_time; /**< time to send file, in 100-nanosecond units
- * invalid if broadcasting (could be ignored) */
- uint32_t preroll; /**< timestamp of the first packet, in milliseconds
- * if nonzero - subtract from time */
- uint32_t ignore; ///< preroll is 64bit - but let's just ignore it
- uint32_t flags; /**< 0x01 - broadcast
- * 0x02 - seekable
- * rest is reserved should be 0 */
- uint32_t min_pktsize; /**< size of a data packet
- * invalid if broadcasting */
- uint32_t max_pktsize; /**< shall be the same as for min_pktsize
- * invalid if broadcasting */
- uint32_t max_bitrate; /**< bandwith of stream in bps
- * should be the sum of bitrates of the
- * individual media streams */
-} ASFMainHeader;
-
-
-typedef struct {
- uint32_t packet_number;
- uint16_t packet_count;
-} ASFIndex;
-
-
-typedef struct {
- uint32_t seqno;
- unsigned int packet_size;
- int is_streamed;
- int asfid2avid[128]; ///< conversion table from asf ID 2 AVStream ID
- ASFStream streams[128]; ///< it's max number and it's not that big
- uint32_t stream_bitrates[128]; ///< max number of streams, bitrate for each (for streaming)
- /* non streamed additonnal info */
- uint64_t nb_packets; ///< how many packets are there in the file, invalid if broadcasting
- int64_t duration; ///< in 100ns units
- /* packet filling */
- unsigned char multi_payloads_present;
- int packet_size_left;
- int packet_timestamp_start;
- int packet_timestamp_end;
- unsigned int packet_nb_payloads;
- int packet_nb_frames;
- uint8_t packet_buf[PACKET_SIZE];
- ByteIOContext pb;
- /* only for reading */
- uint64_t data_offset; ///< beginning of the first data packet
- uint64_t data_object_offset; ///< data object offset (excl. GUID & size)
- uint64_t data_object_size; ///< size of the data object
- int index_read;
-
- ASFMainHeader hdr;
-
- int packet_flags;
- int packet_property;
- int packet_timestamp;
- int packet_segsizetype;
- int packet_segments;
- int packet_seq;
- int packet_replic_size;
- int packet_key_frame;
- int packet_padsize;
- unsigned int packet_frag_offset;
- unsigned int packet_frag_size;
- int64_t packet_frag_timestamp;
- int packet_multi_size;
- int packet_obj_size;
- int packet_time_delta;
- int packet_time_start;
- int64_t packet_pos;
-
- int stream_index;
-
-
- int64_t last_indexed_pts;
- ASFIndex* index_ptr;
- uint32_t nb_index_count;
- uint32_t nb_index_memory_alloc;
- uint16_t maximum_packet;
+#include "asf.h"
- ASFStream* asf_st; ///< currently decoded stream
-} ASFContext;
-static const GUID asf_header = {
+const GUID ff_asf_header = {
0x30, 0x26, 0xB2, 0x75, 0x8E, 0x66, 0xCF, 0x11, 0xA6, 0xD9, 0x00, 0xAA, 0x00, 0x62, 0xCE, 0x6C
};
-static const GUID file_header = {
+const GUID ff_asf_file_header = {
0xA1, 0xDC, 0xAB, 0x8C, 0x47, 0xA9, 0xCF, 0x11, 0x8E, 0xE4, 0x00, 0xC0, 0x0C, 0x20, 0x53, 0x65
};
-static const GUID stream_header = {
+const GUID ff_asf_stream_header = {
0x91, 0x07, 0xDC, 0xB7, 0xB7, 0xA9, 0xCF, 0x11, 0x8E, 0xE6, 0x00, 0xC0, 0x0C, 0x20, 0x53, 0x65
};
-static const GUID ext_stream_header = {
+const GUID ff_asf_ext_stream_header = {
0xCB, 0xA5, 0xE6, 0x14, 0x72, 0xC6, 0x32, 0x43, 0x83, 0x99, 0xA9, 0x69, 0x52, 0x06, 0x5B, 0x5A
};
-static const GUID audio_stream = {
+const GUID ff_asf_audio_stream = {
0x40, 0x9E, 0x69, 0xF8, 0x4D, 0x5B, 0xCF, 0x11, 0xA8, 0xFD, 0x00, 0x80, 0x5F, 0x5C, 0x44, 0x2B
};
-static const GUID audio_conceal_none = {
+const GUID ff_asf_audio_conceal_none = {
// 0x40, 0xa4, 0xf1, 0x49, 0x4ece, 0x11d0, 0xa3, 0xac, 0x00, 0xa0, 0xc9, 0x03, 0x48, 0xf6
// New value lifted from avifile
0x00, 0x57, 0xfb, 0x20, 0x55, 0x5B, 0xCF, 0x11, 0xa8, 0xfd, 0x00, 0x80, 0x5f, 0x5c, 0x44, 0x2b
};
-static const GUID audio_conceal_spread = {
+const GUID ff_asf_audio_conceal_spread = {
0x50, 0xCD, 0xC3, 0xBF, 0x8F, 0x61, 0xCF, 0x11, 0x8B, 0xB2, 0x00, 0xAA, 0x00, 0xB4, 0xE2, 0x20
};
-static const GUID video_stream = {
+const GUID ff_asf_video_stream = {
0xC0, 0xEF, 0x19, 0xBC, 0x4D, 0x5B, 0xCF, 0x11, 0xA8, 0xFD, 0x00, 0x80, 0x5F, 0x5C, 0x44, 0x2B
};
-static const GUID video_conceal_none = {
+const GUID ff_asf_video_conceal_none = {
0x00, 0x57, 0xFB, 0x20, 0x55, 0x5B, 0xCF, 0x11, 0xA8, 0xFD, 0x00, 0x80, 0x5F, 0x5C, 0x44, 0x2B
};
-static const GUID command_stream = {
+const GUID ff_asf_command_stream = {
0xC0, 0xCF, 0xDA, 0x59, 0xE6, 0x59, 0xD0, 0x11, 0xA3, 0xAC, 0x00, 0xA0, 0xC9, 0x03, 0x48, 0xF6
};
-static const GUID comment_header = {
+const GUID ff_asf_comment_header = {
0x33, 0x26, 0xb2, 0x75, 0x8E, 0x66, 0xCF, 0x11, 0xa6, 0xd9, 0x00, 0xaa, 0x00, 0x62, 0xce, 0x6c
};
-static const GUID codec_comment_header = {
+const GUID ff_asf_codec_comment_header = {
0x40, 0x52, 0xD1, 0x86, 0x1D, 0x31, 0xD0, 0x11, 0xA3, 0xA4, 0x00, 0xA0, 0xC9, 0x03, 0x48, 0xF6
};
-static const GUID codec_comment1_header = {
+const GUID ff_asf_codec_comment1_header = {
0x41, 0x52, 0xd1, 0x86, 0x1D, 0x31, 0xD0, 0x11, 0xa3, 0xa4, 0x00, 0xa0, 0xc9, 0x03, 0x48, 0xf6
};
-static const GUID data_header = {
+const GUID ff_asf_data_header = {
0x36, 0x26, 0xb2, 0x75, 0x8E, 0x66, 0xCF, 0x11, 0xa6, 0xd9, 0x00, 0xaa, 0x00, 0x62, 0xce, 0x6c
};
-static const GUID head1_guid = {
+const GUID ff_asf_head1_guid = {
0xb5, 0x03, 0xbf, 0x5f, 0x2E, 0xA9, 0xCF, 0x11, 0x8e, 0xe3, 0x00, 0xc0, 0x0c, 0x20, 0x53, 0x65
};
-static const GUID head2_guid = {
+const GUID ff_asf_head2_guid = {
0x11, 0xd2, 0xd3, 0xab, 0xBA, 0xA9, 0xCF, 0x11, 0x8e, 0xe6, 0x00, 0xc0, 0x0c, 0x20, 0x53, 0x65
};
-static const GUID extended_content_header = {
+const GUID ff_asf_extended_content_header = {
0x40, 0xA4, 0xD0, 0xD2, 0x07, 0xE3, 0xD2, 0x11, 0x97, 0xF0, 0x00, 0xA0, 0xC9, 0x5E, 0xA8, 0x50
};
-static const GUID simple_index_header = {
+const GUID ff_asf_simple_index_header = {
0x90, 0x08, 0x00, 0x33, 0xB1, 0xE5, 0xCF, 0x11, 0x89, 0xF4, 0x00, 0xA0, 0xC9, 0x03, 0x49, 0xCB
};
-static const GUID ext_stream_embed_stream_header = {
+const GUID ff_asf_ext_stream_embed_stream_header = {
0xe2, 0x65, 0xfb, 0x3a, 0xEF, 0x47, 0xF2, 0x40, 0xac, 0x2c, 0x70, 0xa9, 0x0d, 0x71, 0xd3, 0x43
};
-static const GUID ext_stream_audio_stream = {
+const GUID ff_asf_ext_stream_audio_stream = {
0x9d, 0x8c, 0x17, 0x31, 0xE1, 0x03, 0x28, 0x45, 0xb5, 0x82, 0x3d, 0xf9, 0xdb, 0x22, 0xf5, 0x03
};
-static const GUID metadata_header = {
+const GUID ff_asf_metadata_header = {
0xea, 0xcb, 0xf8, 0xc5, 0xaf, 0x5b, 0x77, 0x48, 0x84, 0x67, 0xaa, 0x8c, 0x44, 0xfa, 0x4c, 0xca
};
/* I am not a number !!! This GUID is the one found on the PC used to
generate the stream */
-static const GUID my_guid = {
+const GUID ff_asf_my_guid = {
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
};
-
-#define ASF_PACKET_FLAG_ERROR_CORRECTION_PRESENT 0x80 //1000 0000
-
-
-// ASF data packet structure
-// =========================
-//
-//
-// -----------------------------------
-// | Error Correction Data | Optional
-// -----------------------------------
-// | Payload Parsing Information (PPI) |
-// -----------------------------------
-// | Payload Data |
-// -----------------------------------
-// | Padding Data |
-// -----------------------------------
-
-
-// PPI_FLAG - Payload parsing information flags
-#define ASF_PPI_FLAG_MULTIPLE_PAYLOADS_PRESENT 1
-
-#define ASF_PPI_FLAG_SEQUENCE_FIELD_IS_BYTE 0x02 //0000 0010
-#define ASF_PPI_FLAG_SEQUENCE_FIELD_IS_WORD 0x04 //0000 0100
-#define ASF_PPI_FLAG_SEQUENCE_FIELD_IS_DWORD 0x06 //0000 0110
-#define ASF_PPI_MASK_SEQUENCE_FIELD_SIZE 0x06 //0000 0110
-
-#define ASF_PPI_FLAG_PADDING_LENGTH_FIELD_IS_BYTE 0x08 //0000 1000
-#define ASF_PPI_FLAG_PADDING_LENGTH_FIELD_IS_WORD 0x10 //0001 0000
-#define ASF_PPI_FLAG_PADDING_LENGTH_FIELD_IS_DWORD 0x18 //0001 1000
-#define ASF_PPI_MASK_PADDING_LENGTH_FIELD_SIZE 0x18 //0001 1000
-
-#define ASF_PPI_FLAG_PACKET_LENGTH_FIELD_IS_BYTE 0x20 //0010 0000
-#define ASF_PPI_FLAG_PACKET_LENGTH_FIELD_IS_WORD 0x40 //0100 0000
-#define ASF_PPI_FLAG_PACKET_LENGTH_FIELD_IS_DWORD 0x60 //0110 0000
-#define ASF_PPI_MASK_PACKET_LENGTH_FIELD_SIZE 0x60 //0110 0000
-
-// PL_FLAG - Payload flags
-#define ASF_PL_FLAG_REPLICATED_DATA_LENGTH_FIELD_IS_BYTE 0x01 //0000 0001
-#define ASF_PL_FLAG_REPLICATED_DATA_LENGTH_FIELD_IS_WORD 0x02 //0000 0010
-#define ASF_PL_FLAG_REPLICATED_DATA_LENGTH_FIELD_IS_DWORD 0x03 //0000 0011
-#define ASF_PL_MASK_REPLICATED_DATA_LENGTH_FIELD_SIZE 0x03 //0000 0011
-
-#define ASF_PL_FLAG_OFFSET_INTO_MEDIA_OBJECT_LENGTH_FIELD_IS_BYTE 0x04 //0000 0100
-#define ASF_PL_FLAG_OFFSET_INTO_MEDIA_OBJECT_LENGTH_FIELD_IS_WORD 0x08 //0000 1000
-#define ASF_PL_FLAG_OFFSET_INTO_MEDIA_OBJECT_LENGTH_FIELD_IS_DWORD 0x0c //0000 1100
-#define ASF_PL_MASK_OFFSET_INTO_MEDIA_OBJECT_LENGTH_FIELD_SIZE 0x0c //0000 1100
-
-#define ASF_PL_FLAG_MEDIA_OBJECT_NUMBER_LENGTH_FIELD_IS_BYTE 0x10 //0001 0000
-#define ASF_PL_FLAG_MEDIA_OBJECT_NUMBER_LENGTH_FIELD_IS_WORD 0x20 //0010 0000
-#define ASF_PL_FLAG_MEDIA_OBJECT_NUMBER_LENGTH_FIELD_IS_DWORD 0x30 //0011 0000
-#define ASF_PL_MASK_MEDIA_OBJECT_NUMBER_LENGTH_FIELD_SIZE 0x30 //0011 0000
-
-#define ASF_PL_FLAG_STREAM_NUMBER_LENGTH_FIELD_IS_BYTE 0x40 //0100 0000
-#define ASF_PL_MASK_STREAM_NUMBER_LENGTH_FIELD_SIZE 0xc0 //1100 0000
-
-#define ASF_PL_FLAG_PAYLOAD_LENGTH_FIELD_IS_BYTE 0x40 //0100 0000
-#define ASF_PL_FLAG_PAYLOAD_LENGTH_FIELD_IS_WORD 0x80 //1000 0000
-#define ASF_PL_MASK_PAYLOAD_LENGTH_FIELD_SIZE 0xc0 //1100 0000
-
-#define ASF_PL_FLAG_KEY_FRAME 0x80 //1000 0000
-
-extern AVInputFormat asf_demuxer;
-
-/**
- * Load a single ASF packet into the demuxer.
- * @param s demux context
- * @param pb context to read data from
- * @returns 0 on success, <0 on error
- */
-int ff_asf_get_packet(AVFormatContext *s, ByteIOContext *pb);
-
-/**
- * Parse data from individual ASF packets (which were previously loaded
- * with asf_get_packet()).
- * @param s demux context
- * @param pb context to read data from
- * @param pkt pointer to store packet data into
- * @returns 0 if data was stored in pkt, <0 on error or 1 if more ASF
- * packets need to be loaded (through asf_get_packet())
- */
-int ff_asf_parse_packet(AVFormatContext *s, ByteIOContext *pb, AVPacket *pkt);
-
-#endif /* AVFORMAT_ASF_H */
Modified: trunk/libavformat/asf.h
==============================================================================
--- trunk/libavformat/asf.h Thu Feb 26 16:44:19 2009 (r17618)
+++ trunk/libavformat/asf.h Thu Feb 26 17:17:17 2009 (r17619)
@@ -134,96 +134,28 @@ typedef struct {
ASFStream* asf_st; ///< currently decoded stream
} ASFContext;
-static const GUID asf_header = {
- 0x30, 0x26, 0xB2, 0x75, 0x8E, 0x66, 0xCF, 0x11, 0xA6, 0xD9, 0x00, 0xAA, 0x00, 0x62, 0xCE, 0x6C
-};
-
-static const GUID file_header = {
- 0xA1, 0xDC, 0xAB, 0x8C, 0x47, 0xA9, 0xCF, 0x11, 0x8E, 0xE4, 0x00, 0xC0, 0x0C, 0x20, 0x53, 0x65
-};
-
-static const GUID stream_header = {
- 0x91, 0x07, 0xDC, 0xB7, 0xB7, 0xA9, 0xCF, 0x11, 0x8E, 0xE6, 0x00, 0xC0, 0x0C, 0x20, 0x53, 0x65
-};
-
-static const GUID ext_stream_header = {
- 0xCB, 0xA5, 0xE6, 0x14, 0x72, 0xC6, 0x32, 0x43, 0x83, 0x99, 0xA9, 0x69, 0x52, 0x06, 0x5B, 0x5A
-};
-
-static const GUID audio_stream = {
- 0x40, 0x9E, 0x69, 0xF8, 0x4D, 0x5B, 0xCF, 0x11, 0xA8, 0xFD, 0x00, 0x80, 0x5F, 0x5C, 0x44, 0x2B
-};
-
-static const GUID audio_conceal_none = {
- // 0x40, 0xa4, 0xf1, 0x49, 0x4ece, 0x11d0, 0xa3, 0xac, 0x00, 0xa0, 0xc9, 0x03, 0x48, 0xf6
- // New value lifted from avifile
- 0x00, 0x57, 0xfb, 0x20, 0x55, 0x5B, 0xCF, 0x11, 0xa8, 0xfd, 0x00, 0x80, 0x5f, 0x5c, 0x44, 0x2b
-};
-
-static const GUID audio_conceal_spread = {
- 0x50, 0xCD, 0xC3, 0xBF, 0x8F, 0x61, 0xCF, 0x11, 0x8B, 0xB2, 0x00, 0xAA, 0x00, 0xB4, 0xE2, 0x20
-};
-
-static const GUID video_stream = {
- 0xC0, 0xEF, 0x19, 0xBC, 0x4D, 0x5B, 0xCF, 0x11, 0xA8, 0xFD, 0x00, 0x80, 0x5F, 0x5C, 0x44, 0x2B
-};
-
-static const GUID video_conceal_none = {
- 0x00, 0x57, 0xFB, 0x20, 0x55, 0x5B, 0xCF, 0x11, 0xA8, 0xFD, 0x00, 0x80, 0x5F, 0x5C, 0x44, 0x2B
-};
-
-static const GUID command_stream = {
- 0xC0, 0xCF, 0xDA, 0x59, 0xE6, 0x59, 0xD0, 0x11, 0xA3, 0xAC, 0x00, 0xA0, 0xC9, 0x03, 0x48, 0xF6
-};
-
-static const GUID comment_header = {
- 0x33, 0x26, 0xb2, 0x75, 0x8E, 0x66, 0xCF, 0x11, 0xa6, 0xd9, 0x00, 0xaa, 0x00, 0x62, 0xce, 0x6c
-};
-
-static const GUID codec_comment_header = {
- 0x40, 0x52, 0xD1, 0x86, 0x1D, 0x31, 0xD0, 0x11, 0xA3, 0xA4, 0x00, 0xA0, 0xC9, 0x03, 0x48, 0xF6
-};
-static const GUID codec_comment1_header = {
- 0x41, 0x52, 0xd1, 0x86, 0x1D, 0x31, 0xD0, 0x11, 0xa3, 0xa4, 0x00, 0xa0, 0xc9, 0x03, 0x48, 0xf6
-};
-
-static const GUID data_header = {
- 0x36, 0x26, 0xb2, 0x75, 0x8E, 0x66, 0xCF, 0x11, 0xa6, 0xd9, 0x00, 0xaa, 0x00, 0x62, 0xce, 0x6c
-};
-
-static const GUID head1_guid = {
- 0xb5, 0x03, 0xbf, 0x5f, 0x2E, 0xA9, 0xCF, 0x11, 0x8e, 0xe3, 0x00, 0xc0, 0x0c, 0x20, 0x53, 0x65
-};
-
-static const GUID head2_guid = {
- 0x11, 0xd2, 0xd3, 0xab, 0xBA, 0xA9, 0xCF, 0x11, 0x8e, 0xe6, 0x00, 0xc0, 0x0c, 0x20, 0x53, 0x65
-};
-
-static const GUID extended_content_header = {
- 0x40, 0xA4, 0xD0, 0xD2, 0x07, 0xE3, 0xD2, 0x11, 0x97, 0xF0, 0x00, 0xA0, 0xC9, 0x5E, 0xA8, 0x50
-};
-
-static const GUID simple_index_header = {
- 0x90, 0x08, 0x00, 0x33, 0xB1, 0xE5, 0xCF, 0x11, 0x89, 0xF4, 0x00, 0xA0, 0xC9, 0x03, 0x49, 0xCB
-};
-
-static const GUID ext_stream_embed_stream_header = {
- 0xe2, 0x65, 0xfb, 0x3a, 0xEF, 0x47, 0xF2, 0x40, 0xac, 0x2c, 0x70, 0xa9, 0x0d, 0x71, 0xd3, 0x43
-};
-
-static const GUID ext_stream_audio_stream = {
- 0x9d, 0x8c, 0x17, 0x31, 0xE1, 0x03, 0x28, 0x45, 0xb5, 0x82, 0x3d, 0xf9, 0xdb, 0x22, 0xf5, 0x03
-};
-
-static const GUID metadata_header = {
- 0xea, 0xcb, 0xf8, 0xc5, 0xaf, 0x5b, 0x77, 0x48, 0x84, 0x67, 0xaa, 0x8c, 0x44, 0xfa, 0x4c, 0xca
-};
-
-/* I am not a number !!! This GUID is the one found on the PC used to
- generate the stream */
-static const GUID my_guid = {
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
-};
+extern const GUID ff_asf_header;
+extern const GUID ff_asf_file_header;
+extern const GUID ff_asf_stream_header;
+extern const GUID ff_asf_ext_stream_header;
+extern const GUID ff_asf_audio_stream;
+extern const GUID ff_asf_audio_conceal_none;
+extern const GUID ff_asf_audio_conceal_spread;
+extern const GUID ff_asf_video_stream;
+extern const GUID ff_asf_video_conceal_none;
+extern const GUID ff_asf_command_stream;
+extern const GUID ff_asf_comment_header;
+extern const GUID ff_asf_codec_comment_header;
+extern const GUID ff_asf_codec_comment1_header;
+extern const GUID ff_asf_data_header;
+extern const GUID ff_asf_head1_guid;
+extern const GUID ff_asf_head2_guid;
+extern const GUID ff_asf_extended_content_header;
+extern const GUID ff_asf_simple_index_header;
+extern const GUID ff_asf_ext_stream_embed_stream_header;
+extern const GUID ff_asf_ext_stream_audio_stream;
+extern const GUID ff_asf_metadata_header;
+extern const GUID ff_asf_my_guid;
#define ASF_PACKET_FLAG_ERROR_CORRECTION_PRESENT 0x80 //1000 0000
Modified: trunk/libavformat/asfdec.c
==============================================================================
--- trunk/libavformat/asfdec.c Thu Feb 26 16:44:19 2009 (r17618)
+++ trunk/libavformat/asfdec.c Thu Feb 26 17:17:17 2009 (r17619)
@@ -54,27 +54,27 @@ if (!memcmp(g, &cmp, sizeof(GUID))) \
static void print_guid(const GUID *g)
{
int i;
- PRINT_IF_GUID(g, asf_header);
- else PRINT_IF_GUID(g, file_header);
- else PRINT_IF_GUID(g, stream_header);
- else PRINT_IF_GUID(g, audio_stream);
- else PRINT_IF_GUID(g, audio_conceal_none);
- else PRINT_IF_GUID(g, video_stream);
- else PRINT_IF_GUID(g, video_conceal_none);
- else PRINT_IF_GUID(g, command_stream);
- else PRINT_IF_GUID(g, comment_header);
- else PRINT_IF_GUID(g, codec_comment_header);
- else PRINT_IF_GUID(g, codec_comment1_header);
- else PRINT_IF_GUID(g, data_header);
+ PRINT_IF_GUID(g, ff_asf_header);
+ else PRINT_IF_GUID(g, ff_asf_file_header);
+ else PRINT_IF_GUID(g, ff_asf_stream_header);
+ else PRINT_IF_GUID(g, ff_asf_audio_stream);
+ else PRINT_IF_GUID(g, ff_asf_audio_conceal_none);
+ else PRINT_IF_GUID(g, ff_asf_video_stream);
+ else PRINT_IF_GUID(g, ff_asf_video_conceal_none);
+ else PRINT_IF_GUID(g, ff_asf_command_stream);
+ else PRINT_IF_GUID(g, ff_asf_comment_header);
+ else PRINT_IF_GUID(g, ff_asf_codec_comment_header);
+ else PRINT_IF_GUID(g, ff_asf_codec_comment1_header);
+ else PRINT_IF_GUID(g, ff_asf_data_header);
else PRINT_IF_GUID(g, index_guid);
- else PRINT_IF_GUID(g, head1_guid);
- else PRINT_IF_GUID(g, head2_guid);
- else PRINT_IF_GUID(g, my_guid);
- else PRINT_IF_GUID(g, ext_stream_header);
- else PRINT_IF_GUID(g, extended_content_header);
- else PRINT_IF_GUID(g, ext_stream_embed_stream_header);
- else PRINT_IF_GUID(g, ext_stream_audio_stream);
- else PRINT_IF_GUID(g, metadata_header);
+ else PRINT_IF_GUID(g, ff_asf_head1_guid);
+ else PRINT_IF_GUID(g, ff_asf_head2_guid);
+ else PRINT_IF_GUID(g, ff_asf_my_guid);
+ else PRINT_IF_GUID(g, ff_asf_ext_stream_header);
+ else PRINT_IF_GUID(g, ff_asf_extended_content_header);
+ else PRINT_IF_GUID(g, ff_asf_ext_stream_embed_stream_header);
+ else PRINT_IF_GUID(g, ff_asf_ext_stream_audio_stream);
+ else PRINT_IF_GUID(g, ff_asf_metadata_header);
else PRINT_IF_GUID(g, stream_bitrate_guid);
else
dprintf(NULL, "(GUID: unknown) ");
@@ -125,7 +125,7 @@ static void get_str16_nolen(ByteIOContex
static int asf_probe(AVProbeData *pd)
{
/* check file header */
- if (!memcmp(pd->buf, &asf_header, sizeof(GUID)))
+ if (!memcmp(pd->buf, &ff_asf_header, sizeof(GUID)))
return AVPROBE_SCORE_MAX;
else
return 0;
@@ -174,7 +174,7 @@ static int asf_read_header(AVFormatConte
memset(bitrate, 0, sizeof(bitrate));
get_guid(pb, &g);
- if (memcmp(&g, &asf_header, sizeof(GUID)))
+ if (memcmp(&g, &ff_asf_header, sizeof(GUID)))
return -1;
get_le64(pb);
get_le32(pb);
@@ -187,7 +187,7 @@ static int asf_read_header(AVFormatConte
dprintf(s, "%08"PRIx64": ", url_ftell(pb) - 24);
print_guid(&g);
dprintf(s, " size=0x%"PRIx64"\n", gsize);
- if (!memcmp(&g, &data_header, sizeof(GUID))) {
+ if (!memcmp(&g, &ff_asf_data_header, sizeof(GUID))) {
asf->data_object_offset = url_ftell(pb);
// if not streaming, gsize is not unlimited (how?), and there is enough space in the file..
if (!(asf->hdr.flags & 0x01) && gsize >= 100) {
@@ -199,7 +199,7 @@ static int asf_read_header(AVFormatConte
}
if (gsize < 24)
return -1;
- if (!memcmp(&g, &file_header, sizeof(GUID))) {
+ if (!memcmp(&g, &ff_asf_file_header, sizeof(GUID))) {
get_guid(pb, &asf->hdr.guid);
asf->hdr.file_size = get_le64(pb);
asf->hdr.create_time = get_le64(pb);
@@ -213,7 +213,7 @@ static int asf_read_header(AVFormatConte
asf->hdr.max_pktsize = get_le32(pb);
asf->hdr.max_bitrate = get_le32(pb);
asf->packet_size = asf->hdr.max_pktsize;
- } else if (!memcmp(&g, &stream_header, sizeof(GUID))) {
+ } else if (!memcmp(&g, &ff_asf_stream_header, sizeof(GUID))) {
enum CodecType type;
int type_specific_size, sizeX;
uint64_t total_size;
@@ -240,13 +240,13 @@ static int asf_read_header(AVFormatConte
get_guid(pb, &g);
test_for_ext_stream_audio = 0;
- if (!memcmp(&g, &audio_stream, sizeof(GUID))) {
+ if (!memcmp(&g, &ff_asf_audio_stream, sizeof(GUID))) {
type = CODEC_TYPE_AUDIO;
- } else if (!memcmp(&g, &video_stream, sizeof(GUID))) {
+ } else if (!memcmp(&g, &ff_asf_video_stream, sizeof(GUID))) {
type = CODEC_TYPE_VIDEO;
- } else if (!memcmp(&g, &command_stream, sizeof(GUID))) {
+ } else if (!memcmp(&g, &ff_asf_command_stream, sizeof(GUID))) {
type = CODEC_TYPE_DATA;
- } else if (!memcmp(&g, &ext_stream_embed_stream_header, sizeof(GUID))) {
+ } else if (!memcmp(&g, &ff_asf_ext_stream_embed_stream_header, sizeof(GUID))) {
test_for_ext_stream_audio = 1;
type = CODEC_TYPE_UNKNOWN;
} else {
@@ -264,7 +264,7 @@ static int asf_read_header(AVFormatConte
if (test_for_ext_stream_audio) {
get_guid(pb, &g);
- if (!memcmp(&g, &ext_stream_audio_stream, sizeof(GUID))) {
+ if (!memcmp(&g, &ff_asf_ext_stream_audio_stream, sizeof(GUID))) {
type = CODEC_TYPE_AUDIO;
is_dvr_ms_audio=1;
get_guid(pb, &g);
@@ -370,7 +370,7 @@ static int asf_read_header(AVFormatConte
}
pos2 = url_ftell(pb);
url_fskip(pb, gsize - (pos2 - pos1 + 24));
- } else if (!memcmp(&g, &comment_header, sizeof(GUID))) {
+ } else if (!memcmp(&g, &ff_asf_comment_header, sizeof(GUID))) {
int len1, len2, len3, len4, len5;
len1 = get_le16(pb);
@@ -398,7 +398,7 @@ static int asf_read_header(AVFormatConte
// av_log(s, AV_LOG_ERROR, "flags: 0x%x stream id %d, bitrate %d\n", flags, stream_id, bitrate);
asf->stream_bitrates[stream_id]= bitrate;
}
- } else if (!memcmp(&g, &extended_content_header, sizeof(GUID))) {
+ } else if (!memcmp(&g, &ff_asf_extended_content_header, sizeof(GUID))) {
int desc_count, i;
desc_count = get_le16(pb);
@@ -413,7 +413,7 @@ static int asf_read_header(AVFormatConte
value_len = get_le16(pb);
get_tag(s, name, value_type, value_len);
}
- } else if (!memcmp(&g, &metadata_header, sizeof(GUID))) {
+ } else if (!memcmp(&g, &ff_asf_metadata_header, sizeof(GUID))) {
int n, stream_num, name_len, value_len, value_type, value_num;
n = get_le16(pb);
@@ -436,7 +436,7 @@ static int asf_read_header(AVFormatConte
else if(!strcmp(name, "AspectRatioY")) dar[stream_num].den= value_num;
}
}
- } else if (!memcmp(&g, &ext_stream_header, sizeof(GUID))) {
+ } else if (!memcmp(&g, &ff_asf_ext_stream_header, sizeof(GUID))) {
int ext_len, payload_ext_ct, stream_ct;
uint32_t ext_d, leak_rate, stream_num;
int64_t pos_ex_st;
@@ -476,13 +476,13 @@ static int asf_read_header(AVFormatConte
// there could be a optional stream properties object to follow
// if so the next iteration will pick it up
- } else if (!memcmp(&g, &head1_guid, sizeof(GUID))) {
+ } else if (!memcmp(&g, &ff_asf_head1_guid, sizeof(GUID))) {
int v1, v2;
get_guid(pb, &g);
v1 = get_le32(pb);
v2 = get_le16(pb);
#if 0
- } else if (!memcmp(&g, &codec_comment_header, sizeof(GUID))) {
+ } else if (!memcmp(&g, &ff_asf_codec_comment_header, sizeof(GUID))) {
int len, v1, n, num;
char str[256], *q;
char tag[16];
Modified: trunk/libavformat/asfenc.c
==============================================================================
--- trunk/libavformat/asfenc.c Thu Feb 26 16:44:19 2009 (r17618)
+++ trunk/libavformat/asfenc.c Thu Feb 26 17:17:17 2009 (r17619)
@@ -303,7 +303,7 @@ static int asf_write_header1(AVFormatCon
put_chunk(s, 0x4824, 0, 0xc00); /* start of stream (length will be patched later) */
}
- put_guid(pb, &asf_header);
+ put_guid(pb, &ff_asf_header);
put_le64(pb, -1); /* header length, will be patched after */
put_le32(pb, 3 + has_title + !!metadata_count + s->nb_streams); /* number of chunks in header */
put_byte(pb, 1); /* ??? */
@@ -311,8 +311,8 @@ static int asf_write_header1(AVFormatCon
/* file header */
header_offset = url_ftell(pb);
- hpos = put_header(pb, &file_header);
- put_guid(pb, &my_guid);
+ hpos = put_header(pb, &ff_asf_file_header);
+ put_guid(pb, &ff_asf_my_guid);
put_le64(pb, file_size);
file_time = 0;
put_le64(pb, unix_to_file_time(file_time));
@@ -327,15 +327,15 @@ static int asf_write_header1(AVFormatCon
end_header(pb, hpos);
/* unknown headers */
- hpos = put_header(pb, &head1_guid);
- put_guid(pb, &head2_guid);
+ hpos = put_header(pb, &ff_asf_head1_guid);
+ put_guid(pb, &ff_asf_head2_guid);
put_le32(pb, 6);
put_le16(pb, 0);
end_header(pb, hpos);
/* title and other infos */
if (has_title) {
- hpos = put_header(pb, &comment_header);
+ hpos = put_header(pb, &ff_asf_comment_header);
put_le16(pb, title ? 2 * (strlen(title->value ) + 1) : 0);
put_le16(pb, author ? 2 * (strlen(author->value ) + 1) : 0);
put_le16(pb, copyright ? 2 * (strlen(copyright->value) + 1) : 0);
@@ -349,7 +349,7 @@ static int asf_write_header1(AVFormatCon
}
if (metadata_count) {
AVMetadataTag *tag = NULL;
- hpos = put_header(pb, &extended_content_header);
+ hpos = put_header(pb, &ff_asf_extended_content_header);
put_le16(pb, metadata_count);
while ((tag = av_metadata_get(s->metadata, "", tag, AV_METADATA_IGNORE_SUFFIX))) {
put_le16(pb, 2*(strlen(tag->key) + 3) + 1);
@@ -388,13 +388,13 @@ static int asf_write_header1(AVFormatCon
break;
}
- hpos = put_header(pb, &stream_header);
+ hpos = put_header(pb, &ff_asf_stream_header);
if (enc->codec_type == CODEC_TYPE_AUDIO) {
- put_guid(pb, &audio_stream);
- put_guid(pb, &audio_conceal_spread);
+ put_guid(pb, &ff_asf_audio_stream);
+ put_guid(pb, &ff_asf_audio_conceal_spread);
} else {
- put_guid(pb, &video_stream);
- put_guid(pb, &video_conceal_none);
+ put_guid(pb, &ff_asf_video_stream);
+ put_guid(pb, &ff_asf_video_conceal_none);
}
put_le64(pb, 0); /* ??? */
es_pos = url_ftell(pb);
@@ -444,8 +444,8 @@ static int asf_write_header1(AVFormatCon
/* media comments */
- hpos = put_header(pb, &codec_comment_header);
- put_guid(pb, &codec_comment1_header);
+ hpos = put_header(pb, &ff_asf_codec_comment_header);
+ put_guid(pb, &ff_asf_codec_comment1_header);
put_le32(pb, s->nb_streams);
for(n=0;n<s->nb_streams;n++) {
AVCodec *p;
@@ -501,9 +501,9 @@ static int asf_write_header1(AVFormatCon
/* movie chunk, followed by packets of packet_size */
asf->data_offset = cur_pos;
- put_guid(pb, &data_header);
+ put_guid(pb, &ff_asf_data_header);
put_le64(pb, data_chunk_size);
- put_guid(pb, &my_guid);
+ put_guid(pb, &ff_asf_my_guid);
put_le64(pb, asf->nb_packets); /* nb packets */
put_byte(pb, 1); /* ??? */
put_byte(pb, 1); /* ??? */
@@ -793,9 +793,9 @@ static int asf_write_index(AVFormatConte
ByteIOContext *pb = s->pb;
int i;
- put_guid(pb, &simple_index_header);
+ put_guid(pb, &ff_asf_simple_index_header);
put_le64(pb, 24 + 16 + 8 + 4 + 4 + (4 + 2)*count);
- put_guid(pb, &my_guid);
+ put_guid(pb, &ff_asf_my_guid);
put_le64(pb, ASF_INDEXED_INTERVAL);
put_le32(pb, max);
put_le32(pb, count);
More information about the ffmpeg-cvslog
mailing list