back to mjpeg (revert 2cb511e and 3f157f9) for now
authorRobin Gareus <robin@gareus.org>
Fri, 23 Oct 2015 21:34:21 +0000 (23:34 +0200)
committerRobin Gareus <robin@gareus.org>
Fri, 23 Oct 2015 21:34:21 +0000 (23:34 +0200)
There is anecdotal evidence that using mpeg4 as codec leads to issues
(xjadeo indexes and gets stuck at 99%, likely in libavcodec).

The main motivation for using mpeg4 is/was windows/VFAT 2GB file limit
and improved video quality.  This will have to be revisited.

gtk2_ardour/transcode_ffmpeg.cc
gtk2_ardour/video_timeline.cc

index 949565d22b89dc785e78120a331a5203efd8d3b5..b756b02618b3ce027fadb74eef42bda68cde313b 100644 (file)
@@ -479,7 +479,7 @@ TranscodeFfmpeg::transcode (std::string outfile, const int outw, const int outh,
        if (bitrate < 10)  bitrate = 10;
        if (bitrate > 1000) bitrate = 1000;
 
-       argp=(char**) calloc(15,sizeof(char*));
+       argp=(char**) calloc(16,sizeof(char*));
        argp[0] = strdup(ffmpeg_exe.c_str());
        argp[1] = strdup("-i");
        argp[2] = strdup(infile.c_str());
@@ -489,17 +489,18 @@ TranscodeFfmpeg::transcode (std::string outfile, const int outw, const int outh,
        argp[6] = (char*) calloc(10,sizeof(char)); snprintf(argp[6], 10, "%ix%i", width, height);
        argp[7] = strdup("-y");
        argp[8] = strdup("-vcodec");
-       argp[9] = strdup("mpeg4");
+       argp[9] = strdup("mjpeg");
        argp[10] = strdup("-an");
-       argp[11] = strdup("-keyint_min");
-       argp[12] = strdup("10");
-       argp[13] = strdup(outfile.c_str());
-       argp[14] = (char *)0;
+       argp[11] = strdup("-intra");
+       argp[12] = strdup("-g");
+       argp[13] = strdup("1");
+       argp[14] = strdup(outfile.c_str());
+       argp[15] = (char *)0;
        /* Note: these are free()d in ~SystemExec */
 #if 1 /* DEBUG */
        if (debug_enable) { /* tentative debug mode */
        printf("TRANSCODE VIDEO:\n");
-       for (int i=0; i< 14; ++i) {
+       for (int i=0; i< 15; ++i) {
          printf("%s ", argp[i]);
        }
        printf("\n");
index 12236eec38bba31558f39df14955f1d0da184946..a1dd4bcfbbc89edaa03078c2886e3c7798703ed9 100644 (file)
@@ -761,13 +761,14 @@ VideoTimeLine::find_xjadeo () {
                        {
                                if (v_major >= 1) v_ok = true;
                                else if (v_major == 0 && v_minor >= 8) v_ok = true;
+                               else if (v_major == 0 && v_minor >= 7 && v_micro >= 7) v_ok = true;
                        }
                }
                if (!v_ok) {
                        _xjadeo_bin = X_("");
                        warning << _(
                                        "Video-monitor 'xjadeo' is too old. "
-                                       "Please install xjadeo version 0.8.0 or later. http://xjadeo.sf.net/"
+                                       "Please install xjadeo version 0.7.7 or later. http://xjadeo.sf.net/"
                                        ) << endmsg;
                }
        }