Originally committed as revision 10868 to svn://svn.ffmpeg.org/ffmpeg/trunktags/v0.5
@@ -50,7 +50,7 @@ OBJS-$(CONFIG_FLIC_DEMUXER) += flic.o | |||||
OBJS-$(CONFIG_FLV_DEMUXER) += flvdec.o | OBJS-$(CONFIG_FLV_DEMUXER) += flvdec.o | ||||
OBJS-$(CONFIG_FLV_MUXER) += flvenc.o | OBJS-$(CONFIG_FLV_MUXER) += flvenc.o | ||||
OBJS-$(CONFIG_FOURXM_DEMUXER) += 4xm.o | OBJS-$(CONFIG_FOURXM_DEMUXER) += 4xm.o | ||||
OBJS-$(CONFIG_FRAMECRC_MUXER) += crc.o | |||||
OBJS-$(CONFIG_FRAMECRC_MUXER) += framecrcenc.o | |||||
OBJS-$(CONFIG_GIF_MUXER) += gif.o | OBJS-$(CONFIG_GIF_MUXER) += gif.o | ||||
OBJS-$(CONFIG_GIF_DEMUXER) += gifdec.o | OBJS-$(CONFIG_GIF_DEMUXER) += gifdec.o | ||||
OBJS-$(CONFIG_GXF_DEMUXER) += gxf.o | OBJS-$(CONFIG_GXF_DEMUXER) += gxf.o | ||||
@@ -1,5 +1,5 @@ | |||||
/* | /* | ||||
* CRC decoder (for codec/format testing) | |||||
* CRC encoder (for codec/format testing) | |||||
* Copyright (c) 2002 Fabrice Bellard. | * Copyright (c) 2002 Fabrice Bellard. | ||||
* | * | ||||
* This file is part of FFmpeg. | * This file is part of FFmpeg. | ||||
@@ -21,7 +21,6 @@ | |||||
#include "avformat.h" | #include "avformat.h" | ||||
#include "adler32.h" | #include "adler32.h" | ||||
#ifdef CONFIG_CRC_MUXER | |||||
typedef struct CRCState { | typedef struct CRCState { | ||||
uint32_t crcval; | uint32_t crcval; | ||||
} CRCState; | } CRCState; | ||||
@@ -53,22 +52,7 @@ static int crc_write_trailer(struct AVFormatContext *s) | |||||
put_flush_packet(&s->pb); | put_flush_packet(&s->pb); | ||||
return 0; | return 0; | ||||
} | } | ||||
#endif | |||||
#ifdef CONFIG_FRAMECRC_MUXER | |||||
static int framecrc_write_packet(struct AVFormatContext *s, AVPacket *pkt) | |||||
{ | |||||
uint32_t crc = av_adler32_update(0, pkt->data, pkt->size); | |||||
char buf[256]; | |||||
snprintf(buf, sizeof(buf), "%d, %"PRId64", %d, 0x%08x\n", pkt->stream_index, pkt->dts, pkt->size, crc); | |||||
put_buffer(&s->pb, buf, strlen(buf)); | |||||
put_flush_packet(&s->pb); | |||||
return 0; | |||||
} | |||||
#endif | |||||
#ifdef CONFIG_CRC_MUXER | |||||
AVOutputFormat crc_muxer = { | AVOutputFormat crc_muxer = { | ||||
"crc", | "crc", | ||||
"crc testing format", | "crc testing format", | ||||
@@ -81,18 +65,3 @@ AVOutputFormat crc_muxer = { | |||||
crc_write_packet, | crc_write_packet, | ||||
crc_write_trailer, | crc_write_trailer, | ||||
}; | }; | ||||
#endif | |||||
#ifdef CONFIG_FRAMECRC_MUXER | |||||
AVOutputFormat framecrc_muxer = { | |||||
"framecrc", | |||||
"framecrc testing format", | |||||
NULL, | |||||
"", | |||||
0, | |||||
CODEC_ID_PCM_S16LE, | |||||
CODEC_ID_RAWVIDEO, | |||||
NULL, | |||||
framecrc_write_packet, | |||||
NULL, | |||||
}; | |||||
#endif |
@@ -0,0 +1,46 @@ | |||||
/* | |||||
* frame CRC encoder (for codec/format testing) | |||||
* Copyright (c) 2002 Fabrice Bellard. | |||||
* | |||||
* This file is part of FFmpeg. | |||||
* | |||||
* FFmpeg is free software; you can redistribute it and/or | |||||
* modify it under the terms of the GNU Lesser General Public | |||||
* License as published by the Free Software Foundation; either | |||||
* version 2.1 of the License, or (at your option) any later version. | |||||
* | |||||
* FFmpeg is distributed in the hope that it will be useful, | |||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of | |||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |||||
* Lesser General Public License for more details. | |||||
* | |||||
* You should have received a copy of the GNU Lesser General Public | |||||
* License along with FFmpeg; if not, write to the Free Software | |||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA | |||||
*/ | |||||
#include "avformat.h" | |||||
#include "adler32.h" | |||||
static int framecrc_write_packet(struct AVFormatContext *s, AVPacket *pkt) | |||||
{ | |||||
uint32_t crc = av_adler32_update(0, pkt->data, pkt->size); | |||||
char buf[256]; | |||||
snprintf(buf, sizeof(buf), "%d, %"PRId64", %d, 0x%08x\n", pkt->stream_index, pkt->dts, pkt->size, crc); | |||||
put_buffer(&s->pb, buf, strlen(buf)); | |||||
put_flush_packet(&s->pb); | |||||
return 0; | |||||
} | |||||
AVOutputFormat framecrc_muxer = { | |||||
"framecrc", | |||||
"framecrc testing format", | |||||
NULL, | |||||
"", | |||||
0, | |||||
CODEC_ID_PCM_S16LE, | |||||
CODEC_ID_RAWVIDEO, | |||||
NULL, | |||||
framecrc_write_packet, | |||||
NULL, | |||||
}; |