Mercurial > libavcodec.hg
comparison mpegvideo_enc.c @ 5208:430f60820b21 libavcodec
split mpeg12 encoder out of mpeg12.c
author | aurel |
---|---|
date | Thu, 05 Jul 2007 09:08:28 +0000 |
parents | 1c3baf4323bb |
children | 2ac10c5e5885 |
comparison
equal
deleted
inserted
replaced
5207:429a90b631a5 | 5208:430f60820b21 |
---|---|
673 ff_h261_encode_init(s); | 673 ff_h261_encode_init(s); |
674 if (s->out_format == FMT_H263) | 674 if (s->out_format == FMT_H263) |
675 h263_encode_init(s); | 675 h263_encode_init(s); |
676 if (ENABLE_MSMPEG4_ENCODER && s->msmpeg4_version) | 676 if (ENABLE_MSMPEG4_ENCODER && s->msmpeg4_version) |
677 ff_msmpeg4_encode_init(s); | 677 ff_msmpeg4_encode_init(s); |
678 if (s->out_format == FMT_MPEG1) | 678 if ((ENABLE_MPEG1VIDEO_ENCODER || ENABLE_MPEG2VIDEO_ENCODER) |
679 && s->out_format == FMT_MPEG1) | |
679 ff_mpeg1_encode_init(s); | 680 ff_mpeg1_encode_init(s); |
680 | 681 |
681 /* init q matrix */ | 682 /* init q matrix */ |
682 for(i=0;i<64;i++) { | 683 for(i=0;i<64;i++) { |
683 int j= s->dsp.idct_permutation[i]; | 684 int j= s->dsp.idct_permutation[i]; |
1683 | 1684 |
1684 /* huffman encode */ | 1685 /* huffman encode */ |
1685 switch(s->codec_id){ //FIXME funct ptr could be slightly faster | 1686 switch(s->codec_id){ //FIXME funct ptr could be slightly faster |
1686 case CODEC_ID_MPEG1VIDEO: | 1687 case CODEC_ID_MPEG1VIDEO: |
1687 case CODEC_ID_MPEG2VIDEO: | 1688 case CODEC_ID_MPEG2VIDEO: |
1689 if (ENABLE_MPEG1VIDEO_ENCODER || ENABLE_MPEG2VIDEO_ENCODER) | |
1688 mpeg1_encode_mb(s, s->block, motion_x, motion_y); break; | 1690 mpeg1_encode_mb(s, s->block, motion_x, motion_y); break; |
1689 case CODEC_ID_MPEG4: | 1691 case CODEC_ID_MPEG4: |
1690 mpeg4_encode_mb(s, s->block, motion_x, motion_y); break; | 1692 mpeg4_encode_mb(s, s->block, motion_x, motion_y); break; |
1691 case CODEC_ID_MSMPEG4V2: | 1693 case CODEC_ID_MSMPEG4V2: |
1692 case CODEC_ID_MSMPEG4V3: | 1694 case CODEC_ID_MSMPEG4V3: |
2144 ff_mpeg4_encode_video_packet_header(s); | 2146 ff_mpeg4_encode_video_packet_header(s); |
2145 ff_mpeg4_clean_buffers(s); | 2147 ff_mpeg4_clean_buffers(s); |
2146 break; | 2148 break; |
2147 case CODEC_ID_MPEG1VIDEO: | 2149 case CODEC_ID_MPEG1VIDEO: |
2148 case CODEC_ID_MPEG2VIDEO: | 2150 case CODEC_ID_MPEG2VIDEO: |
2151 if (ENABLE_MPEG1VIDEO_ENCODER || ENABLE_MPEG2VIDEO_ENCODER) { | |
2149 ff_mpeg1_encode_slice_header(s); | 2152 ff_mpeg1_encode_slice_header(s); |
2150 ff_mpeg1_clean_buffers(s); | 2153 ff_mpeg1_clean_buffers(s); |
2154 } | |
2151 break; | 2155 break; |
2152 case CODEC_ID_H263: | 2156 case CODEC_ID_H263: |
2153 case CODEC_ID_H263P: | 2157 case CODEC_ID_H263P: |
2154 h263_encode_gob_header(s, mb_y); | 2158 h263_encode_gob_header(s, mb_y); |
2155 break; | 2159 break; |
2871 ff_flv_encode_picture_header(s, picture_number); | 2875 ff_flv_encode_picture_header(s, picture_number); |
2872 else | 2876 else |
2873 h263_encode_picture_header(s, picture_number); | 2877 h263_encode_picture_header(s, picture_number); |
2874 break; | 2878 break; |
2875 case FMT_MPEG1: | 2879 case FMT_MPEG1: |
2880 if (ENABLE_MPEG1VIDEO_ENCODER || ENABLE_MPEG2VIDEO_ENCODER) | |
2876 mpeg1_encode_picture_header(s, picture_number); | 2881 mpeg1_encode_picture_header(s, picture_number); |
2877 break; | 2882 break; |
2878 case FMT_H264: | 2883 case FMT_H264: |
2879 break; | 2884 break; |
2880 default: | 2885 default: |