aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec/mpegvideo.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2002-08-06 23:51:15 +0000
committerMichael Niedermayer <michaelni@gmx.at>2002-08-06 23:51:15 +0000
commit87f8cab45b66712c23f861661afb97739f1fd8f5 (patch)
tree2f30abe9667c4da38a0d0029281ceba4424fe973 /libavcodec/mpegvideo.c
parent508abacadb4249cd0c2c195cff117d8a96b2936f (diff)
downloadffmpeg-87f8cab45b66712c23f861661afb97739f1fd8f5.tar.gz
mpeg4 mpeg quantizer encoding
Originally committed as revision 844 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec/mpegvideo.c')
-rw-r--r--libavcodec/mpegvideo.c15
1 files changed, 10 insertions, 5 deletions
diff --git a/libavcodec/mpegvideo.c b/libavcodec/mpegvideo.c
index f08ff6f9eb..320e2e4a82 100644
--- a/libavcodec/mpegvideo.c
+++ b/libavcodec/mpegvideo.c
@@ -390,6 +390,7 @@ int MPV_encode_init(AVCodecContext *avctx)
s->chroma_elim_threshold= avctx->chroma_elim_threshold;
s->strict_std_compliance= avctx->strict_std_compliance;
s->data_partitioning= avctx->flags & CODEC_FLAG_PART;
+ s->mpeg_quant= avctx->mpeg_quant;
if (s->gop_size <= 1) {
s->intra_only = 1;
@@ -542,12 +543,16 @@ int MPV_encode_init(AVCodecContext *avctx)
/* init default q matrix */
for(i=0;i<64;i++) {
- if(s->out_format == FMT_H263)
- s->intra_matrix[i] = ff_mpeg1_default_non_intra_matrix[i];
- else
+ if(s->codec_id==CODEC_ID_MPEG4 && s->mpeg_quant){
+ s->intra_matrix[i] = ff_mpeg4_default_intra_matrix[i];
+ s->inter_matrix[i] = ff_mpeg4_default_non_intra_matrix[i];
+ }else if(s->out_format == FMT_H263){
+ s->intra_matrix[i] =
+ s->inter_matrix[i] = ff_mpeg1_default_non_intra_matrix[i];
+ }else{ /* mpeg1 */
s->intra_matrix[i] = ff_mpeg1_default_intra_matrix[i];
-
- s->inter_matrix[i] = ff_mpeg1_default_non_intra_matrix[i];
+ s->inter_matrix[i] = ff_mpeg1_default_non_intra_matrix[i];
+ }
}
/* precompute matrix */