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: