2 Replies Latest reply on Feb 26, 2016 4:50 AM by ahojh43612531

    Still image importer - how to figure frame rate

    ahojh43612531

      Hi, I am developing still image importer and I am confused how to compute frame number in asynchronous aiInitiateAsyncRead method. Theoretically, it should be something like imSourceVideoRec.inFrameTime / ticksPerFrame.  I can use GetTicksPerVideoFrame() to figure out ticks count per some specific framerate, but how do I figure out which framerate is used?   (users can change framerate that is used in "settings - media - indeterminate media timebase" and I don't want to provide incorrect frames...)

      Is this information provided somewhere along lifycycle of importer and I just didn't noticed it? Or am I using completely wrong approach?

        • 1. Re: Still image importer - how to figure frame rate
          Zac Lam Adobe Employee

          Hi Michal,

           

          Rather than frame number, you receive a request for a frame time: imSourceVideoRec->inFrameTime

           

          From there, you can calculate the frame number by framerate that you calculate and save in local data.  For example, in SDK_Async_Import.cpp:

          csSDK_int32   theFrame = static_cast<csSDK_int32>(inSourceRec.inFrameTime / (*localRecH)->theFile.frameRate);

           

          One thing I will mention is that internally, all of our still importers use the synchronous model.

          • 2. Re: Still image importer - how to figure frame rate
            ahojh43612531 Level 1

            I forgot to explain that I am importing sequence of files, standalone images. There is no wrapper or metainformation that specifies frame rate of those files. As far as I can tell, imSourceVideoRec->inFrameTime is dependent on whatever user selected in "settings - media - indeterminate media timebase" . For example, if setting is 29.97 fps then second frame has inFrameTime 8475667200, but if setting is 30 fps, then second frame has inFrameTime 8467200000. So to correctly compute frame number I need to know what setting is used. And I weren't able to find it in any structure passed to me in any selector.

            thanks for your time