|
|
| jpsdr |
| Posted: Jul 29 2011, 07:51 AM |
 |
|
Advanced Member
  
Group: Members
Posts: 335
Member No.: 20490
Joined: 23-December 06

|
After a look at your code, it seems that to solve my problem, i need to add the following in paramProc :
| CODE | if (g_VFVAPIVersion>=12) { const VDXPixmapLayout& pxsrc = *fa->src.mpPixmapLayout; VDXPixmapLayout& pxdst = *fa->dst.mpPixmapLayout;
pxdst = pxsrc; }
|
if i declare V16, not needed if i declared V15. |
 |
| phaeron |
| Posted: Jul 31 2011, 11:25 PM |
 |
|

Virtualdub Developer
  
Group: Administrator
Posts: 7773
Member No.: 61
Joined: 30-July 02

|
Sorry for the delay in replying (I'm kind of on a weekend cycle now).
Your fixes are both correct. V16 no longer allows you to access mpPixmap in startProc() because that was requiring the runtime to allocate a buffer just to start the filter, which wasted memory. mpPixmapLayout has been valid there since it was introduced and you should use that in startProc for all API versions that have it.
I changed the default behavior of paramProc() for similar reasons, since the default was causing unnecessary constraints on buffer allocation. You don't actually need to copy the entire struct, just the pitch. |
 |