The way i think to do so, (if you want it to be dynamic) is by doing a socket connection. (But i dont know After Effects). Here you have an example using the fancy async way.
* you'll have to run this somehow from After Effecs [that's what im not sure you'll be able to do]. The idea is to make a server and a client to send data between your programs, blender & A.E. in the case.
import asyncio
async def tcp_echo_client(message, loop):
reader, writer = await asyncio.open_connection('127.0.0.1', 8888,
loop=loop)
print('Send: %r' % message)
writer.write(message.encode())
data = await reader.read(100)
print('Received: %r' % data.decode())
print('Close the socket')
writer.close()
message = 'Hello World!'
loop = asyncio.get_event_loop()
loop.run_until_complete(tcp_echo_client(message, loop))
loop.close()
- this is going to be the server, you have to run it from AE i guess.
- then you have to configure your client from Blender side with this other script
import asyncio
async def _send(message, loop):
reader, writer = await asyncio.open_connection('127.0.0.1', 8888,
loop=loop)
print('Send: %r' % message)
writer.write(message.encode())
data = await reader.read(100)
print('Received: %r' % data.decode())
print('Close the socket')
writer.close()
def send(data):
loop = asyncio.get_event_loop()
loop.run_until_complete(_send(data, loop))
data = "hello world"
send(data)
"""
i dont know if you need all the code or it is redundant, i edited an example from asyncIO site and worked for me. good luck"""