3 Replies Latest reply on Aug 13, 2012 11:34 AM by BenjaminMarkus

    Variable Frame Rate on H.264 output

    jwm2g

      I am using AE CS6 (cloud version). I am trying to render compositions to 1080p mp4.  Each time the comp appears to render fine.  But bringing it into my NLE crashes my NLE.  I brought the media into MediaInfo (app from SourceForge that shows everything about a media clip).  It says that the Frame Rate is VARIABLE  Min: 60fps;  Max 60.6 fps.  The composition was 80 fps, and I told the renderer to keep it at 80.  MediaInfo also said the duration was over 6 seconds.  The composition was a little over 4 seconds. So the overall speed of the comp was incorrect.  I've been in the video business for about 10 years.  I understand frame rates, etc.  Never heard of VARIABLE frame rates until this.

       

      I was able to launder the media file through a freeware media format converter, and got it back into constant frame rate so I could proceed in the NLE with the project.  But the time was still 6 seconds.  So I had to speed up the clip in the NLE to get it back correct.

       

      Since moving to CS6 from CS4, I decided to start using the H.264 output module.  So I've just started encountering this variable frame rate problem.

       

      So my questions... What is variable frame rate, how did I 'request' it, why is even the variable frame rate no where near the comp frame rate, and what do I do to simply get an mp4 with the 80fps that I want?

       

      This is very reproducible for me.  My comps are usually either HDTV 1920x1080 or HDV 1440x1080. 

       

      Add to Render Queue

      Select DV Settings, change field order to none

      Select H.264 output module

      Render

       

      Can someone explain what's going on?

       

      Thanks.

       

      Jerry

        • 1. Re: Variable Frame Rate on H.264 output
          BenjaminMarkus Level 4

          Where did you get that footage and what format was it originally shot in?  Was it shot in slow motion or did you change the frame rate in AE?  Why would you need 80fps footage unless you're going to slow it down to a normal frame rate?

           

          Also, h.264 is not only a very lossy format, it's also a bad intermediate format.  So if you're planning on editting that footage later on in an NLE, I'd suggest rendering it to something else.  Premiere should work fine with h.264, but not FCP, although I think they fixed it in FCPX, but you didn't say what NLE you're using.

           

          Second of all, the H.264 encoder is much better in Adobe Media Encoder.  Check this post by Andrew Yoole:

           

          3.Andrew Yoole,

           

          CommunityMVPCommunityMVP

          Jun 8, 2012 6:34 PM   in reply to pkaracas

          Report

           

          As the other guys have said, don't use AE to render using temporal codecs.  Temporal codecs like H264 rely on storing partial frames based on earlier information.  AE renders and encodes one frame at a time, so most of the efficiency of a codec like H264 is lost.  The result is that you get much lower overall quality from an AE h.264 render than if you were to encode it externally.

           

          Adobe Media Encoder or Quicktime 7 will encode great quality H.264 files.

           

           

          Was this helpful? Yes   No

           

          As I said I'm not sure why you would need to take an 80fps piece of footage back into an NLE, but if you're trying to make that footage play back in slow motion, you're going to have to re-interpret the frame rate of the footage in After Effects to play back at standard rate.  And, if you're going to use the AE Render Queue to output something for more editing, I would suggest using best settings and outputting to a production codec such as a ProRes, Animation, Uncompressed 10bit, Uncompressed 8bit or Black Magic. 

           

          Also I've never used that media info app before, but I know that when you open up quicktime and hit command I on the mac to view the inspector, the playing fps jumps around.  I think this happens because the player doesn't necessarily play back the correct frame rate at all times.

           

          This Adobe Captivate blog talks about variable frame rates in F4V files.  Maybe it might help explain things.

           

          http://blogs.adobe.com/captivate/2010/11/f4v-or-f4v-fixed-frame-rate-what-should-i-go-with .html

          • 2. Re: Variable Frame Rate on H.264 output
            jwm2g Level 1

            I am always grateful when the user community responds to questions, and I appreciate you taking the time to give me all of the info and ask all of the questions about why I want to do what I am doing.  But I'm not sure that it really matters why I want 80fps H.264 mp4 output and/or what I want to do with it. The requirement is there, and I know what I am doing.  I didn't ask for variable frame rate in my output (as far as I know...) and I simply want to know how to get rid of it. I have no doubt that somebody might find variable frame rate useful, but it's not me, and reading articles about it isn't going to fix my problem.

             

            Here are the facts ---

             

            1) I have a 4 second 80fps sequence consisting of a few jpgs put into a 3D composition (no raw footage).

             

            2) It renders out as a 6+ second variable frame rate (60 fps - 60.6 fps) clip using the  H.264 output module.  It makes sense mathmatically that if it's generating 80 frames for each second, but then saying in the output media file meta data the clip should play at ~60fps that it would end up being a longer duration than it should But where did the ~60fps come from?

             

            3) Same composition renders out as the correct/expected 4 sec 80fps clip using Quicktime output

             

            This is either a bug in the H.264 output module or it's some sort of a configurable feature that is intended to horribly distort the output (??)

             

            If it's a bug, is Adobe aware, and is there a workaround?

             

            If it's a 'feature', how do I turn it off?

             

            Thanks.

            • 3. Re: Variable Frame Rate on H.264 output
              BenjaminMarkus Level 4

              Now that I know how you got your footage I was able to reproduce the problem.  It looks to me like H.264 cannot be encoded at an fps higher than 60fps.  Do you also get the same settings mismatch warning?H.264.png

              This would explain why your footage is coming out at 60fps.  As a workaround you could try encoding it to a quicktime.  I get a constant 80fps when I hit command i to inspect the render in Quicktime player.