mjpegtools library update from 2.1.0 to 2.2.1 as discovered needed by Andrea for...
authorGood Guy <good1.2guy@gmail.com>
Sat, 11 May 2024 19:41:59 +0000 (13:41 -0600)
committerGood Guy <good1.2guy@gmail.com>
Sat, 11 May 2024 19:41:59 +0000 (13:41 -0600)
cinelerra-5.1/configure.ac
cinelerra-5.1/thirdparty/downloads.txt
cinelerra-5.1/thirdparty/src/mjpegtools-2.2.1.patch4 [new file with mode: 0644]
cinelerra-5.1/thirdparty/src/mjpegtools-2.2.1.patch5 [new file with mode: 0644]
cinelerra-5.1/thirdparty/src/mjpegtools-2.2.1.patch6 [new file with mode: 0644]
cinelerra-5.1/thirdparty/src/mjpegtools-2.2.1.patch7 [new file with mode: 0644]
cinelerra-5.1/thirdparty/src/mjpegtools-2.2.1.patch8 [new file with mode: 0644]
cinelerra-5.1/thirdparty/src/mjpegtools-2.2.1.tar.gz [new file with mode: 0644]

index 4b72a8617e7e3d986784a67f79283b7e09da6ed4..984019e8f97c175617d77c21b537462cb16d11be 100644 (file)
@@ -358,7 +358,7 @@ X86=[`expr "x$ARCH" : 'x..._64*'`]
 if test "x$I86$X86" != "x00" ; then
 
 PKG_3RD([mjpegtools],[yes],
-  [mjpegtools-2.1.0],
+  [mjpegtools-2.2.1],
   [ utils/mmxsse/.libs/libmmxsse.a \
     utils/.libs/libmjpegutils.a \
     lavtools/.libs/liblavfile.a \
@@ -371,7 +371,7 @@ PKG_3RD([mjpegtools],[yes],
 else
 
 PKG_3RD([mjpegtools],[yes],
-  [mjpegtools-2.1.0],
+  [mjpegtools-2.2.1],
   [ utils/.libs/libmjpegutils.a \
     lavtools/.libs/liblavfile.a \
     lavtools/.libs/liblavjpeg.a \
index b519e29702e1de3b1478ab3313148943bdbe655f..1d89f8f3e867a447e35425d451fc0983582752ae 100644 (file)
@@ -16,6 +16,7 @@ https://sourceforge.net/projects/giflib/files/latest/download = 5.2.1
 https://github.com/xiph/flac/releases/tag/1.4.2
 https://github.com/uclouvain/openjpeg/ = Releases=sourcefiles openjpeg-2.5.0.tar.gz
 https://sourceforge.net/projects/libjpeg-turbo/ = Code (GitHub)=sourcefiles/2.1.2/libjpeg-turbo-2.1.5.1.tar.gz
+https://sourceforge.net/projects/mjpeg/files/mjpegtools/2.2.1/
 http://www.fftw.org/fftw-3.3.10.tar.gz
 # Not sure why festival is in here but it is now at 2.5 since 25-Dec-2017
 http://festvox.org/packed/festival/2.4/festival-2.4-release.tar.gz
diff --git a/cinelerra-5.1/thirdparty/src/mjpegtools-2.2.1.patch4 b/cinelerra-5.1/thirdparty/src/mjpegtools-2.2.1.patch4
new file mode 100644 (file)
index 0000000..d0bbfd1
--- /dev/null
@@ -0,0 +1,19 @@
+--- mjpegtools-2.1.0/y4mdenoise/newdenoise.cc.orig     2021-07-23 14:03:35.999564700 +0300
++++ mjpegtools-2.1.0/y4mdenoise/newdenoise.cc  2021-07-23 14:04:35.779564703 +0300
+@@ -1852,14 +1852,14 @@
+       if (nErr != 0)
+               mjpeg_error_exit1 ("pthread_attr_init() failed: %s",
+                       strerror (nErr));
+-
++#if !defined(__TERMUX__)
+       // Inherit scheduling parameters from the main thread.
+       nErr = pthread_attr_setinheritsched (&sThreadAttributes,
+               PTHREAD_INHERIT_SCHED);
+       if (nErr != 0)
+               mjpeg_error_exit1 ("pthread_attr_setinheritsched() failed: %s",
+                       strerror (nErr));
+-      
++#endif
+       // Create the thread.
+       nErr = pthread_create (&m_oThreadInfo,
+               &sThreadAttributes, WorkLoop, (void *)this);
diff --git a/cinelerra-5.1/thirdparty/src/mjpegtools-2.2.1.patch5 b/cinelerra-5.1/thirdparty/src/mjpegtools-2.2.1.patch5
new file mode 100644 (file)
index 0000000..4d390ed
--- /dev/null
@@ -0,0 +1,12 @@
+--- ./mpeg2enc/seqencoder.cc.orig      2021-08-12 22:15:24.907277309 +0300
++++ ./mpeg2enc/seqencoder.cc   2021-08-12 22:17:49.471277317 +0300
+@@ -198,7 +198,9 @@
+ {
+       EncoderJob *job;
+       mjpeg_debug( "Worker thread started" );
++#if !defined (__TERMUX__)
+     pthread_setcanceltype( PTHREAD_CANCEL_ASYNCHRONOUS, NULL );
++#endif
+       for(;;)
+       {
diff --git a/cinelerra-5.1/thirdparty/src/mjpegtools-2.2.1.patch6 b/cinelerra-5.1/thirdparty/src/mjpegtools-2.2.1.patch6
new file mode 100644 (file)
index 0000000..63e8630
--- /dev/null
@@ -0,0 +1,12 @@
+--- mjpegtools-2.1.0/mpeg2enc/seqencoder.cc.orig       2021-05-25 19:04:26.332933944 +0300
++++ mjpegtools-2.1.0/mpeg2enc/seqencoder.cc    2021-05-25 19:05:44.904933948 +0300
+@@ -56,6 +56,9 @@
+ #include "ratectl.hh"
+ #include "tables.h"
+ #include "channel.hh"
++#if defined(__TERMUX__)
++#include "bthread.h"
++#endif
+
+
+ // --------------------------------------------------------------------------------
diff --git a/cinelerra-5.1/thirdparty/src/mjpegtools-2.2.1.patch7 b/cinelerra-5.1/thirdparty/src/mjpegtools-2.2.1.patch7
new file mode 100644 (file)
index 0000000..71eede4
--- /dev/null
@@ -0,0 +1,34 @@
+--- /dev/null  2021-05-22 06:52:04.572000000 +0300
++++ mjpegtools-2.1.0/mpeg2enc/bthread.h        2021-05-23 10:38:11.073808915 +0300
+@@ -0,0 +1,31 @@
++/* BThread main header
++   Copyright (C) 2002 Free Software Foundation, Inc.
++   This file is part of the GNU C Library.
++
++   The GNU C Library is free software; you can redistribute it and/or
++   modify it under the terms of the GNU Library General Public License as
++   published by the Free Software Foundation; either version 2 of the
++   License, or (at your option) any later version.
++
++   The GNU C Library is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
++   Library General Public License for more details.
++
++   You should have received a copy of the GNU Library General Public
++   License along with the GNU C Library; see the file COPYING.LIB.  If not,
++   write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
++   Boston, MA 02111-1307, USA.  */
++
++# define PTHREAD_CANCEL_ENABLE         0x00000010
++# define PTHREAD_CANCEL_DISABLE        0x00000000
++
++# define PTHREAD_CANCEL_ASYNCHRONOUS 0x00000020
++# define PTHREAD_CANCEL_DEFERRED     0x00000000
++
++#define PTHREAD_CANCELED ((void *) -1)
++
++int pthread_setcancelstate (int , int *);
++int pthread_setcanceltype (int , int *);
++void pthread_testcancel (void);
++int pthread_cancel (pthread_t t);
diff --git a/cinelerra-5.1/thirdparty/src/mjpegtools-2.2.1.patch8 b/cinelerra-5.1/thirdparty/src/mjpegtools-2.2.1.patch8
new file mode 100644 (file)
index 0000000..610f94e
--- /dev/null
@@ -0,0 +1,34 @@
+Index: mplex/lpcmstrm_in.cpp
+===================================================================
+--- ./mplex/lpcmstrm_in.cpp    (revision 3507)
++++ ./mplex/lpcmstrm_in.cpp    (working copy)
+@@ -306,7 +306,15 @@
+     default : bps_code = 3; break;
+     }
+     dst[4] = starting_frame_index;
+-    unsigned int bsf_code = (samples_per_second == 48000) ? 0 : 1;
++    unsigned int bsf_code;
++    switch(samples_per_second)
++    {
++    case 48000: bsf_code = 0; break;
++    case 96000: bsf_code = 1; break;
++    case 44100: bsf_code = 2; break;
++    case 32000: bsf_code = 3; break;
++    }
++    //unsigned int bsf_code = (samples_per_second == 48000) ? 0 : 1;
+     unsigned int channels_code = channels - 1;
+     dst[5] = (bps_code << 6) | (bsf_code << 4) | channels_code;
+     dst[6] = dynamic_range_code;
+Index: mplex/stream_params.cpp
+===================================================================
+--- ./mplex/stream_params.cpp  (revision 3507)
++++ ./mplex/stream_params.cpp  (working copy)
+@@ -46,7 +46,7 @@
+                                                               unsigned int chans, 
+                                                               unsigned int bits )
+ {
+-    if( samples != 48000 && samples != 96000 )
++    if( samples != 48000 && samples != 96000  && samples != 44100 && samples != 32000 )
+         return 0;
+     if( chans < 1 || chans > 7 )
+         return 0;
diff --git a/cinelerra-5.1/thirdparty/src/mjpegtools-2.2.1.tar.gz b/cinelerra-5.1/thirdparty/src/mjpegtools-2.2.1.tar.gz
new file mode 100644 (file)
index 0000000..0f04d37
Binary files /dev/null and b/cinelerra-5.1/thirdparty/src/mjpegtools-2.2.1.tar.gz differ