I'm trying to encode clips with x264 in avidemux. Problems come when I set video length to 10 seconds while I resample output to 1 fps (without changing duration): avidemux report "Too short" error and produces an invalid file.
There is no problem if I resample to 2fps or if select a clip 20 seconds long. I have also tried different GOP settings with no luck.
Any idea of the reason of this error?


That is way out of the h264 specs. According to Adobe After Effects the format constrains for h264 are at min. 10fps so even 2fps are (not, see below) out of spec and could result in issues with some players. So Avidemux seems to allow out of spec settings, that 1 fps isn't possible, is very likely an internal issue with how h264 gets encoded in Avidemux.

Edit: It seems this is indeed an Adobe only constrain and or constrain for MP4, when using the QuickTime format with h264 I can render with 1 FPS.

Still, I recommend you interpolate your video to be longer instead of decreasing the FPS unless you have very specific technical reasons for encoding with 1 FPS. Showing every frame multiple times per second instead of just once per second doesn't make a visual difference.

After Effects format warning

  • I have not read full H.264 specs thoroughly [link]itu.int/rec/T-REC-H.264, but I cannot find a minimum fps restriction. I cannot find it in x264 or avidemux docummentation either. In fact, level 1.1 in H264 defines 7.5 fps as max frame rate for CIF resolution. I think 10 fps is a min value for Adobe implementation of the codec, not for the the codec itself. I need a subsampled (in time) clip as if one image per second was captured which is different from "slow playback" in terms of information shown. – jmm Jun 30 '14 at 8:42
  • That of course could be the case, though usually the Adobe restrictions have a higher compatibility reason and are usually not a real technical limitation. Though showing the first frame for 25 frames per second or for 1 doesn't make any difference, you will have it much easier by simply "interpolating", which in that case just means repeat every frame by X. – PTS Jun 30 '14 at 13:44
  • See my edit, its indeed an Adobe only constrain. – PTS Jun 30 '14 at 13:53
  • Thanks for checking and it is indeed interesting for me that QuickTime format allows 1fps rendering. I will give it a try altough I would need my videos playback supported in some standard browser. I didn't understood your interpolating suggestion, sorry, I had already tried it, but the clips have bitrate constraints, so again, I cannot interpolate for technical reasons since interpolating increases bitrate. – jmm Jun 30 '14 at 14:39
  • If done right it actually doesn't increase the bitrate all that much if at all, h264 is encoding based on differences per frame, set your keyframe interval to your FPS and you shouldn't see a lot of bitrate increase. Look for example at a Youtube video that is just a music track with a still frame for like 4 minutes but its not larger than your average mp3 file because the video track is just a few kb in size, h264 is pretty smart and can be optimized for specific situations like these. – PTS Jun 30 '14 at 14:45

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.