]> git.sesse.net Git - ffmpeg/blobdiff - ffplay.c
Merge commit 'df528b11ac607de13a7c438f2a51f2119f71a03c'
[ffmpeg] / ffplay.c
index 8140dd9645010f794d24267543f3131eeb3a0bf9..8fa85661414a7463c4395f74cde2497718674a08 100644 (file)
--- a/ffplay.c
+++ b/ffplay.c
@@ -1247,7 +1247,10 @@ static void video_audio_display(VideoState *s)
             s->rdft_bits = rdft_bits;
             s->rdft_data = av_malloc_array(nb_freq, 4 *sizeof(*s->rdft_data));
         }
-        {
+        if (!s->rdft || !s->rdft_data){
+            av_log(NULL, AV_LOG_ERROR, "Failed to allocate buffers for RDFT, switching to waves display\n");
+            s->show_mode = SHOW_MODE_WAVES;
+        } else {
             FFTSample *data[2];
             for (ch = 0; ch < nb_display_channels; ch++) {
                 data[ch] = s->rdft_data + 2 * nb_freq * ch;
@@ -2228,6 +2231,9 @@ static int video_thread(void *arg)
     enum AVPixelFormat last_format = -2;
     int last_serial = -1;
     int last_vfilter_idx = 0;
+    if (!graph)
+        return AVERROR(ENOMEM);
+
 #endif
 
     if (!frame)