]> git.sesse.net Git - ffmpeg/blobdiff - libavcodec/h264_levels.c
avformat/mux: factorize interleaved write_packet
[ffmpeg] / libavcodec / h264_levels.c
index 7a5511677391dbe598f13e1956bfa877dc9ddc56..dd517f1005fee4d07176ced92f713ec5efd750fe 100644 (file)
@@ -89,6 +89,7 @@ const H264LevelDescriptor *ff_h264_get_level(int level_idc,
 
 const H264LevelDescriptor *ff_h264_guess_level(int profile_idc,
                                                int64_t bitrate,
+                                               int framerate,
                                                int width, int height,
                                                int max_dec_frame_buffering)
 {
@@ -120,6 +121,9 @@ const H264LevelDescriptor *ff_h264_guess_level(int profile_idc,
                 FFMIN(level->max_dpb_mbs / (width_mbs * height_mbs), 16);
             if (max_dec_frame_buffering > max_dpb_frames)
                 continue;
+
+            if (framerate > (level->max_mbps / (width_mbs * height_mbs)))
+                continue;
         }
 
         return level;