Giter VIP home page Giter VIP logo

Comments (2)

rioam2 avatar rioam2 commented on June 2, 2024

I'm glad this utility has been useful for you! It's interesting how these values are multiplied by 2. Good discovery. I've found that some other values (namely framerate) are stored as a quotient of two numbers: dividend and divisor to yield the final value. Maybe this is similar? (framerate calculation:

item.FootageFramerate = float64(compDesc.FramerateDividend) / float64(compDesc.FramerateDivisor)
)

I suspect that these new values you've discovered can be easily inserted into the following structure at the proper offsets:

type CDTA struct {
The Unknown## fields are just padding at the moment, so these new fields would have to be inserted somewhere in between.

I'm a bit occupied with work at the moment, but I would like to get to these edits at some point soon. If you're feeling brave, and want to try and make these additions yourself, I'd be more than happy to review your Pull Request!

Also, regarding writing back to an AEP file, I'll have to do more research, but I believe this is against Adobe's terms of service.

from aftereffects-aep-parser.

LilyStilson avatar LilyStilson commented on June 2, 2024

@rioam2 I modified Item and CDTA struct a bit, and even though, it turned to be a bit ugly:

image
image

It still works like magic:

image

But I think there could be a problem with parsing, if composition has large frame count. I used uint16 instead of uint32, because it will grab additional zero bytes at the end (fields OffsetX_1). Is there any way to overcome this issue?

Also, for the time being, I disabled layers' parsing, so #2 won't happens

from aftereffects-aep-parser.

Related Issues (3)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.