downgrade dav1d to 5.1 seek fails, bg clr uses alpha=1, renderfarm hang fix, fix...
authorGood Guy <[email protected]>
Wed, 23 Sep 2020 20:01:30 +0000 (14:01 -0600)
committerGood Guy <[email protected]>
Wed, 23 Sep 2020 20:01:30 +0000 (14:01 -0600)
21 files changed:
cinelerra-5.1/cinelerra/appearanceprefs.C
cinelerra-5.1/cinelerra/appearanceprefs.h
cinelerra-5.1/cinelerra/colorpicker.C
cinelerra-5.1/cinelerra/edlsession.C
cinelerra-5.1/cinelerra/edlsession.h
cinelerra-5.1/cinelerra/packagerenderer.C
cinelerra-5.1/cinelerra/pluginclient.C
cinelerra-5.1/cinelerra/renderfarm.h
cinelerra-5.1/cinelerra/renderfarmclient.C
cinelerra-5.1/cinelerra/videodevice.C
cinelerra-5.1/cinelerra/virtualvconsole.C
cinelerra-5.1/configure.ac
cinelerra-5.1/ffmpeg/video/ffv1.avi [new file with mode: 0644]
cinelerra-5.1/ffmpeg/video/flv_h264.flv
cinelerra-5.1/plugins/Makefile
cinelerra-5.1/plugins/histogram/histogramwindow.C
cinelerra-5.1/po/ru.po
cinelerra-5.1/thirdparty/src/dav1d-0.5.1.patch1 [new file with mode: 0644]
cinelerra-5.1/thirdparty/src/dav1d-0.5.1.tar.gz [new file with mode: 0644]
cinelerra-5.1/thirdparty/src/dav1d-0.7.1.patch1 [deleted file]
cinelerra-5.1/thirdparty/src/dav1d-0.7.1.tar.xz [deleted file]

index d6ed2bb852dee6f2fc3c80a4a9820f9bc0d8cfac..c53db8300875e242bdb9dc042ec2b039a690564b 100644 (file)
@@ -184,9 +184,8 @@ void AppearancePrefs::create_objects()
        y += ys35;
        add_subwindow(title = new BC_Title(x, y, _("Composer BG Color:")));
        int clr_color = pwindow->thread->edl->session->cwindow_clear_color;
-       int clr_alpha = pwindow->thread->edl->session->cwindow_clear_alpha;
         add_subwindow(cwdw_bg_color = new Composer_BG_Color(pwindow,
-               x2, y, xS(80), yS(24), clr_color, clr_alpha));
+               x2, y, xS(80), yS(24), clr_color));
        draw_3d_border(x2-2,y-2, xS(80)+4,xS(24)+4, 1);
        cwdw_bg_color->create_objects();
        x2 += cwdw_bg_color->get_w();
@@ -932,8 +931,8 @@ int RectifyAudioToggle::handle_event()
 }
 
 Composer_BG_Color::Composer_BG_Color(PreferencesWindow *pwindow,
-               int x, int y, int w, int h, int color, int alpha)
- : ColorBoxButton(_("Composer BG color"), x, y, w, h, color, alpha, 1)
+               int x, int y, int w, int h, int color)
+ : ColorBoxButton(_("Composer BG color"), x, y, w, h, color, -1, 1)
 {
        this->pwindow = pwindow;
 }
@@ -955,7 +954,6 @@ void Composer_BG_Color::handle_done_event(int result)
 int Composer_BG_Color::handle_new_color(int color, int alpha)
 {
        pwindow->thread->edl->session->cwindow_clear_color = color;
-       pwindow->thread->edl->session->cwindow_clear_alpha = alpha;
        return 1;
 }
 
index fed29a98a314fcd2217c3aedf55526f0c58e0af0..c7d95ecbfea6db90745662e54ba15acb8202514f 100644 (file)
@@ -438,7 +438,7 @@ class Composer_BG_Color : public ColorBoxButton
 {
 public:
        Composer_BG_Color(PreferencesWindow *pwindow,
-               int x, int y, int w, int h, int color, int alpha);
+               int x, int y, int w, int h, int color);
        ~Composer_BG_Color();
        void handle_done_event(int result);
        int handle_new_color(int color, int alpha);
index 348817c4bac2915f44f10dd963d3e1ade73bba37..fd796bfcaef64b158ad34396ecb75e58a8f7a7e3 100644 (file)
@@ -156,7 +156,6 @@ ColorGUI::ColorGUI(BC_WindowBase *window)
        hue = 0; sat = 0; val = 0;
        red = 0; grn = 0; blu = 0;
        lum = 0; c_r = 0; c_b = 0;
-       alpha = 0;
 
        hsv_h = 0;  hsv_s = 0;  hsv_v = 0;
        rgb_r = 0;  rgb_g = 0;  rgb_b = 0;
@@ -1451,7 +1450,8 @@ void ColorBoxButton::create_objects()
 void ColorBoxButton::set_color(int color)
 {
        this->color = (color & 0xffffff);
-       this->alpha = (~color>>24) & 0xff;
+       if( this->alpha >= 0 )
+               this->alpha = (~color>>24) & 0xff;
        int r = (color>>16) & 0xff;
        int g = (color>> 8) & 0xff;
        int b = (color>> 0) & 0xff;
@@ -1513,7 +1513,8 @@ void ColorCircleButton::create_objects()
 void ColorCircleButton::set_color(int color)
 {
        this->color = (color & 0xffffff);
-       this->alpha = (~color>>24) & 0xff;
+       if( this->alpha >= 0 )
+               this->alpha = (~color>>24) & 0xff;
        int r = (color>>16) & 0xff;
        int g = (color>>8) & 0xff;
        int b = (color>>0) & 0xff;
index 673ec070f77bb563f8a89e0c8c6d6600d24a42f8..f3044f6d64aca49bad91b9ab86f2235c7771b801 100644 (file)
@@ -75,7 +75,6 @@ EDLSession::EDLSession(EDL *edl)
        cwindow_zoom = 1.0;
        cwindow_click2play = 0;
        cwindow_clear_color = BLACK;
-       cwindow_clear_alpha = 0;
        strcpy(default_atransition, INIT_ATRANSITION);
        strcpy(default_vtransition, INIT_VTRANSITION);
        default_transition_length = 1.0;
@@ -184,8 +183,7 @@ int EDLSession::need_rerender(EDLSession *ptr)
                (proxy_disabled_scale != ptr->proxy_disabled_scale) ||
                (proxy_scale != ptr->proxy_scale) ||
                (proxy_use_scaler != ptr->proxy_use_scaler) ||
-               (cwindow_clear_color != ptr->cwindow_clear_color) ||
-               (cwindow_clear_alpha != ptr->cwindow_clear_alpha));
+               (cwindow_clear_color != ptr->cwindow_clear_color));
 }
 
 void EDLSession::equivalent_output(EDLSession *session, double *result)
@@ -262,7 +260,6 @@ int EDLSession::load_defaults(BC_Hash *defaults)
        cwindow_zoom = defaults->get("CWINDOW_ZOOM", (float)1);
        cwindow_click2play = defaults->get("CWINDOW_CLICK2PLAY", 0);
        cwindow_clear_color = defaults->get("CWINDOW_CLEAR_COLOR", BLACK);
