more Termux/Android mods from Andrew related to mjpegtools
authorGood Guy <good1.2guy@gmail.com>
Wed, 24 Nov 2021 19:42:25 +0000 (12:42 -0700)
committerGood Guy <good1.2guy@gmail.com>
Wed, 24 Nov 2021 19:42:25 +0000 (12:42 -0700)
cinelerra-5.1/thirdparty/src/libwebp-1.1.0.patch3 [new file with mode: 0644]
cinelerra-5.1/thirdparty/src/mjpegtools-2.1.0.patch4 [new file with mode: 0644]
cinelerra-5.1/thirdparty/src/mjpegtools-2.1.0.patch5 [new file with mode: 0644]
cinelerra-5.1/thirdparty/src/mjpegtools-2.1.0.patch6 [new file with mode: 0644]
cinelerra-5.1/thirdparty/src/mjpegtools-2.1.0.patch7 [new file with mode: 0644]

diff --git a/cinelerra-5.1/thirdparty/src/libwebp-1.1.0.patch3 b/cinelerra-5.1/thirdparty/src/libwebp-1.1.0.patch3
new file mode 100644 (file)
index 0000000..7696f58
--- /dev/null
@@ -0,0 +1,27 @@
+--- ./CMakeLists.txt.orig      2021-11-23 13:07:40.473195486 +0300
++++ ./CMakeLists.txt   2021-11-23 13:08:43.225195490 +0300
+@@ -4,15 +4,15 @@
+ # Options for coder / decoder executables.
+ option(WEBP_ENABLE_SIMD "Enable any SIMD optimization." ON)
+-option(WEBP_BUILD_ANIM_UTILS "Build animation utilities." ON)
+-option(WEBP_BUILD_CWEBP "Build the cwebp command line tool." ON)
+-option(WEBP_BUILD_DWEBP "Build the dwebp command line tool." ON)
+-option(WEBP_BUILD_GIF2WEBP "Build the gif2webp conversion tool." ON)
+-option(WEBP_BUILD_IMG2WEBP "Build the img2webp animation tool." ON)
+-option(WEBP_BUILD_VWEBP "Build the vwebp viewer tool." ON)
+-option(WEBP_BUILD_WEBPINFO "Build the webpinfo command line tool." ON)
+-option(WEBP_BUILD_WEBPMUX "Build the webpmux command line tool." ON)
+-option(WEBP_BUILD_EXTRAS "Build extras." ON)
++option(WEBP_BUILD_ANIM_UTILS "Build animation utilities." OFF)
++option(WEBP_BUILD_CWEBP "Build the cwebp command line tool." OFF)
++option(WEBP_BUILD_DWEBP "Build the dwebp command line tool." OFF)
++option(WEBP_BUILD_GIF2WEBP "Build the gif2webp conversion tool." OFF)
++option(WEBP_BUILD_IMG2WEBP "Build the img2webp animation tool." OFF)
++option(WEBP_BUILD_VWEBP "Build the vwebp viewer tool." OFF)
++option(WEBP_BUILD_WEBPINFO "Build the webpinfo command line tool." OFF)
++option(WEBP_BUILD_WEBPMUX "Build the webpmux command line tool." OFF)
++option(WEBP_BUILD_EXTRAS "Build extras." OFF)
+ option(WEBP_BUILD_WEBP_JS "Emscripten build of webp.js." OFF)
+ option(WEBP_NEAR_LOSSLESS "Enable near-lossless encoding" ON)
+ option(WEBP_ENABLE_SWAP_16BIT_CSP "Enable byte swap for 16 bit colorspaces."
diff --git a/cinelerra-5.1/thirdparty/src/mjpegtools-2.1.0.patch4 b/cinelerra-5.1/thirdparty/src/mjpegtools-2.1.0.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.1.0.patch5 b/cinelerra-5.1/thirdparty/src/mjpegtools-2.1.0.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.1.0.patch6 b/cinelerra-5.1/thirdparty/src/mjpegtools-2.1.0.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.1.0.patch7 b/cinelerra-5.1/thirdparty/src/mjpegtools-2.1.0.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);