I have two videos, both roughly the same spec:

A: H.264/AAC 1920x808 24FPS ~3015kb/s
Using Quicktime player I can scrub through this movie smoothly and with fine detail. Jumping from one position to another, playback will happen immediately.

B: H.264/AAC 1920x1080 25FPS ~3662kb/s
This video can’t seem to handle the scrubbing as well. Dragging the playback head hangs constantly, I keep getting a beach-ball when jumping from one position to another.

I realise that the data rate on B: is higher, but is there anything I can do to improve it’s performance other than re-encoding at a reduced data rate?

Are there any tools available other than VLC/Quicktime media info, that will show me more detailed encoding options so I can further optimise B: based on A: if I have to re-encode?

  • GOP size, no of refs, reordered frames in file storage are what come to mind. Need to see mediainfo properties of both files to verify. – Gyan May 6 '17 at 14:05
  • I have read a bit about ref's, or B-frames, in the handbrake UG. Do you know if there is a tool that tell me these stats? – sansSpoon May 8 '17 at 1:32

Usually in these situations I'd say maybe you have a bottleneck from your storage media. But with those bit rates any Ssd or hdd should be fine unless the files are really large. Thus it sounds to me that you have either a bottleneck with your GPU, Cpu, or Ram. All are equally important for smooth playback. I'm guessing the issue is the increased resolution of the second clip.

Without knowing more about your specs I would say your best options are to create low res Proxies. In premiere it's pretty easy, you just have to modify your project ingest settings. You might as well create Proxies for all the files, it won't matter anyways as it will relink on export.

  • Both videos are stored on an internal ssd. I'm using a maxed out MacBook Pro 2015 2.8 i7 16GB. – sansSpoon May 8 '17 at 1:37
  • As Alex suggested: work with low resolution proxies. Then relink to your original media. H264 really is not a codec that's made to edit with. It's for client reviews, web-exports, etc. – CyanideBaby Sep 4 '17 at 15:36

I found the free program Media Info for macOS that does exactly what I'm after. It displays a movie's codec details incl:

  • H.264 Profile setting
  • H.264 Encoding string

Just had to deal with this today myself. The h.264 profile level is likely causing the issue. The lower level profiles used with HD+ footage seems to cause a buffer/playback issue.

You can check your current profile level with ffprobe -show_streams input.mp4

Look for the profile level. If it's less than 5, that's probably the issue. You can re-encode the video to solve the issue. Here's a sample ffmpeg command that will do that for you.

ffmpeg -i in.mov -movflags faststart -acodec copy -c:v libx264 -crf 1 -tune fastdecode -tune zerolatency -vprofile high -pix_fmt yuv420p -vlevel 6.2 out.mov; done

That command pretty much completely solves the issue with any troublesome footage on my machine. You might be tempted to use -crf 0, but that will result in the profile level not being changed. -crf 1 is functionally identical for h.264 purposes (eg. you're likely not trying to color grade h.264).

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.