Skip navigation
Ludis-studio
Currently Being Moderated

cue point time issue

Dec 6, 2012 4:25 AM

Tags: #as3 #f4v #cuepoint

Did anyone ever use navigation cue points in long F4V videos?

 

My experience, both with AME CS5.5 and CS6:

Embedded cue points with time bigger than 35:47.520 are not properly located  in F4V export.

 

1. Put one navigation cuepoint into a movie longer than 36 minutes. Put the cuepoint somewhere beyond 35:47.520.

2. Export movie to F4V (other settings don't matter).

3. Play F4V file in a simple Flash AS3 application, using NetStream + onCuePoint (see e.g. http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/fla sh/net/NetStream.html#event:onCuePoint).

 

Results: Cuepoint info in F4V metadata is correct, but embedded cue point  is located at 00:00.000.

 

Expected results: Embedded cuepoint should be at 35:47.520 or beyond, where it has been put in AME.

 

This makes navigation cue points useless for videos longer than 35 minutes.

 

Can anyone confirm this as happening? Does anyone know a workaround (in AME or Flash or ...)?

 
Replies
  • Currently Being Moderated
    Dec 6, 2012 8:19 AM   in reply to Ludis-studio

    Have you tried it in a FLVPlayback component while adding in the cue points programmatically? It probably shouldn't matter but it's worth a try:

     

    http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/fl/ video/FLVPlayback.html#addASCuePoint%28%29

     

    I can verify that adding a cuepoint on a f4v at 36 minutes fired off immediately but reported the time as 2159.5 despite. I also immediately seek to 2150 and watch the seconds. As it rolled over 2159.5 (36 seconds) no cue was fired. This is using NetConnection/NetStream/Video.

     

    Edit:

     

    I tried a FLVPlayback and they didn't fix that (it only wraps VideoPlayer and uses the classes in question anyhow, long shot).

     

    However, programmatically adding in the cuePoint with FLVPlayback works. I added one at 2160 and it didn't fire off immediately like the predefined cuepoint (in the video export app). As soon as the playhead crossed 2160 I received the cuePoint event.

     

    Full Working Example (video generated just for this, 3.67mb, a black video with white square moving painfully slow over 40 minutes...)

     

    You'll see the embedded cue fire off immediately. After that I seek to 2150. The time is printed in a TextField. As it rolls past 2160 you'll see the programmatically added cue fire properly in trace.

     
    |
    Mark as:
  • Currently Being Moderated
    Dec 6, 2012 12:37 PM   in reply to Ludis-studio

    .125 is pretty tolerant IMHO. I tend to make anything that needs to jump smoothly from one location to another on a rounded time (x:00:00). I also make absolutely sure I have a keyframe where I intend to jump, which should be added by any software that supports inserting Flash CuePoints. Remember, without FMS you need a keyframe to seek to:

     

    http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/fla sh/net/NetStream.html#seek%28%29

     

     

    Seeks the keyframe (also called an I-frame in the video industry) closest to the specified location.

     

     

    To my knowledge, programmatically adding a cue point can't somehow generate a keyframe. I haven't created a test to see how accurate this is but I'm sure you can. Just make a video and set the keyframes wildly apart with no automatic keyframing (like every 10 seconds). Try to add a cue you know to be between that block of time and see if it jumps anywhere near it.

     

    With spatinal compression only encoding the pixels that change over time, even if it did do it, what you're requesting is Flash to return to the previous keyframe and collect all accumulated video data up to the cue point to render the frame correctly. If you jump 8 seconds into a 10 second apart duration it must accumulate 8 full seconds (say 24fps, 192 frames) worth of data. That'd definitely cause a bog if it was supported, for a good reason.

     
    |
    Mark as:
  • Currently Being Moderated
    Dec 6, 2012 1:57 PM   in reply to Ludis-studio

    Err, make that 4.9 seconds . Yes it'd seek to 10, you're right.

     

    All the bugs be here:

    https://bugbase.adobe.com/

     

    If you can find it in search, vote it up for a faster fix and share the bug link. I'll vote it up as well. The status of any bug is indicated in the upper right including state and priority. Issues like this that all users will encounter are likely to be fixed faster than rare or unreproducable errors. Feel free to (modify if you wish) or submit the example code I listed above. That helps get bugs fixed quicker when the Adobe team doesn't need to generate anything to test reproduction (esp the 40min video I had AE render just to test it haha).

     
    |
    Mark as:
  • Currently Being Moderated
    Dec 7, 2012 6:36 AM   in reply to Ludis-studio

    I created my 40 minute video with After Effects using a marker (settings->flash cue point) for mine so it's not actually a Premiere bug. I also did it with Sorenson Squeeze on my source file. I believe this is solely a Flash issue. The cuepoint is fine, but flash is glitching reading it.

     
    |
    Mark as:

More Like This

  • Retrieving data ...

Bookmarked By (0)

Answers + Points = Status

  • 10 points awarded for Correct Answers
  • 5 points awarded for Helpful Answers
  • 10,000+ points
  • 1,001-10,000 points
  • 501-1,000 points
  • 5-500 points