summaryrefslogtreecommitdiff
path: root/libavformat/ffm.c
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 /libavformat/ffm.c
parent02af2269c03ed4a17b81247eff11b0d5bb1e9085 (diff)
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
Diffstat (limited to 'libavformat/ffm.c')
-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);