Mercurial > mplayer.hg
annotate libmpcodecs/vd_xvid.c @ 6701:522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
in xvid it can be used along with divx4.
author | albeu |
---|---|
date | Wed, 10 Jul 2002 20:56:57 +0000 |
parents | |
children | 6af6d7b40638 |
rev | line source |
---|---|
6701
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
1 #include <stdio.h> |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
2 #include <stdlib.h> |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
3 |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
4 #include "config.h" |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
5 #include "mp_msg.h" |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
6 |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
7 #ifdef HAVE_XVID |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
8 |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
9 #include "vd_internal.h" |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
10 |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
11 #include <divx4.h> |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
12 #include <xvid.h> |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
13 |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
14 |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
15 static vd_info_t info = |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
16 { |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
17 "xvid decoder", |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
18 "xvid", |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
19 VFM_XVID, |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
20 "Albeu", |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
21 "Albeu", |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
22 "" |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
23 }; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
24 |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
25 LIBVD_EXTERN(xvid) |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
26 |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
27 typedef struct { |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
28 int cs; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
29 void* hdl; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
30 mp_image_t* mpi; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
31 } priv_t; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
32 |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
33 // to set/get/query special features/parameters |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
34 static int control(sh_video_t *sh,int cmd,void* arg,...){ |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
35 return CONTROL_UNKNOWN; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
36 } |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
37 |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
38 // init driver |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
39 static int init(sh_video_t *sh){ |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
40 XVID_INIT_PARAM ini; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
41 XVID_DEC_PARAM dec_p; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
42 priv_t* p; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
43 int cs; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
44 |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
45 memset(&ini,0,sizeof(XVID_INIT_PARAM)); |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
46 memset(&dec_p,0,sizeof(XVID_DEC_PARAM)); |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
47 |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
48 if(!mpcodecs_config_vo(sh,sh->disp_w,sh->disp_h,IMGFMT_YV12)) |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
49 return 0; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
50 |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
51 switch(sh->codec->outfmt[sh->outfmtidx]){ |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
52 case IMGFMT_YV12: |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
53 cs= XVID_CSP_USER; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
54 break; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
55 case IMGFMT_YUY2: |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
56 cs=XVID_CSP_YUY2; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
57 break; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
58 case IMGFMT_UYVY: |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
59 cs=XVID_CSP_UYVY; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
60 break; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
61 case IMGFMT_I420: |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
62 cs=XVID_CSP_I420; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
63 break; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
64 case IMGFMT_BGR15: |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
65 cs=XVID_CSP_RGB555; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
66 break; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
67 case IMGFMT_BGR16: |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
68 cs=XVID_CSP_RGB565; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
69 break; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
70 case IMGFMT_BGR24: |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
71 cs=XVID_CSP_RGB24; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
72 break; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
73 case IMGFMT_BGR32: |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
74 cs=XVID_CSP_RGB32; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
75 break; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
76 case IMGFMT_YVYU: |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
77 cs=XVID_CSP_YVYU; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
78 break; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
79 default: |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
80 mp_msg(MSGT_DECVIDEO,MSGL_ERR,"Unsupported out_fmt: 0x%X\n",sh->codec->outfmt[sh->outfmtidx]); |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
81 return 0; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
82 } |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
83 |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
84 if(xvid_init(NULL, 0, &ini, NULL)) |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
85 return 0; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
86 |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
87 if(ini.api_version != API_VERSION) { |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
88 if(ini.api_version < API_VERSION) { |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
89 mp_msg(MSGT_DECVIDEO,MSGL_ERR,"Too old version of xivd (min. %d)\n",API_VERSION); |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
90 return 0; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
91 } |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
92 mp_msg(MSGT_DECVIDEO,MSGL_WARN,"Bad xvid version %d was compiled with %d\n", |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
93 ini.api_version,API_VERSION); |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
94 } |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
95 |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
96 dec_p.width = sh->disp_w; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
97 dec_p.height = sh->disp_h; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
98 |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
99 if(xvid_decore(NULL, XVID_DEC_CREATE, &dec_p, NULL)) { |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
100 mp_msg(MSGT_DECVIDEO,MSGL_ERR,"xvid init failed\n"); |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
101 return 0; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
102 } |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
103 |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
104 p = (priv_t*)malloc(sizeof(priv_t)); |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
105 p->cs = cs; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
106 p->hdl = dec_p.handle; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
107 sh->context = p; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
108 |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
109 return 1; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
110 } |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
111 |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
112 // uninit driver |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
113 static void uninit(sh_video_t *sh){ |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
114 priv_t* p = sh->context; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
115 if(!p) |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
116 return; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
117 xvid_decore(p->hdl,XVID_DEC_DESTROY, NULL, NULL); |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
118 free(p); |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
119 } |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
120 |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
121 // decode a frame |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
122 static mp_image_t* decode(sh_video_t *sh,void* data,int len,int flags){ |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
123 XVID_DEC_FRAME dec; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
124 DEC_PICTURE d4_pic; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
125 priv_t* p = sh->context; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
126 |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
127 mp_image_t* mpi = mpcodecs_get_image(sh, p->cs == XVID_CSP_USER ? |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
128 MP_IMGTYPE_EXPORT : MP_IMGTYPE_TEMP, |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
129 MP_IMGFLAG_ACCEPT_STRIDE, |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
130 sh->disp_w,sh->disp_h); |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
131 |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
132 if(!data || !mpi || len <= 0) |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
133 return NULL; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
134 |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
135 memset(&dec,0,sizeof(XVID_DEC_FRAME)); |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
136 |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
137 dec.bitstream = data; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
138 dec.length = len; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
139 switch(p->cs) { |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
140 case XVID_CSP_USER: |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
141 dec.image = &d4_pic; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
142 break; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
143 default: |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
144 dec.image = mpi->planes[0]; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
145 if(IMGFMT_IS_BGR(mpi->imgfmt) || IMGFMT_IS_RGB(mpi->imgfmt)) |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
146 dec.stride = mpi->width; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
147 else |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
148 dec.stride = mpi->stride[0]; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
149 } |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
150 dec.colorspace = p->cs; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
151 |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
152 if(xvid_decore(p->hdl,XVID_DEC_DECODE,&dec,NULL)) { |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
153 mp_msg(MSGT_DECVIDEO,MSGL_ERR,"decoding error\n"); |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
154 return NULL; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
155 } |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
156 |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
157 if(p->cs == XVID_CSP_USER) { |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
158 mpi->planes[0] = d4_pic.y; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
159 mpi->planes[1] = d4_pic.u; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
160 mpi->planes[2] = d4_pic.v; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
161 mpi->stride[0] = d4_pic.stride_y; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
162 mpi->stride[1] = mpi->stride[2] = d4_pic.stride_uv; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
163 } |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
164 |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
165 return mpi; |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
166 } |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
167 |
522713337297
Support for Xvid using their new api. If divx4 compatiblity is disabeled
albeu
parents:
diff
changeset
|
168 #endif |