aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPhilip Gladstone <philipjsg@users.sourceforge.net>2005-05-06 03:19:45 +0000
committerPhilip Gladstone <philipjsg@users.sourceforge.net>2005-05-06 03:19:45 +0000
commit223321268fafab4b400ebc7e3a0eb6ad8747238e (patch)
treec412ef4a327a83b6d97657ea690cf24ed565d133
parent02af2269c03ed4a17b81247eff11b0d5bb1e9085 (diff)
downloadffmpeg-223321268fafab4b400ebc7e3a0eb6ad8747238e.tar.gz
Add in many fields that have been added to the Codec structure. This means
that ffm will now carry most of the important fields over between ffserver and ffmpeg Originally committed as revision 4184 to svn://svn.ffmpeg.org/ffmpeg/trunk
-rw-r--r--libavformat/ffm.c28
1 files changed, 28 insertions, 0 deletions
diff --git a/libavformat/ffm.c b/libavformat/ffm.c
index cb53415dbc..a5dd036024 100644
--- a/libavformat/ffm.c
+++ b/libavformat/ffm.c
@@ -160,6 +160,8 @@ static int ffm_write_header(AVFormatContext *s)
put_be32(pb, codec->bit_rate);
put_be32(pb, st->quality);
put_be32(pb, codec->flags);
+ put_be32(pb, codec->flags2);
+ put_be32(pb, codec->debug);
/* specific info */
switch(codec->codec_type) {
case CODEC_TYPE_VIDEO:
@@ -168,6 +170,7 @@ static int ffm_write_header(AVFormatContext *s)
put_be16(pb, codec->width);
put_be16(pb, codec->height);
put_be16(pb, codec->gop_size);
+ put_be32(pb, codec->pix_fmt);
put_byte(pb, codec->qmin);
put_byte(pb, codec->qmax);
put_byte(pb, codec->max_qdiff);
@@ -183,6 +186,17 @@ static int ffm_write_header(AVFormatContext *s)
put_be64_double(pb, codec->i_quant_offset);
put_be64_double(pb, codec->b_quant_offset);
put_be32(pb, codec->dct_algo);
+ put_be32(pb, codec->strict_std_compliance);
+ put_be32(pb, codec->max_b_frames);
+ put_be32(pb, codec->luma_elim_threshold);
+ put_be32(pb, codec->chroma_elim_threshold);
+ put_be32(pb, codec->mpeg_quant);
+ put_be32(pb, codec->intra_dc_precision);
+ put_be32(pb, codec->me_method);
+ put_be32(pb, codec->mb_decision);
+ put_be32(pb, codec->nsse_weight);
+ put_be32(pb, codec->frame_skip_cmp);
+ put_be64_double(pb, codec->rc_buffer_aggressivity);
break;
case CODEC_TYPE_AUDIO:
put_be32(pb, codec->sample_rate);
@@ -477,6 +491,8 @@ static int ffm_read_header(AVFormatContext *s, AVFormatParameters *ap)
codec->bit_rate = get_be32(pb);
st->quality = get_be32(pb);
codec->flags = get_be32(pb);
+ codec->flags2 = get_be32(pb);
+ codec->debug = get_be32(pb);
/* specific info */
switch(codec->codec_type) {
case CODEC_TYPE_VIDEO:
@@ -485,6 +501,7 @@ static int ffm_read_header(AVFormatContext *s, AVFormatParameters *ap)
codec->width = get_be16(pb);
codec->height = get_be16(pb);
codec->gop_size = get_be16(pb);
+ codec->pix_fmt = get_be32(pb);
codec->qmin = get_byte(pb);
codec->qmax = get_byte(pb);
codec->max_qdiff = get_byte(pb);
@@ -500,6 +517,17 @@ static int ffm_read_header(AVFormatContext *s, AVFormatParameters *ap)
codec->i_quant_offset = get_be64_double(pb);
codec->b_quant_offset = get_be64_double(pb);
codec->dct_algo = get_be32(pb);
+ codec->strict_std_compliance = get_be32(pb);
+ codec->max_b_frames = get_be32(pb);
+ codec->luma_elim_threshold = get_be32(pb);
+ codec->chroma_elim_threshold = get_be32(pb);
+ codec->mpeg_quant = get_be32(pb);
+ codec->intra_dc_precision = get_be32(pb);
+ codec->me_method = get_be32(pb);
+ codec->mb_decision = get_be32(pb);
+ codec->nsse_weight = get_be32(pb);
+ codec->frame_skip_cmp = get_be32(pb);
+ codec->rc_buffer_aggressivity = get_be64_double(pb);
break;
case CODEC_TYPE_AUDIO:
codec->sample_rate = get_be32(pb);