-       cwindow_clear_alpha = defaults->get("CWINDOW_CLEAR_ALPHA", 0);
        sprintf(default_atransition, INIT_ATRANSITION);
        defaults->get("DEFAULT_ATRANSITION", default_atransition);
        sprintf(default_vtransition, INIT_VTRANSITION);
@@ -413,7 +410,6 @@ int EDLSession::save_defaults(BC_Hash *defaults)
        defaults->update("CWINDOW_ZOOM", cwindow_zoom);
        defaults->update("CWINDOW_CLICK2PLAY", cwindow_click2play);
        defaults->update("CWINDOW_CLEAR_COLOR", cwindow_clear_color);
-       defaults->update("CWINDOW_CLEAR_ALPHA", cwindow_clear_alpha);
        defaults->update("DEFAULT_ATRANSITION", default_atransition);
        defaults->update("DEFAULT_VTRANSITION", default_vtransition);
        defaults->update("DEFAULT_TRANSITION_LENGTH", default_transition_length);
@@ -641,7 +637,6 @@ int EDLSession::load_xml(FileXML *file,
                cwindow_zoom = file->tag.get_property("CWINDOW_ZOOM", cwindow_zoom);
                cwindow_click2play = file->tag.get_property("CWINDOW_CLICK2PLAY", cwindow_click2play);
                cwindow_clear_color = file->tag.get_property("CWINDOW_CLEAR_COLOR", cwindow_clear_color);
-               cwindow_clear_alpha = file->tag.get_property("CWINDOW_CLEAR_ALPHA", cwindow_clear_alpha);
                editing_mode = file->tag.get_property("EDITING_MODE", editing_mode);
                folderlist_format = file->tag.get_property("FOLDERLIST_FORMAT", folderlist_format);
                highlighted_track = file->tag.get_property("HIGHLIGHTED_TRACK", 0);
@@ -712,7 +707,6 @@ int EDLSession::save_xml(FileXML *file)
        file->tag.set_property("CWINDOW_ZOOM", cwindow_zoom);
        file->tag.set_property("CWINDOW_CLICK2PLAY", cwindow_click2play);
        file->tag.set_property("CWINDOW_CLEAR_COLOR", cwindow_clear_color);
-       file->tag.set_property("CWINDOW_CLEAR_ALPHA", cwindow_clear_alpha);
        file->tag.set_property("EDITING_MODE", editing_mode);
        file->tag.set_property("FOLDERLIST_FORMAT", folderlist_format);
        file->tag.set_property("HIGHLIGHTED_TRACK", highlighted_track);
@@ -851,7 +845,6 @@ int EDLSession::copy(EDLSession *session)
        cwindow_zoom = session->cwindow_zoom;
        cwindow_click2play = session->cwindow_click2play;
        cwindow_clear_color = session->cwindow_clear_color;
-       cwindow_clear_alpha = session->cwindow_clear_alpha;
        strcpy(default_atransition, session->default_atransition);
        strcpy(default_vtransition, session->default_vtransition);
        default_transition_length = session->default_transition_length;
index eebe71f2bac092bcfb9a3c3564a8773f7796e69f..fad4789aaa6b5388e31f61522c4f3f39a97a9469 100644 (file)
@@ -121,7 +121,6 @@ public:
        int cwindow_click2play;
 // CWindow clear color
        int cwindow_clear_color;
-       int cwindow_clear_alpha;
 // Transition
        char default_atransition[BCTEXTLEN];
        char default_vtransition[BCTEXTLEN];
index 2cdc807039414daf2825ff4b2c401f0c0d04947f..1c86af68d02b5bb2d050cfa2b5a52a463c4514fb 100644 (file)
@@ -91,6 +91,7 @@ PackageFile::~PackageFile()
 
 int PackageFile::write_frame_done(int64_t position)
 {
+       if( !package_renderer->package->use_brender ) return 0;
        return package_renderer->set_video_map(position, BRender::RENDERED);
 }
 
index 94a208844658668db4048770b28b1eefb3044843..29306b8c5f50e222ba2dce26e973319c6bd895ea 100644 (file)
@@ -939,8 +939,7 @@ double PluginClient::get_project_framerate()
 
 const char *PluginClient::get_source_path()
 {
-       EDL *edl = get_edl();
-       Plugin *plugin = edl->tracks->plugin_exists(server->plugin_id);
+       Plugin *plugin = server->edl->tracks->plugin_exists(server->plugin_id);
        int64_t source_position = plugin->startproject;
        Edit *edit = plugin->track->edits->editof(source_position,PLAY_FORWARD,0);
        Indexable *indexable = edit ? edit->get_source() : 0;
index 1391351cccec3f38ad42a31b4952762ba8175119..f5ca9f966748a3249f3f6d1c746b9e3b1c47e58f 100644 (file)
 enum
 {
        RENDERFARM_NONE,
-       RENDERFARM_PREFERENCES,  // Get preferences on startup
+       RENDERFARM_PREFERENCES,  // Get preferences on startup
        RENDERFARM_ASSET,        // Get output format on startup
        RENDERFARM_EDL,          // Get EDL on startup
        RENDERFARM_PACKAGE,      // Get one package after another to render
@@ -135,7 +135,7 @@ enum
        RENDERFARM_SET_RESULT,   // Update error status
        RENDERFARM_GET_RESULT,   // Retrieve error status
        RENDERFARM_DONE,         // Quit
-       RENDERFARM_SET_VMAP,     // Update video map in background rendering
+       RENDERFARM_SET_VMAP,     // Update video map in background rendering
        RENDERFARM_COMMAND,      // Get the client to run
        RENDERFARM_TUNER,        // Run a tuner server
        RENDERFARM_PACKAGES,     // Run packages
index 17b345112a4c49891650d459fbe3fe0a51c541bf..807b866afd2c9c96b09924ebe01decc99c43f2e5 100644 (file)
@@ -122,6 +122,11 @@ void RenderFarmClient::main_loop()
                        perror(_("RenderFarmClient::main_loop: socket"));
                        return;
                }
+               struct linger lgr;
+               lgr.l_onoff = 0;
+               lgr.l_linger = 0;
+               if( setsockopt(socket_fd, SOL_SOCKET, SO_LINGER, &lgr, sizeof(lgr)) < 0 )
+                       perror("RenderFarmClient::setsockopt:setlinger 0");
 
                if(bind(socket_fd,
                        (struct sockaddr*)&addr,
@@ -147,6 +152,11 @@ void RenderFarmClient::main_loop()
                        perror(_("RenderFarmClient::main_loop: socket"));
                        return;
                }
+               struct linger lgr;
+               lgr.l_onoff = 0;
+               lgr.l_linger = 0;
+               if( setsockopt(socket_fd, SOL_SOCKET, SO_LINGER, &lgr, sizeof(lgr)) < 0 )
+                       perror("RenderFarmClient::setsockopt:setlinger 1");
 
                if(bind(socket_fd,
                        (struct sockaddr*)&addr,
@@ -267,7 +277,8 @@ int RenderFarmClientThread::read_socket(char *data, int len)
        int bytes_read = 0;
        int offset = 0;
 //printf("RenderFarmClientThread::read_socket 1\n");
-       watchdog->begin_request();
+       if( watchdog )
+               watchdog->begin_request();
        while(len > 0 && bytes_read >= 0)
        {
                bytes_read = read(socket_fd, data + offset, len);
@@ -282,7 +293,8 @@ int RenderFarmClientThread::read_socket(char *data, int len)
                        break;
                }
        }
-       watchdog->end_request();
+       if( watchdog )
+               watchdog->end_request();
 //printf("RenderFarmClientThread::read_socket 10\n");
 
        return offset;
index dd0ee060d9bcb9ca732cf87b22dd805180bf3792..3ca744b4c29abaa7bbe421eb8b895de93c229738 100644 (file)
@@ -722,8 +722,7 @@ void VideoDevice::new_output_buffer(VFrame **output, int colormodel, EDL *edl)
        if(!output_base) return;
        output_base->new_output_buffer(output, colormodel, edl);
        int clr_color = edl->session->cwindow_clear_color;
-       int clr_alpha = edl->session->cwindow_clear_alpha;
-       (*output)->set_clear_color(clr_color, clr_alpha);
+       (*output)->set_clear_color(clr_color, 0xff);
 }
 
 
index 193761b6763a61d11b0b85c8edbb4ec658df2b99..3c3fb86f5710e15954c927f358210027cb819ed1 100644 (file)
@@ -99,6 +99,10 @@ int VirtualVConsole::process_buffer(int64_t input_position,
                        exit_nodes.total);
 
 
+       EDLSession *session = renderengine->get_edl()->session;
+       int clr_color = session->cwindow_clear_color;
+       vrender->video_out->set_clear_color(clr_color, 0xff);
+
        if(use_opengl)
        {
 // clear hardware framebuffer
@@ -156,9 +160,6 @@ int VirtualVConsole::process_buffer(int64_t input_position,
                        EDL *edl = renderengine->get_edl();
                        output_temp = new VFrame( track->track_w, track->track_h,
                                edl->session->color_model);
-                       int clr_color = edl->session->cwindow_clear_color;
-                       int clr_alpha = edl->session->cwindow_clear_alpha;
-                       output_temp->set_clear_color(clr_color, clr_alpha);
                }
 
 // Reset OpenGL state
index 1d00a4357f8fb4b7a21502572c9b0e8d05716fc7..d529a8015e29bd7fbca52942b0c5efab6aa7e2a8 100644 (file)
@@ -414,7 +414,7 @@ PKG_3RD([libaom],[auto],
   [ usr/local/include ])
 
 PKG_3RD([dav1d],[auto],
-  [dav1d-0.7.1],
+  [dav1d-0.5.1],
   [ usr/local/lib*/libdav1d*.a ],
   [ usr/local/include ])
 
diff --git a/cinelerra-5.1/ffmpeg/video/ffv1.avi b/cinelerra-5.1/ffmpeg/video/ffv1.avi
new file mode 100644 (file)
index 0000000..519b5e7
--- /dev/null
@@ -0,0 +1 @@
+avi ffv1
index 4f185dd6f89e1ddec158d9615330aa140ccc85a8..f3a5ab3b2b16aedb273dae9ed3b1300e48139dc2 100644 (file)
@@ -1 +1,2 @@
 flv libx264
+cin_quality=23
index 05323bb86c1fea75ec73a91ef63a24e9363f74ef..178e0ef210f49b3f291973efc9194b71d373d43b 100644 (file)
@@ -101,8 +101,6 @@ DIRS = $(OPENCV_OBJS) \
        loopvideo \
        motion \
        motion51 \
-       motion-cv \
-       motion-hv \
        motion2point \
        motionblur \
        normalize \
@@ -171,6 +169,9 @@ DIRS = $(OPENCV_OBJS) \
        theme_unflat \
        theme_cakewalk \
 
+# not maintained
+#      motion-cv \
+#      motion-hv \
 # too costly
 #      findobject \
 #      greycstoration \
index cb50652d838964734b669611c5fe0dae68592af5..8acb53fc3e3186e1cf21694e35e19512581168dd 100644 (file)
@@ -323,7 +323,7 @@ int HistogramWindow::resize_event(int w, int h)
 
        low_output->reposition_window(low_output->get_x(),
                low_output->get_y() + ydiff);
-       int xs = (get_w() - log_slider->get_w()) / 2;
+       int xs = (w - log_slider->get_w()) / 2;
        int margin = plugin->get_theme()->widget_border;
        log_title1->reposition_window(xs - log_title1->get_w() - margin,
                log_title1->get_y() + ydiff);
index 93b35adc73a0fbc22c935d3c5cfe943b8bad179c..82f76a244d9b82208a296c87df6a2f506f290e35 100644 (file)
@@ -10,7 +10,7 @@ msgstr ""
 "Project-Id-Version: Cinelerra-GG Infinity\n"
 "Report-Msgid-Bugs-To: <[email protected]>\n"
 "POT-Creation-Date: 2020-09-01 04:28+0300\n"
-"PO-Revision-Date: 2020-09-06 15:06+0300\n"
+"PO-Revision-Date: 2020-09-21 08:48+0300\n"
 "Last-Translator: Andrew Randrianasulu <[email protected]>\n"
 "Language-Team: <[email protected]>\n"
 "Language: ru_RU\n"
@@ -11247,7 +11247,7 @@ msgstr "Компрессор"
 #: plugins/compressor/compressor.C:394
 #: plugins/compressormulti/comprmultigui.C:113
 msgid "Sound level (Press shift to snap to grid):"
-msgstr "Уровень звука (нажм. shift дял выравнивания по сетке):"
+msgstr "Уровень звука (нажм. shift для выравнивания по сетке):"
 
 #: plugins/compressor/compressor.C:406
 #: plugins/compressormulti/comprmultigui.C:129
diff --git a/cinelerra-5.1/thirdparty/src/dav1d-0.5.1.patch1 b/cinelerra-5.1/thirdparty/src/dav1d-0.5.1.patch1
new file mode 100644 (file)
index 0000000..d4f2b83
--- /dev/null
@@ -0,0 +1,367 @@
+diff -urN a/Makefile b/Makefile
+--- a/Makefile 1969-12-31 17:00:00.000000000 -0700
++++ b/Makefile 2019-10-14 10:54:47.354841430 -0600
+@@ -0,0 +1,363 @@
++
++_ARCH := $(shell uname -m)
++ARCH_I32 := $(shell expr "x$(_ARCH)" : 'xi[346]86.*')
++ARCH_X64 := $(shell expr "x$(_ARCH)" : 'x..._64*')
++
++ifneq ($(ARCH_I32),0)
++ASM_ARCH := elf32
++ARCH_X86_32 := 1
++ARCH_X86_64 := 0
++endif
++ifneq ($(ARCH_X64),0)
++ASM_ARCH := elf64
++ARCH_X86_32 := 0
++ARCH_X86_64 := 1
++endif
++
++BUILD=build
++DESTDIR=/
++PREFIX=usr/local
++LIBDIR=$(PREFIX)/lib
++INCDIR=$(PREFIX)/include
++# make Q="" for verbose
++Q?=@echo == $@; 
++OBJDIR?=$(BUILD)/static
++NASM_BLD=$(OBJDIR)/nasm
++ENTRY_BLD=$(OBJDIR)/entry
++SRC_BLD=$(OBJDIR)/src
++BIT8_BLD=$(OBJDIR)/bits8
++BIT16_BLD=$(OBJDIR)/bits16
++TOOLS_BLD=$(BUILD)/tools
++TESTS_BLD=$(BUILD)/tests
++
++STATIC_LIB=$(BUILD)/src/libdav1d.a
++SHARED_LIB=$(BUILD)/src/libdav1d.so
++DEFS= -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_POSIX_C_SOURCE=200112L
++FUZZ= -DDAV1D_MT_FUZZING
++
++BLD_INCL= $(DEFS) -I. -Isrc -Iinclude/dav1d -Iinclude \
++      -I$(BUILD) -I$(BUILD)/include -I$(BUILD)/include/dav1d
++TOOLS_INCL= $(DEFS) -Itools -I. -I$(BUILD) -I$(BUILD)/tools \
++      -Iinclude -Iinclude/dav1d -I$(BUILD)/include/dav1d \
++      -I$(BUILD)/include -I/usr/include/SDL2
++
++NP?=.NOTPARALLEL:
++$(NP)
++MAKE_P:=$(MAKE) -j NP=""
++
++all: meson_data
++      $(MAKE_P) $(STATIC_LIB) OBJDIR=$(BUILD)/static
++      $(MAKE_P) $(SHARED_LIB) OBJDIR=$(BUILD)/shared
++# req SDL
++#     $(MAKE_P) $(TOOLS) OBJDIR=$(BUILD)/static
++#     $(MAKE_P) $(TESTS) OBJDIR=$(BUILD)/static
++
++CC_DEFS=\
++      -DNDEBUG \
++      -D_FILE_OFFSET_BITS=64 \
++      -D_POSIX_C_SOURCE=200112L \
++
++CC_OPTS=\
++      -pipe \
++      -Wall \
++      -Winvalid-pch \
++      -Wextra \
++      -std=c99 \
++      -O3 \
++      -fvisibility=hidden \
++      -Wundef \
++      -Werror=vla \
++      -Wno-maybe-uninitialized \
++      -Wno-missing-field-initializers \
++      -Wno-unused-parameter \
++      -Werror=missing-prototypes \
++      -fomit-frame-pointer \
++      -ffast-math \
++      -fPIC \
++      -mpreferred-stack-boundary=5 \
++      -MD -MQ $@ -MF [email protected] \
++
++SHA_OPTS=\
++      -Wl,--no-undefined \
++      -Wl,--as-needed \
++      -Wl,-O1 \
++      -shared \
++      -fPIC \
++      -Wl,--start-group \
++      -Wl,-soname,libdav1d.so.2 \
++      -Wl,--end-group \
++      -pthread \
++
++CC_CC=$(Q)cc $(CC_OPTS) $(CFLAGS)
++NASM=$(Q)/usr/bin/nasm
++any=$(foreach i,$(2),$(1)/$(i))
++
++# nasm
++NASM_OBJS=$(call any,$(NASM_BLD), \
++      cdef.obj \
++      film_grain.obj \
++      ipred.obj \
++      itx.obj \
++      cdef_sse.obj \
++      ipred_ssse3.obj \
++      loopfilter.obj \
++      looprestoration.obj \
++      mc.obj \
++      itx_ssse3.obj \
++      looprestoration_ssse3.obj \
++      loopfilter_ssse3.obj \
++      mc_ssse3.obj \
++      cpuid.obj \
++      msac.obj )
++
++$(NASM_BLD)/%.obj: src/x86/%.asm
++      $(NASM) -f $(ASM_ARCH) \
++              -I src/ -I $(BUILD)/ -MQ $@ -MF [email protected] \
++              $< -o $@
++
++# entry
++ENTRY_OBJS=$(call any,$(ENTRY_BLD), \
++      lib.c.o \
++      thread_task.c.o)
++$(ENTRY_BLD)/%.c.o: src/%.c
++      $(CC_CC) -Iinclude -Ibuild/include/dav1d -Isrc/entry $(BLD_INCL) \
++              -mincoming-stack-boundary=4 -o $@ -c $<
++
++# src
++SRC_OBJS=$(call any,$(SRC_BLD), \
++      cdf.o \
++      cpu.o \
++      data.o \
++      decode.o \
++      dequant_tables.o \
++      getbits.o \
++      intra_edge.o \
++      lf_mask.o \
++      log.o \
++      msac.o \
++      obu.o \
++      picture.o \
++      qm.o \
++      ref.o \
++      ref_mvs.o \
++      scan.o \
++      tables.o \
++      warpmv.o \
++      wedge.o \
++      x86/cpu.c.o)
++$(SRC_BLD)/%.o: src/%.c
++      $(CC_CC) $(BLD_INCL) -pthread -o $@ -c $<
++$(SRC_BLD)/x86/%.c.o: src/x86/%.c
++      $(CC_CC) $(BLD_INCL) -o $@ -c $<
++
++# bits
++BITS_OBJS= \
++      cdef_tmpl.o \
++      cdef_apply_tmpl.o \
++      fg_apply_tmpl.o \
++      film_grain_tmpl.o \
++      ipred_tmpl.o \
++      ipred_prepare_tmpl.o \
++      itx_tmpl.o \
++      lf_apply_tmpl.o \
++      loopfilter_tmpl.o \
++      looprestoration_tmpl.o \
++      lr_apply_tmpl.o \
++      mc_tmpl.o \
++      recon_tmpl.o \
++      x86/cdef_init_tmpl.c.o \
++      x86/film_grain_init_tmpl.c.o \
++      x86/ipred_init_tmpl.c.o \
++      x86/itx_init_tmpl.c.o \
++      x86/loopfilter_init_tmpl.c.o \
++      x86/looprestoration_init_tmpl.c.o \
++      x86/mc_init_tmpl.c.o \
++
++BIT8_OBJS=$(call any,$(BIT8_BLD),$(BITS_OBJS))
++$(BIT8_BLD)/x86/%.c.o: src/x86/%.c
++      $(CC_CC) $(BLD_INCL) -DBITDEPTH=8 -o $@ -c $<
++$(BIT8_BLD)/%.o: src/%.c
++      $(CC_CC) $(BLD_INCL) -DBITDEPTH=8 -o $@ -c $<
++
++BIT16_OBJS=$(call any,$(BIT16_BLD),$(BITS_OBJS))
++$(BIT16_BLD)/x86/%.c.o: src/x86/%.c
++      $(CC_CC) $(BLD_INCL) -DBITDEPTH=16 -o $@ -c $<
++$(BIT16_BLD)/%.o: src/%.c
++      $(CC_CC) $(BLD_INCL) -DBITDEPTH=16 -o $@ -c $<
++
++$(BUILD)/config.h:
++      echo  > $@ "#pragma once"
++      echo >> $@ "#define ARCH_AARCH64 0"
++      echo >> $@ "#define ARCH_ARM 0"
++      echo >> $@ "#define ARCH_PPC64LE 0"
++      echo >> $@ "#define ARCH_X86 1"
++      echo >> $@ "#define ARCH_X86_32 $(ARCH_X86_32)"
++      echo >> $@ "#define ARCH_X86_64 $(ARCH_X86_64)"
++      echo >> $@ "#define CONFIG_16BPC 1"
++      echo >> $@ "#define CONFIG_8BPC 1"
++      echo >> $@ "#define CONFIG_LOG 1"
++      echo >> $@ "#define ENDIANNESS_BIG 0"
++      echo >> $@ "#define HAVE_ASM 1"
++      echo >> $@ "#define HAVE_POSIX_MEMALIGN 1"
++      echo >> $@ "#define HAVE_UNISTD_H 1"
++      echo >> $@ "#define STACK_ALIGNMENT 32"
++
++$(BUILD)/config.asm:
++      echo  > $@ "%define ARCH_X86_32 $(ARCH_X86_32)"
++      echo >> $@ "%define ARCH_X86_64 $(ARCH_X86_64)"
++      echo >> $@ "%define PIC 1"
++      echo >> $@ "%define STACK_ALIGNMENT 32"
++
++$(BUILD)/include/vcs_version.h:
++      mkdir -p $(BUILD)/include
++      echo  > $@ "#define DAV1D_VERSION \"0.5.0\""
++
++$(BUILD)/include/dav1d/version.h:
++      mkdir -p $(BUILD)/include/dav1d
++      echo  > $@ "#ifndef DAV1D_VERSION_H"
++      echo >> $@ "#define DAV1D_VERSION_H"
++      echo >> $@ "#define DAV1D_API_VERSION_MAJOR 2"
++      echo >> $@ "#define DAV1D_API_VERSION_MINOR 0"
++      echo >> $@ "#define DAV1D_API_VERSION_PATCH 0"
++      echo >> $@ "#endif /* DAV1D_VERSION_H */"
++
++$(TOOLS_BLD)/cli_config.h:
++      mkdir -p $(TOOLS_BLD)
++      echo  > $@ "#pragma once"
++      echo >> $@ "#define HAVE_CLOCK_GETTIME 1"
++
++.PHONY: meson_data
++meson_data:
++      make meson_dirs OBJDIR=$(BUILD)/static
++      make meson_dirs OBJDIR=$(BUILD)/shared
++      ln -sf ./include/compat/gcc/stdatomic.h .
++
++.PHONY: meson_dirs
++meson_dirs: $(OBJDIR) \
++      $(BUILD)/config.h $(BUILD)/config.asm \
++      $(BUILD)/include/vcs_version.h \
++      $(BUILD)/include/dav1d/version.h \
++      $(TOOLS_BLD)/cli_config.h \
++
++LIB_OBJS=$(ENTRY_OBJS) $(NASM_OBJS) $(SRC_OBJS) $(BIT8_OBJS) $(BIT16_OBJS)
++
++$(STATIC_LIB): DIR?=static
++$(STATIC_LIB): $(LIB_OBJS)
++      rm -f $@
++      gcc-ar csrD $@ $(LIB_OBJS)
++
++$(SHARED_LIB): DIR?=shared
++$(SHARED_LIB): $(LIB_OBJS)
++      rm -f $@
++      cc -o $@ $(LIB_OBJS) $(SHA_OPTS)
++
++# tools
++DAV1D_OBJS=$(call any,$(TOOLS_BLD),\
++      dav1d.o \
++      dav1d_cli_parse.o \
++      input/annexb.o \
++      input/ivf.o \
++      input/input.o \
++      output/md5.o \
++      output/null.o \
++      output/output.o \
++      output/y4m2.o \
++      output/yuv.o)
++
++DAV1DPLAY_OBJS=$(call any,$(TOOLS_BLD),\
++      dav1dplay.o \
++      input/annexb.o \
++      input/ivf.o \
++      input/input.o)
++
++$(TOOLS_BLD)/%.o: tools/%.c
++      $(CC_CC) $(TOOLS_INCL) -o $@ -c $<
++
++DAV1D=$(TOOLS_BLD)/dav1d
++$(DAV1D): $(DAV1D_OBJS)
++      $(CC_CC) -pthread -I$(BUILD) -o $@ $(DAV1D_OBJS) $(STATIC_LIB)
++
++DAV1DPLAY=$(TOOLS_BLD)/dav1dplay
++$(DAV1DPLAY): $(DAV1DPLAY_OBJS)
++      $(CC_CC) -pthread -o $(TOOLS_BLD)/dav1dplay $(DAV1DPLAY_OBJS) $(STATIC_LIB) -lSDL2
++
++TOOLS=$(DAV1D) $(DAV1DPLAY)
++.PHONY:       tools
++tools:        $(TOOLS)
++
++# tests
++TESTS_CHKASM=tests/checkasm
++TESTS_CHKASM_BLD=$(TESTS_BLD)/checkasm
++CHKASM_BIT8=$(TESTS_CHKASM_BLD)/bit8
++CHKASM_BIT16=$(TESTS_CHKASM_BLD)/bit16
++CHKASM_BITS= \
++      cdef.o \
++      ipred.o \
++      itx.o \
++      loopfilter.o \
++      looprestoration.o \
++      mc.o \
++
++CHKASM_BIT8_OBJS=$(call any,$(CHKASM_BIT8),$(CHKASM_BITS))
++CHKASM_BIT16_OBJS=$(call any,$(CHKASM_BIT16),$(CHKASM_BITS))
++
++TESTS_CHKASM_OBJS= \
++      $(TESTS_CHKASM_BLD)/checkasm.o \
++      $(TESTS_CHKASM_BLD)/msac.o \
++      $(CHKASM_BIT8_OBJS) $(CHKASM_BIT16_OBJS) \
++      $(TESTS_CHKASM_BLD)/x86/checkasm.obj \
++
++$(TESTS_CHKASM_BLD)/%.o: $(TESTS_CHKASM)/%.c
++      $(CC_CC) $(BLD_INCL) -o $@ -c $<
++$(CHKASM_BIT8)/%.o: $(TESTS_CHKASM)/%.c
++      $(CC_CC) $(BLD_INCL) -DBITDEPTH=8 -o $@ -c $<
++$(CHKASM_BIT16)/%.o: $(TESTS_CHKASM)/%.c
++      $(CC_CC) $(BLD_INCL) -DBITDEPTH=16 -o $@ -c $<
++$(TESTS_CHKASM_BLD)/x86/%.obj: $(TESTS_CHKASM)/x86/%.asm
++      @$(NASM) -f $(ASM_ARCH) \
++              -I src/ -I $(BUILD)/ -MQ $@ -MF [email protected] \
++              $< -o $@
++
++CHECKASM=$(TESTS_BLD)/checkasm/checkasm
++$(CHECKASM): $(TESTS_CHKASM_OBJS) $(STATIC_LIB)
++      $(CC_CC) -pthread -o $@ $(TESTS_CHKASM_OBJS) $(STATIC_LIB) -lm
++
++TESTS_FUZZER=tests/libfuzzer
++TESTS_FUZZER_BLD=$(TESTS_BLD)/libfuzzer
++TESTS_FUZZER_OBJS= \
++      $(TESTS_FUZZER_BLD)/main.o \
++      $(TESTS_FUZZER_BLD)/dav1d_fuzzer.o \
++
++$(TESTS_FUZZER_BLD)/%.o: $(TESTS_FUZZER)/%.c
++      $(CC_CC) $(BLD_INCL) -o $@ -c $<
++
++DAV1D_FUZZER=$(TESTS_BLD)/dav1d_fuzzer
++$(DAV1D_FUZZER): $(TESTS_FUZZER_OBJS) $(STATIC_LIB)
++      $(CC_CC) -pthread -o $@ $(TESTS_FUZZER_OBJS) $(STATIC_LIB)
++
++TESTS=$(CHECKASM) $(DAV1D_FUZZER)
++.PHONY:       tests
++tests:        $(TESTS)
++
++$(OBJDIR):
++      mkdir -p $@/include/dav1d \
++              $(BUILD)/src $(BUILD)/include \
++              $(ENTRY_BLD) $(NASM_BLD) \
++              $(SRC_BLD)/x86 $(BIT8_BLD)/x86 $(BIT16_BLD)/x86 \
++              $(TOOLS_BLD) $(TOOLS_BLD)/input $(TOOLS_BLD)/output \
++              $(TESTS_CHKASM_BLD)/bit8 $(TESTS_CHKASM_BLD)/bit16 \
++              $(TESTS_CHKASM_BLD)/x86 $(TESTS_FUZZER_BLD) \
++
++clean:
++      rm -rf $(BUILD)
++
++install:
++      mkdir -p $(DESTDIR)$(LIBDIR)
++      cp -a $(STATIC_LIB) $(DESTDIR)$(LIBDIR)
++      cp -a $(SHARED_LIB) $(DESTDIR)$(LIBDIR)
++      mkdir -p $(DESTDIR)$(INCDIR)
++      cp -a include/dav1d $(DESTDIR)$(INCDIR)
++      rm -f $(DESTDIR)$(INCDIR)/dav1d/meson.build
++      rm -f $(DESTDIR)$(INCDIR)/dav1d/version.h.in
++      cp -a $(BUILD)/include/dav1d/version.h $(DESTDIR)$(INCDIR)/version.h
++
diff --git a/cinelerra-5.1/thirdparty/src/dav1d-0.5.1.tar.gz b/cinelerra-5.1/thirdparty/src/dav1d-0.5.1.tar.gz
new file mode 100644 (file)
index 0000000..805f750
Binary files /dev/null and b/cinelerra-5.1/thirdparty/src/dav1d-0.5.1.tar.gz differ
diff --git a/cinelerra-5.1/thirdparty/src/dav1d-0.7.1.patch1 b/cinelerra-5.1/thirdparty/src/dav1d-0.7.1.patch1
deleted file mode 100644 (file)
index 21c98a3..0000000
+++ /dev/null
@@ -1,375 +0,0 @@
-diff -ruN dav1d-0.7.1.orig/Makefile dav1d-0.7.1/Makefile
---- dav1d-0.7.1.orig/Makefile  1969-12-31 17:00:00.000000000 -0700
-+++ dav1d-0.7.1/Makefile       2020-07-09 20:10:47.066626832 -0600
-@@ -0,0 +1,371 @@
-+
-+_ARCH := $(shell uname -m)
-+ARCH_I32 := $(shell expr "x$(_ARCH)" : 'xi[346]86.*')
-+ARCH_X64 := $(shell expr "x$(_ARCH)" : 'x..._64*')
-+
-+ifneq ($(ARCH_I32),0)
-+ASM_ARCH := elf32
-+ARCH_X86_32 := 1
-+ARCH_X86_64 := 0
-+endif
-+ifneq ($(ARCH_X64),0)
-+ASM_ARCH := elf64
-+ARCH_X86_32 := 0
-+ARCH_X86_64 := 1
-+endif
-+
-+BUILD=build
-+DESTDIR=/
-+PREFIX=usr/local
-+LIBDIR=$(PREFIX)/lib
-+INCDIR=$(PREFIX)/include
-+# make Q="" for verbose
-+Q?=@echo == $@; 
-+OBJDIR?=$(BUILD)/static
-+NASM_BLD=$(OBJDIR)/nasm
-+ENTRY_BLD=$(OBJDIR)/entry
-+SRC_BLD=$(OBJDIR)/src
-+BIT8_BLD=$(OBJDIR)/bits8
-+BIT16_BLD=$(OBJDIR)/bits16
-+TOOLS_BLD=$(BUILD)/tools
-+TESTS_BLD=$(BUILD)/tests
-+
-+STATIC_LIB=$(BUILD)/src/libdav1d.a
-+SHARED_LIB=$(BUILD)/src/libdav1d.so
-+DEFS= -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_POSIX_C_SOURCE=200112L -D_GNU_SOURCE
-+FUZZ= -DDAV1D_MT_FUZZING
-+
-+BLD_INCL= $(DEFS) -I. -Isrc -Iinclude/dav1d -Iinclude \
-+      -I$(BUILD) -I$(BUILD)/include -I$(BUILD)/include/dav1d
-+TOOLS_INCL= $(DEFS) -Itools -I. -I$(BUILD) -I$(BUILD)/tools \
-+      -Iinclude -Iinclude/dav1d -I$(BUILD)/include/dav1d \
-+      -I$(BUILD)/include -I/usr/include/SDL2
-+
-+NP?=.NOTPARALLEL:
-+$(NP)
-+MAKE_P:=$(MAKE) -j NP=""
-+
-+all: meson_data
-+      $(MAKE_P) $(STATIC_LIB) OBJDIR=$(BUILD)/static
-+      $(MAKE_P) $(SHARED_LIB) OBJDIR=$(BUILD)/shared
-+# req SDL
-+#     $(MAKE_P) $(TOOLS) OBJDIR=$(BUILD)/static
-+#     $(MAKE_P) $(TESTS) OBJDIR=$(BUILD)/static
-+
-+CC_DEFS=\
-+      -DNDEBUG \
-+      -D_FILE_OFFSET_BITS=64 \
-+      -D_POSIX_C_SOURCE=200112L \
-+
-+CC_OPTS=\
-+      -pipe \
-+      -Wall \
-+      -Winvalid-pch \
-+      -Wextra \
-+      -std=c99 \
-+      -O3 \
-+      -fvisibility=hidden \
-+      -Wundef \
-+      -Werror=vla \
-+      -Wno-maybe-uninitialized \
-+      -Wno-missing-field-initializers \
-+      -Wno-unused-parameter \
-+      -Werror=missing-prototypes \
-+      -fomit-frame-pointer \
-+      -ffast-math \
-+      -fPIC \
-+      -mpreferred-stack-boundary=6 \
-+      -MD -MQ $@ -MF [email protected] \
-+
-+SHA_OPTS=\
-+      -Wl,--no-undefined \
-+      -Wl,--as-needed \
-+      -Wl,-O1 \
-+      -shared \
-+      -fPIC \
-+      -Wl,--start-group \
-+      -Wl,-soname,libdav1d.so.3 \
-+      -Wl,--end-group \
-+      -pthread -ldl \
-+
-+CC_CC=$(Q)cc $(CC_OPTS) $(CFLAGS)
-+NASM=$(Q)/usr/bin/nasm
-+any=$(foreach i,$(2),$(1)/$(i))
-+
-+# nasm
-+NASM_OBJS=$(call any,$(NASM_BLD), \
-+      cdef_avx512.obj \
-+      cdef_avx2.obj \
-+      film_grain.obj \
-+      ipred.obj \
-+      itx.obj \
-+      cdef_sse.obj \
-+      film_grain_ssse3.obj \
-+      ipred_ssse3.obj \
-+      loopfilter.obj \
-+      looprestoration.obj \
-+      mc.obj \
-+      itx_ssse3.obj \
-+      looprestoration_ssse3.obj \
-+      loopfilter_ssse3.obj \
-+      mc_sse.obj \
-+      cpuid.obj \
-+      msac.obj )
-+
-+$(NASM_BLD)/%.obj: src/x86/%.asm
-+      $(NASM) -f $(ASM_ARCH) \
-+              -I src/ -I $(BUILD)/ -MQ $@ -MF [email protected] \
-+              $< -o $@
-+
-+# entry
-+ENTRY_OBJS=$(call any,$(ENTRY_BLD), \
-+      lib.c.o \
-+      thread_task.c.o)
-+$(ENTRY_BLD)/%.c.o: src/%.c
-+      $(CC_CC) -Iinclude -Ibuild/include/dav1d -Isrc/entry $(BLD_INCL) \
-+              -mincoming-stack-boundary=4 -o $@ -c $<
-+
-+# src
-+SRC_OBJS=$(call any,$(SRC_BLD), \
-+      cdf.o \
-+      cpu.o \
-+      data.o \
-+      decode.o \
-+      dequant_tables.o \
-+      getbits.o \
-+      intra_edge.o \
-+      itx_1d.o \
-+      lf_mask.o \
-+      log.o \
-+      msac.o \
-+      obu.o \
-+      picture.o \
-+      qm.o \
-+      ref.o \
-+      refmvs.o \
-+      scan.o \
-+      tables.o \
-+      warpmv.o \
-+      wedge.o \
-+      x86/cpu.c.o \
-+      x86/msac_init.c.o)
-+$(SRC_BLD)/%.o: src/%.c
-+      $(CC_CC) $(BLD_INCL) -pthread -o $@ -c $<
-+$(SRC_BLD)/x86/%.c.o: src/x86/%.c
-+      $(CC_CC) $(BLD_INCL) -o $@ -c $<
-+
-+# bits
-+BITS_OBJS= \
-+      cdef_tmpl.o \
-+      cdef_apply_tmpl.o \
-+      fg_apply_tmpl.o \
-+      film_grain_tmpl.o \
-+      ipred_tmpl.o \
-+      ipred_prepare_tmpl.o \
-+      itx_tmpl.o \
-+      lf_apply_tmpl.o \
-+      loopfilter_tmpl.o \
-+      looprestoration_tmpl.o \
-+      lr_apply_tmpl.o \
-+      mc_tmpl.o \
-+      recon_tmpl.o \
-+      x86/cdef_init_tmpl.c.o \
-+      x86/film_grain_init_tmpl.c.o \
-+      x86/ipred_init_tmpl.c.o \
-+      x86/itx_init_tmpl.c.o \
-+      x86/loopfilter_init_tmpl.c.o \
-+      x86/looprestoration_init_tmpl.c.o \
-+      x86/mc_init_tmpl.c.o \
-+
-+BIT8_OBJS=$(call any,$(BIT8_BLD),$(BITS_OBJS))
-+$(BIT8_BLD)/x86/%.c.o: src/x86/%.c
-+      $(CC_CC) $(BLD_INCL) -DBITDEPTH=8 -o $@ -c $<
-+$(BIT8_BLD)/%.o: src/%.c
-+      $(CC_CC) $(BLD_INCL) -DBITDEPTH=8 -o $@ -c $<
-+
-+BIT16_OBJS=$(call any,$(BIT16_BLD),$(BITS_OBJS))
-+$(BIT16_BLD)/x86/%.c.o: src/x86/%.c
-+      $(CC_CC) $(BLD_INCL) -DBITDEPTH=16 -o $@ -c $<
-+$(BIT16_BLD)/%.o: src/%.c
-+      $(CC_CC) $(BLD_INCL) -DBITDEPTH=16 -o $@ -c $<
-+
-+$(BUILD)/config.h:
-+      echo  > $@ "#pragma once"
-+      echo >> $@ "#define ARCH_AARCH64 0"
-+      echo >> $@ "#define ARCH_ARM 0"
-+      echo >> $@ "#define ARCH_PPC64LE 0"
-+      echo >> $@ "#define ARCH_X86 1"
-+      echo >> $@ "#define ARCH_X86_32 $(ARCH_X86_32)"
-+      echo >> $@ "#define ARCH_X86_64 $(ARCH_X86_64)"
-+      echo >> $@ "#define CONFIG_16BPC 1"
-+      echo >> $@ "#define CONFIG_8BPC 1"
-+      echo >> $@ "#define CONFIG_LOG 1"
-+      echo >> $@ "#define ENDIANNESS_BIG 0"
-+      echo >> $@ "#define HAVE_ASM 1"
-+      echo >> $@ "#define HAVE_AVX512ICL 0"
-+      echo >> $@ "#define HAVE_CLOCK_GETTIME 1"
-+      echo >> $@ "#define HAVE_DLSYM 1"
-+      echo >> $@ "#define HAVE_POSIX_MEMALIGN 1"
-+      echo >> $@ "#define HAVE_UNISTD_H 1"
-+      echo >> $@ "#define STACK_ALIGNMENT 32"
-+
-+$(BUILD)/config.asm:
-+      echo  > $@ "%define ARCH_X86_32 $(ARCH_X86_32)"
-+      echo >> $@ "%define ARCH_X86_64 $(ARCH_X86_64)"
-+      echo >> $@ "%define PIC 1"
-+      echo >> $@ "%define STACK_ALIGNMENT 32"
-+      echo >> $@ "%define HAVE_AVX512ICL 0"
-+
-+$(BUILD)/include/vcs_version.h:
-+      mkdir -p $(BUILD)/include
-+      echo  > $@ "#define DAV1D_VERSION \"0.7.1\""
-+
-+$(BUILD)/include/dav1d/version.h:
-+      mkdir -p $(BUILD)/include/dav1d
-+      echo  > $@ "#ifndef DAV1D_VERSION_H"
-+      echo >> $@ "#define DAV1D_VERSION_H"
-+      echo >> $@ "#define DAV1D_API_VERSION_MAJOR 3"
-+      echo >> $@ "#define DAV1D_API_VERSION_MINOR 0"
-+      echo >> $@ "#define DAV1D_API_VERSION_PATCH 0"
-+      echo >> $@ "#endif /* DAV1D_VERSION_H */"
-+
-+$(TOOLS_BLD)/cli_config.h:
-+      mkdir -p $(TOOLS_BLD)
-+      echo  > $@ "#pragma once"
-+      echo >> $@ "#define HAVE_CLOCK_GETTIME 1"
-+
-+.PHONY: meson_data
-+meson_data:
-+      make meson_dirs OBJDIR=$(BUILD)/static
-+      make meson_dirs OBJDIR=$(BUILD)/shared
-+      ln -sf ./include/compat/gcc/stdatomic.h .
-+
-+.PHONY: meson_dirs
-+meson_dirs: $(OBJDIR) \
-+      $(BUILD)/config.h $(BUILD)/config.asm \
-+      $(BUILD)/include/vcs_version.h \
-+      $(BUILD)/include/dav1d/version.h \
-+      $(TOOLS_BLD)/cli_config.h \
-+
-+LIB_OBJS=$(ENTRY_OBJS) $(NASM_OBJS) $(SRC_OBJS) $(BIT8_OBJS) $(BIT16_OBJS)
-+
-+$(STATIC_LIB): DIR?=static
-+$(STATIC_LIB): $(LIB_OBJS)
-+      rm -f $@
-+      gcc-ar csrD $@ $(LIB_OBJS)
-+
-+$(SHARED_LIB): DIR?=shared
-+$(SHARED_LIB): $(LIB_OBJS)
-+      rm -f $@
-+      cc -o $@ $(LIB_OBJS) $(SHA_OPTS)
-+
-+# tools
-+DAV1D_OBJS=$(call any,$(TOOLS_BLD),\
-+      dav1d.o \
-+      dav1d_cli_parse.o \
-+      input/annexb.o \
-+      input/ivf.o \
-+      input/input.o \
-+      output/md5.o \
-+      output/null.o \
-+      output/output.o \
-+      output/y4m2.o \
-+      output/yuv.o)
-+
-+DAV1DPLAY_OBJS=$(call any,$(TOOLS_BLD),\
-+      dav1dplay.o \
-+      input/annexb.o \
-+      input/ivf.o \
-+      input/input.o)
-+
-+$(TOOLS_BLD)/%.o: tools/%.c
-+      $(CC_CC) $(TOOLS_INCL) -o $@ -c $<
-+
-+DAV1D=$(TOOLS_BLD)/dav1d
-+$(DAV1D): $(DAV1D_OBJS)
-+      $(CC_CC) -pthread -I$(BUILD) -o $@ $(DAV1D_OBJS) $(STATIC_LIB)
-+
-+DAV1DPLAY=$(TOOLS_BLD)/dav1dplay
-+$(DAV1DPLAY): $(DAV1DPLAY_OBJS)
-+      $(CC_CC) -pthread -o $(TOOLS_BLD)/dav1dplay $(DAV1DPLAY_OBJS) $(STATIC_LIB) -lSDL2
-+
-+TOOLS=$(DAV1D) $(DAV1DPLAY)
-+.PHONY:       tools
-+tools:        $(TOOLS)
-+
-+# tests
-+TESTS_CHKASM=tests/checkasm
-+TESTS_CHKASM_BLD=$(TESTS_BLD)/checkasm
-+CHKASM_BIT8=$(TESTS_CHKASM_BLD)/bit8
-+CHKASM_BIT16=$(TESTS_CHKASM_BLD)/bit16
-+CHKASM_BITS= \
-+      cdef.o \
-+      ipred.o \
-+      itx.o \
-+      loopfilter.o \
-+      looprestoration.o \
-+      mc.o \
-+
-+CHKASM_BIT8_OBJS=$(call any,$(CHKASM_BIT8),$(CHKASM_BITS))
-+CHKASM_BIT16_OBJS=$(call any,$(CHKASM_BIT16),$(CHKASM_BITS))
-+
-+TESTS_CHKASM_OBJS= \
-+      $(TESTS_CHKASM_BLD)/checkasm.o \
-+      $(TESTS_CHKASM_BLD)/msac.o \
-+      $(CHKASM_BIT8_OBJS) $(CHKASM_BIT16_OBJS) \
-+      $(TESTS_CHKASM_BLD)/x86/checkasm.obj \
-+
-+$(TESTS_CHKASM_BLD)/%.o: $(TESTS_CHKASM)/%.c
-+      $(CC_CC) $(BLD_INCL) -o $@ -c $<
-+$(CHKASM_BIT8)/%.o: $(TESTS_CHKASM)/%.c
-+      $(CC_CC) $(BLD_INCL) -DBITDEPTH=8 -o $@ -c $<
-+$(CHKASM_BIT16)/%.o: $(TESTS_CHKASM)/%.c
-+      $(CC_CC) $(BLD_INCL) -DBITDEPTH=16 -o $@ -c $<
-+$(TESTS_CHKASM_BLD)/x86/%.obj: $(TESTS_CHKASM)/x86/%.asm
-+      @$(NASM) -f $(ASM_ARCH) \
-+              -I src/ -I $(BUILD)/ -MQ $@ -MF [email protected] \
-+              $< -o $@
-+
-+CHECKASM=$(TESTS_BLD)/checkasm/checkasm
-+$(CHECKASM): $(TESTS_CHKASM_OBJS) $(STATIC_LIB)
-+      $(CC_CC) -pthread -o $@ $(TESTS_CHKASM_OBJS) $(STATIC_LIB) -lm
-+
-+TESTS_FUZZER=tests/libfuzzer
-+TESTS_FUZZER_BLD=$(TESTS_BLD)/libfuzzer
-+TESTS_FUZZER_OBJS= \
-+      $(TESTS_FUZZER_BLD)/main.o \
-+      $(TESTS_FUZZER_BLD)/dav1d_fuzzer.o \
-+
-+$(TESTS_FUZZER_BLD)/%.o: $(TESTS_FUZZER)/%.c
-+      $(CC_CC) $(BLD_INCL) -o $@ -c $<
-+
-+DAV1D_FUZZER=$(TESTS_BLD)/dav1d_fuzzer
-+$(DAV1D_FUZZER): $(TESTS_FUZZER_OBJS) $(STATIC_LIB)
-+      $(CC_CC) -pthread -o $@ $(TESTS_FUZZER_OBJS) $(STATIC_LIB)
-+
-+TESTS=$(CHECKASM) $(DAV1D_FUZZER)
-+.PHONY:       tests
-+tests:        $(TESTS)
-+
-+$(OBJDIR):
-+      mkdir -p $@/include/dav1d \
-+              $(BUILD)/src $(BUILD)/include \
-+              $(ENTRY_BLD) $(NASM_BLD) \
-+              $(SRC_BLD)/x86 $(BIT8_BLD)/x86 $(BIT16_BLD)/x86 \
-+              $(TOOLS_BLD) $(TOOLS_BLD)/input $(TOOLS_BLD)/output \
-+              $(TESTS_CHKASM_BLD)/bit8 $(TESTS_CHKASM_BLD)/bit16 \
-+              $(TESTS_CHKASM_BLD)/x86 $(TESTS_FUZZER_BLD) \
-+
-+clean:
-+      rm -rf $(BUILD)
-+
-+install:
-+      mkdir -p $(DESTDIR)$(LIBDIR)
-+      cp -a $(STATIC_LIB) $(DESTDIR)$(LIBDIR)
-+      cp -a $(SHARED_LIB) $(DESTDIR)$(LIBDIR)
-+      mkdir -p $(DESTDIR)$(INCDIR)
-+      cp -a include/dav1d $(DESTDIR)$(INCDIR)
-+      rm -f $(DESTDIR)$(INCDIR)/dav1d/meson.build
-+      rm -f $(DESTDIR)$(INCDIR)/dav1d/version.h.in
-+      cp -a $(BUILD)/include/dav1d/version.h $(DESTDIR)$(INCDIR)/version.h
-+
diff --git a/cinelerra-5.1/thirdparty/src/dav1d-0.7.1.tar.xz b/cinelerra-5.1/thirdparty/src/dav1d-0.7.1.tar.xz
deleted file mode 100644 (file)
index 04cf8d6..0000000
Binary files a/cinelerra-5.1/thirdparty/src/dav1d-0.7.1.tar.xz and /dev/null differ