AESDK从流中获得变换信息

AE中Transform下的信息位于流中,和别的软件不太一样。

如果是特效的参数信息要从EffectSuites中获取,默认的参数信息基本上StreamSuites都可以得到

需要注意,取得流之后也要释放流,否则就会出现下面的情况

 

 

首先,流信息位于层管理器中,需要先取得一个图层句柄,再通过这个图层得到它的流信息

这里就用当前激活状态的图层来测试,先取得当前激活状态的图层

suites.LayerSuite5()->AEGP_GetActiveLayer(....)

 

取得流的句柄

AEGP_StreamRefH streamRefH = NULL;
suites.StreamSuite2()->AEGP_GetNewLayerStream(0, layerH, stream, &streamRefH);

 

取得具体值,还需要一个时间参数。这里取得层的当前时间

A_Time result;
suites.LayerSuite5()->AEGP_GetLayerCurrentTime(layerH, AEGP_LTimeMode_CompTime, &result);

 

取得当前时间下,位置信息的值

AEGP_StreamValue result;
suites.StreamSuite2()->AEGP_GetNewStreamValue(0, position_streamH, AEGP_LTimeMode_CompTime, &time, false, &result);

 

如果2D模式就用two_d,3D模式就用three_d得到位置值

posValue.val.two_d.x
posValue.val.two_d.y

 

最后释放流

suites.StreamSuite2()->AEGP_DisposeStreamValue(...);

 

转载于:https://www.cnblogs.com/hont/p/4198534.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值