comparison loader/dshow/DS_VideoDec.c @ 1559:241ea640d1c3

fixes
author arpi
date Thu, 16 Aug 2001 18:39:49 +0000
parents 076c27342828
children a3d84360aa81
comparison
equal deleted inserted replaced
1558:261f5fd2c909 1559:241ea640d1c3
1 #include "guids.h" 1 #include "guids.h"
2 #include "interfaces.h" 2 #include "interfaces.h"
3 #include "libwin32.h"
3 4
4 #include "DS_VideoDecoder.h" 5 #include "DS_VideoDecoder.h"
5 #include <wine/winerror.h> 6 #include <wine/winerror.h>
6 #include <libwin32.h>
7 //#include <cpuinfo.h> 7 //#include <cpuinfo.h>
8 8
9 #include <unistd.h> 9 #include <unistd.h>
10 #include <fcntl.h> 10 #include <fcntl.h>
11 #include <errno.h> 11 #include <errno.h>
31 Setup_LDT_Keeper(); 31 Setup_LDT_Keeper();
32 32
33 CodecInfo ci; 33 CodecInfo ci;
34 ci.dll=dllname; 34 ci.dll=dllname;
35 ci.guid=*guid; 35 ci.guid=*guid;
36 36
37 DS_VideoDecoder* dec=new DS_VideoDecoder(ci, *format, flip); 37 // try {
38 DS_VideoDecoder* dec=new DS_VideoDecoder(ci, *format, flip);
39 // } catch (FatalError &e) {
40 // _handle=NULL;
41 // return -1;
42 // }
38 43
39 _d_ptr=d_ptr; 44 _d_ptr=d_ptr;
40 _handle=(void*)dec; 45 _handle=(void*)dec;
41 46
42 return 0; 47 return 0;
54 59
55 extern "C" void DS_VideoDecoder_Restart(){ 60 extern "C" void DS_VideoDecoder_Restart(){
56 } 61 }
57 62
58 extern "C" void DS_VideoDecoder_Close(){ 63 extern "C" void DS_VideoDecoder_Close(){
64 DS_VideoDecoder* dec=(DS_VideoDecoder*) _handle;
65 delete dec;
59 } 66 }
60 67
61 extern "C" int DS_VideoDecoder_DecodeFrame(char* src, int size, int is_keyframe, int render){ 68 extern "C" int DS_VideoDecoder_DecodeFrame(char* src, int size, int is_keyframe, int render){
62 DS_VideoDecoder* dec=(DS_VideoDecoder*) _handle; 69 DS_VideoDecoder* dec=(DS_VideoDecoder*) _handle;
63 CImage image; 70 CImage image;
64 image.ptr=*_d_ptr; 71 image.ptr=*_d_ptr;
65 return dec->DecodeInternal((void*)src,(size_t)size,is_keyframe,&image); 72 return dec->Decode((void*)src,(size_t)size,is_keyframe,&image);
66 } 73 }
67 74
68 extern "C" int DS_VideoDecoder_SetDestFmt(int bits, int csp){ 75 extern "C" int DS_VideoDecoder_SetDestFmt(int bits, int csp){
69 DS_VideoDecoder* dec=(DS_VideoDecoder*) _handle; 76 DS_VideoDecoder* dec=(DS_VideoDecoder*) _handle;
70 return dec->SetDestFmt(bits,(fourcc_t)csp); 77 return dec->SetDestFmt(bits,(fourcc_t)csp);