div3/vfw encoding fixed

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@4639 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
arpi 2002-02-10 12:20:50 +00:00
parent b1f8269755
commit c7fb41804c
3 changed files with 6 additions and 6 deletions

View File

@ -420,7 +420,7 @@ static int encoder_buf_size=0;
static int encoder_frameno=0;
//int init_vfw_encoder(char *dll_name, BITMAPINFOHEADER *input_bih, BITMAPINFOHEADER *output_bih)
BITMAPINFOHEADER* vfw_open_encoder(char *dll_name, BITMAPINFOHEADER *input_bih)
BITMAPINFOHEADER* vfw_open_encoder(char *dll_name, BITMAPINFOHEADER *input_bih,unsigned int out_fourcc)
{
// sh_video_t *sh_video;
HRESULT ret;
@ -440,7 +440,7 @@ BITMAPINFOHEADER* vfw_open_encoder(char *dll_name, BITMAPINFOHEADER *input_bih)
// output_bih->biSize = sizeof(BITMAPINFOHEADER);
win32_codec_name = dll_name;
encoder_hic = ICOpen( 0x63646976, 0, ICMODE_COMPRESS);
encoder_hic = ICOpen( 0x63646976, out_fourcc, ICMODE_COMPRESS);
if(!encoder_hic){
mp_msg(MSGT_WIN32,MSGL_ERR,"ICOpen failed! unknown codec / wrong parameters?\n");
return NULL;

View File

@ -10,7 +10,7 @@ int init_vfw_video_codec(sh_video_t *sh_video,int ex);
int vfw_decode_video(sh_video_t* sh_video,void* start,int in_size,int drop_frame,int ex);
int vfw_set_postproc(sh_video_t* sh_video,int quality);
BITMAPINFOHEADER* vfw_open_encoder(char *dll_name, BITMAPINFOHEADER *input_bih);
BITMAPINFOHEADER* vfw_open_encoder(char *dll_name, BITMAPINFOHEADER *input_bih,unsigned int out_fourcc);
int vfw_encode_frame(BITMAPINFOHEADER* biOutput,void* OutBuf,
BITMAPINFOHEADER* biInput,void* Image,
long* keyframe, int quality);

View File

@ -761,12 +761,12 @@ case VCODEC_VFW:
vfw_bih->biSize=sizeof(BITMAPINFOHEADER);
vfw_bih->biWidth=vo_w;
vfw_bih->biHeight=vo_h;
vfw_bih->biPlanes=0;
vfw_bih->biPlanes=1;
vfw_bih->biBitCount=24;
vfw_bih->biCompression=0;
vfw_bih->biSizeImage=vo_w*vo_h*((vfw_bih->biBitCount+7)/8);
// mux_v->bih=vfw_open_encoder("divxc32.dll",vfw_bih);
mux_v->bih=vfw_open_encoder("AvidAVICodec.dll",vfw_bih);
// mux_v->bih=vfw_open_encoder("divxc32.dll",vfw_bih,mmioFOURCC('D', 'I', 'V', '3'));
mux_v->bih=vfw_open_encoder("AvidAVICodec.dll",vfw_bih, 0);
break;
#else
printf("No support for Win32/VfW codecs compiled in\n");