move id roq muxer to its own file

Originally committed as revision 24968 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
Aurelien Jacobs 2010-08-29 16:35:44 +00:00
parent 49824cb66a
commit 54a73bb57f
4 changed files with 71 additions and 49 deletions

View File

@ -210,7 +210,7 @@ OBJS-$(CONFIG_RL2_DEMUXER) += rl2.o
OBJS-$(CONFIG_RM_DEMUXER) += rmdec.o rm.o OBJS-$(CONFIG_RM_DEMUXER) += rmdec.o rm.o
OBJS-$(CONFIG_RM_MUXER) += rmenc.o rm.o OBJS-$(CONFIG_RM_MUXER) += rmenc.o rm.o
OBJS-$(CONFIG_ROQ_DEMUXER) += idroq.o OBJS-$(CONFIG_ROQ_DEMUXER) += idroq.o
OBJS-$(CONFIG_ROQ_MUXER) += raw.o OBJS-$(CONFIG_ROQ_MUXER) += idroqenc.o
OBJS-$(CONFIG_RSO_DEMUXER) += rsodec.o rso.o raw.o OBJS-$(CONFIG_RSO_DEMUXER) += rsodec.o rso.o raw.o
OBJS-$(CONFIG_RSO_MUXER) += rsoenc.o rso.o OBJS-$(CONFIG_RSO_MUXER) += rsoenc.o rso.o
OBJS-$(CONFIG_RPL_DEMUXER) += rpl.o OBJS-$(CONFIG_RPL_DEMUXER) += rpl.o

49
libavformat/idroqenc.c Normal file
View File

