[FFmpeg-cvslog] r21773 - in trunk/libavformat: avformat.h img2.c utils.c
michael
subversion
Fri Feb 12 21:35:29 CET 2010
Author: michael
Date: Fri Feb 12 21:35:29 2010
New Revision: 21773
Log:
Add flag so muxers not needing width/height can signal this.
Add this flag to img2 (fixes -vcodec copy to image2 in some cases)
Modified:
trunk/libavformat/avformat.h
trunk/libavformat/img2.c
trunk/libavformat/utils.c
Modified: trunk/libavformat/avformat.h
==============================================================================
--- trunk/libavformat/avformat.h Fri Feb 12 20:25:23 2010 (r21772)
+++ trunk/libavformat/avformat.h Fri Feb 12 21:35:29 2010 (r21773)
@@ -242,6 +242,7 @@ typedef struct AVFormatParameters {
#define AVFMT_GENERIC_INDEX 0x0100 /**< Use generic index building code. */
#define AVFMT_TS_DISCONT 0x0200 /**< Format allows timestamp discontinuities. */
#define AVFMT_VARIABLE_FPS 0x0400 /**< Format allows variable fps. */
+#define AVFMT_NODIMENSIONS 0x0800 /**< Format does not need width/height */
typedef struct AVOutputFormat {
const char *name;
Modified: trunk/libavformat/img2.c
==============================================================================
--- trunk/libavformat/img2.c Fri Feb 12 20:25:23 2010 (r21772)
+++ trunk/libavformat/img2.c Fri Feb 12 21:35:29 2010 (r21773)
@@ -446,7 +446,7 @@ AVOutputFormat image2_muxer = {
img_write_header,
img_write_packet,
NULL,
- .flags= AVFMT_NOTIMESTAMPS | AVFMT_NOFILE
+ .flags= AVFMT_NOTIMESTAMPS | AVFMT_NODIMENSIONS | AVFMT_NOFILE
};
#endif
#if CONFIG_IMAGE2PIPE_MUXER
@@ -460,6 +460,6 @@ AVOutputFormat image2pipe_muxer = {
CODEC_ID_MJPEG,
img_write_header,
img_write_packet,
- .flags= AVFMT_NOTIMESTAMPS
+ .flags= AVFMT_NOTIMESTAMPS | AVFMT_NODIMENSIONS
};
#endif
Modified: trunk/libavformat/utils.c
==============================================================================
--- trunk/libavformat/utils.c Fri Feb 12 20:25:23 2010 (r21772)
+++ trunk/libavformat/utils.c Fri Feb 12 21:35:29 2010 (r21773)
@@ -2546,7 +2546,7 @@ int av_write_header(AVFormatContext *s)
av_log(s, AV_LOG_ERROR, "time base not set\n");
return -1;
}
- if(st->codec->width<=0 || st->codec->height<=0){
+ if((st->codec->width<=0 || st->codec->height<=0) && !(s->oformat->flags & AVFMT_NODIMENSIONS)){
av_log(s, AV_LOG_ERROR, "dimensions not set\n");
return -1;
}
More information about the ffmpeg-cvslog
mailing list