@ -0,0 +1,49 @@
/*
* id RoQ (.roq) File muxer
* Copyright (c) 2007 Vitor Sessak
*
* 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 "raw.h"
static int roq_write_header(struct AVFormatContext *s)
{
static const uint8_t header[] = {
0x84, 0x10, 0xFF, 0xFF, 0xFF, 0xFF, 0x1E, 0x00
};
put_buffer(s->pb, header, 8);
put_flush_packet(s->pb);
return 0;
}
AVOutputFormat roq_muxer =
{
"RoQ",
NULL_IF_CONFIG_SMALL("raw id RoQ format"),
NULL,
"roq",
0,
CODEC_ID_ROQ_DPCM,
CODEC_ID_ROQ,
roq_write_header,
ff_raw_write_packet,
};

View File

@ -31,20 +31,6 @@
/* simple formats */ /* simple formats */
#if CONFIG_ROQ_MUXER
static int roq_write_header(struct AVFormatContext *s)
{
static const uint8_t header[] = {
0x84, 0x10, 0xFF, 0xFF, 0xFF, 0xFF, 0x1E, 0x00
};
put_buffer(s->pb, header, 8);
put_flush_packet(s->pb);
return 0;
}
#endif
#if CONFIG_NULL_MUXER #if CONFIG_NULL_MUXER
static int null_write_packet(struct AVFormatContext *s, AVPacket *pkt) static int null_write_packet(struct AVFormatContext *s, AVPacket *pkt)
{ {
@ -53,7 +39,7 @@ static int null_write_packet(struct AVFormatContext *s, AVPacket *pkt)
#endif #endif
#if CONFIG_MUXERS #if CONFIG_MUXERS
static int raw_write_packet(struct AVFormatContext *s, AVPacket *pkt) int ff_raw_write_packet(AVFormatContext *s, AVPacket *pkt)
{ {
put_buffer(s->pb, pkt->data, pkt->size); put_buffer(s->pb, pkt->data, pkt->size);
put_flush_packet(s->pb); put_flush_packet(s->pb);
@ -688,7 +674,7 @@ AVOutputFormat ac3_muxer = {
CODEC_ID_AC3, CODEC_ID_AC3,
CODEC_ID_NONE, CODEC_ID_NONE,
NULL, NULL,
raw_write_packet, ff_raw_write_packet,
.flags= AVFMT_NOTIMESTAMPS, .flags= AVFMT_NOTIMESTAMPS,
}; };
#endif #endif
@ -716,7 +702,7 @@ AVOutputFormat dirac_muxer = {
CODEC_ID_NONE, CODEC_ID_NONE,
CODEC_ID_DIRAC, CODEC_ID_DIRAC,
NULL, NULL,
raw_write_packet, ff_raw_write_packet,
.flags= AVFMT_NOTIMESTAMPS, .flags= AVFMT_NOTIMESTAMPS,
}; };
#endif #endif
@ -744,7 +730,7 @@ AVOutputFormat dnxhd_muxer = {
CODEC_ID_NONE, CODEC_ID_NONE,
CODEC_ID_DNXHD, CODEC_ID_DNXHD,
NULL, NULL,
raw_write_packet, ff_raw_write_packet,
.flags= AVFMT_NOTIMESTAMPS, .flags= AVFMT_NOTIMESTAMPS,
}; };
#endif #endif
@ -773,7 +759,7 @@ AVOutputFormat dts_muxer = {
CODEC_ID_DTS, CODEC_ID_DTS,
CODEC_ID_NONE, CODEC_ID_NONE,
NULL, NULL,
raw_write_packet, ff_raw_write_packet,
.flags= AVFMT_NOTIMESTAMPS, .flags= AVFMT_NOTIMESTAMPS,
}; };
#endif #endif
@ -802,7 +788,7 @@ AVOutputFormat eac3_muxer = {
CODEC_ID_EAC3, CODEC_ID_EAC3,
CODEC_ID_NONE, CODEC_ID_NONE,
NULL, NULL,
raw_write_packet, ff_raw_write_packet,
.flags= AVFMT_NOTIMESTAMPS, .flags= AVFMT_NOTIMESTAMPS,
}; };
#endif #endif
@ -845,7 +831,7 @@ AVOutputFormat h261_muxer = {
CODEC_ID_NONE, CODEC_ID_NONE,
CODEC_ID_H261, CODEC_ID_H261,
NULL, NULL,
raw_write_packet, ff_raw_write_packet,
.flags= AVFMT_NOTIMESTAMPS, .flags= AVFMT_NOTIMESTAMPS,
}; };
#endif #endif
@ -874,7 +860,7 @@ AVOutputFormat h263_muxer = {
CODEC_ID_NONE, CODEC_ID_NONE,
CODEC_ID_H263, CODEC_ID_H263,
NULL, NULL,
raw_write_packet, ff_raw_write_packet,
.flags= AVFMT_NOTIMESTAMPS, .flags= AVFMT_NOTIMESTAMPS,
}; };
#endif #endif
@ -903,7 +889,7 @@ AVOutputFormat h264_muxer = {
CODEC_ID_NONE, CODEC_ID_NONE,
CODEC_ID_H264, CODEC_ID_H264,
NULL, NULL,
raw_write_packet, ff_raw_write_packet,
.flags= AVFMT_NOTIMESTAMPS, .flags= AVFMT_NOTIMESTAMPS,
}; };
#endif #endif
@ -918,7 +904,7 @@ AVOutputFormat cavsvideo_muxer = {
CODEC_ID_NONE, CODEC_ID_NONE,
CODEC_ID_CAVS, CODEC_ID_CAVS,
NULL, NULL,
raw_write_packet, ff_raw_write_packet,
.flags= AVFMT_NOTIMESTAMPS, .flags= AVFMT_NOTIMESTAMPS,
}; };
#endif #endif
@ -961,7 +947,7 @@ AVOutputFormat m4v_muxer = {
CODEC_ID_NONE, CODEC_ID_NONE,
CODEC_ID_MPEG4, CODEC_ID_MPEG4,
NULL, NULL,
raw_write_packet, ff_raw_write_packet,
.flags= AVFMT_NOTIMESTAMPS, .flags= AVFMT_NOTIMESTAMPS,
}; };
#endif #endif
@ -990,7 +976,7 @@ AVOutputFormat mjpeg_muxer = {
CODEC_ID_NONE, CODEC_ID_NONE,
CODEC_ID_MJPEG, CODEC_ID_MJPEG,
NULL, NULL,
raw_write_packet, ff_raw_write_packet,
.flags= AVFMT_NOTIMESTAMPS, .flags= AVFMT_NOTIMESTAMPS,
}; };
#endif #endif
@ -1019,7 +1005,7 @@ AVOutputFormat mlp_muxer = {
CODEC_ID_MLP, CODEC_ID_MLP,
CODEC_ID_NONE, CODEC_ID_NONE,
NULL, NULL,
raw_write_packet, ff_raw_write_packet,
.flags= AVFMT_NOTIMESTAMPS, .flags= AVFMT_NOTIMESTAMPS,
}; };
#endif #endif
@ -1030,7 +1016,7 @@ AVOutputFormat srt_muxer = {
.long_name = NULL_IF_CONFIG_SMALL("SubRip subtitle format"), .long_name = NULL_IF_CONFIG_SMALL("SubRip subtitle format"),
.mime_type = "application/x-subrip", .mime_type = "application/x-subrip",
.extensions = "srt", .extensions = "srt",
.write_packet = raw_write_packet, .write_packet = ff_raw_write_packet,
.flags = AVFMT_NOTIMESTAMPS, .flags = AVFMT_NOTIMESTAMPS,
.subtitle_codec = CODEC_ID_SRT, .subtitle_codec = CODEC_ID_SRT,
}; };
@ -1060,7 +1046,7 @@ AVOutputFormat truehd_muxer = {
CODEC_ID_TRUEHD, CODEC_ID_TRUEHD,
CODEC_ID_NONE, CODEC_ID_NONE,
NULL, NULL,
raw_write_packet, ff_raw_write_packet,
.flags= AVFMT_NOTIMESTAMPS, .flags= AVFMT_NOTIMESTAMPS,
}; };
#endif #endif
@ -1075,7 +1061,7 @@ AVOutputFormat mpeg1video_muxer = {
CODEC_ID_NONE, CODEC_ID_NONE,
CODEC_ID_MPEG1VIDEO, CODEC_ID_MPEG1VIDEO,
NULL, NULL,
raw_write_packet, ff_raw_write_packet,
.flags= AVFMT_NOTIMESTAMPS, .flags= AVFMT_NOTIMESTAMPS,
}; };
#endif #endif
@ -1090,7 +1076,7 @@ AVOutputFormat mpeg2video_muxer = {
CODEC_ID_NONE, CODEC_ID_NONE,
CODEC_ID_MPEG2VIDEO, CODEC_ID_MPEG2VIDEO,
NULL, NULL,
raw_write_packet, ff_raw_write_packet,
.flags= AVFMT_NOTIMESTAMPS, .flags= AVFMT_NOTIMESTAMPS,
}; };
#endif #endif
@ -1164,26 +1150,11 @@ AVOutputFormat rawvideo_muxer = {
CODEC_ID_NONE, CODEC_ID_NONE,
CODEC_ID_RAWVIDEO, CODEC_ID_RAWVIDEO,
NULL, NULL,
raw_write_packet, ff_raw_write_packet,
.flags= AVFMT_NOTIMESTAMPS, .flags= AVFMT_NOTIMESTAMPS,
}; };
#endif #endif
#if CONFIG_ROQ_MUXER
AVOutputFormat roq_muxer =
{
"RoQ",
NULL_IF_CONFIG_SMALL("raw id RoQ format"),
NULL,
"roq",
0,
CODEC_ID_ROQ_DPCM,
CODEC_ID_ROQ,
roq_write_header,
raw_write_packet,
};
#endif
#if CONFIG_SHORTEN_DEMUXER #if CONFIG_SHORTEN_DEMUXER
AVInputFormat shorten_demuxer = { AVInputFormat shorten_demuxer = {
"shn", "shn",
@ -1238,7 +1209,7 @@ AVOutputFormat pcm_ ## name ## _muxer = {\
codec,\ codec,\
CODEC_ID_NONE,\ CODEC_ID_NONE,\
NULL,\ NULL,\
raw_write_packet,\ ff_raw_write_packet,\
.flags= AVFMT_NOTIMESTAMPS,\ .flags= AVFMT_NOTIMESTAMPS,\
}; };

View File

@ -27,6 +27,8 @@
int pcm_read_seek(AVFormatContext *s, int pcm_read_seek(AVFormatContext *s,
int stream_index, int64_t timestamp, int flags); int stream_index, int64_t timestamp, int flags);
int ff_raw_write_packet(AVFormatContext *s, AVPacket *pkt);
int ff_raw_read_partial_packet(AVFormatContext *s, AVPacket *pkt); int ff_raw_read_partial_packet(AVFormatContext *s, AVPacket *pkt);
#endif /* AVFORMAT_RAW_H */ #endif /* AVFORMAT_RAW_H */