Package: release.debian.org Severity: normal X-Debbugs-Cc: libde265@packages.debian.org, fancycode@debian.org Control: affects -1 + src:libde265 User: release.debian.org@packages.debian.org Usertags: unblock Please unblock package libde265 [ Reason ] The latest upstream fixes some decoding errors especially with high-bitrate images. It was uploaded to unstable shortly before the freeze and missed the automatic migration to testing. I totally forgot to add the unblock request earlier. [ Impact ] Users decoding affected files will see broken / incomplete images. [ Tests ] Decode various images manually. [ Risks ] Key package but low risk, only handling for some special cases was changed. [ Checklist ] [x] all changes are documented in the d/changelog [x] I reviewed all changes and I approve them [x] attach debdiff against the package in testing unblock libde265/1.0.16-1 Thanks, Joachim
diff -Nru libde265-1.0.15/acceleration-speed/acceleration-speed.cc libde265-1.0.16/acceleration-speed/acceleration-speed.cc --- libde265-1.0.15/acceleration-speed/acceleration-speed.cc 2021-01-24 20:57:54.000000000 +0100 +++ libde265-1.0.16/acceleration-speed/acceleration-speed.cc 1970-01-01 01:00:00.000000000 +0100 @@ -1,219 +0,0 @@ -/* - * H.265 video codec. - * Copyright (c) 2015 struktur AG, Dirk Farin <farin@struktur.de> - * - * This file is part of libde265. - * - * libde265 is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * libde265 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 General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with libde265. If not, see <http://www.gnu.org/licenses/>. - */ - -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - -#include <stdio.h> -#include <stdlib.h> -#include <unistd.h> -#include <getopt.h> - -#include <string> -#include <stack> -#include <memory> - -#include "libde265/image.h" -#include "libde265/fallback-dct.h" -#include "libde265/image-io.h" - -#include "acceleration-speed.h" - - -/* TODO: for more realistic input to IDCTs, we could save the real coefficients in - a decoder run and use this data as input. - */ - - -bool show_help=false; -bool do_check=false; -bool do_time=false; -bool do_eval=false; -int img_width=352; -int img_height=288; -int nframes=1000; -int repeat=10; -std::string function; -std::string input_file; - -static struct option long_options[] = { - {"help", no_argument, 0, 'H' }, - {"input", required_argument, 0, 'i' }, - {"width", required_argument, 0, 'w' }, - {"height", required_argument, 0, 'h' }, - {"nframes", required_argument, 0, 'n' }, - {"function",required_argument, 0, 'f' }, - {"check", no_argument, 0, 'c' }, - {"time", no_argument, 0, 't' }, - {"eval", no_argument, 0, 'e' }, - {"repeat", required_argument, 0, 'r' }, - {0, 0, 0, 0 } -}; - - - -DSPFunc* DSPFunc::first = NULL; - - -bool DSPFunc::runOnImage(std::shared_ptr<const de265_image> img, bool compareToReference) -{ - int w = img->get_width(0); - int h = img->get_height(0); - - int blkWidth = getBlkWidth(); - int blkHeight = getBlkHeight(); - - bool success = true; - - for (int y=0;y<=h-blkHeight;y+=blkHeight) - for (int x=0;x<=w-blkWidth;x+=blkWidth) { - runOnBlock(x,y); - - if (compareToReference) { - referenceImplementation()->runOnBlock(x,y); - success &= compareToReferenceImplementation(); - } - } - - return success; -} - - - -int main(int argc, char** argv) -{ - while (1) { - int option_index = 0; - - int c = getopt_long(argc, argv, "Hci:w:h:n:f:ter:", long_options, &option_index); - if (c == -1) - break; - - switch (c) { - case 'H': show_help=true; break; - case 'c': do_check=true; break; - case 'w': img_width =atoi(optarg); break; - case 'h': img_height=atoi(optarg); break; - case 'n': nframes=atoi(optarg); break; - case 'f': function=optarg; break; - case 'i': input_file=optarg; break; - case 't': do_time=true; break; - case 'e': do_eval=true; break; - case 'r': repeat=atoi(optarg); break; - } - } - - - if (show_help) { - fprintf(stderr, - "acceleration-speed SIMD DSP function testing tool\n" - "--------------------------------------------------\n" - " --help show help\n" - " -i, --input NAME input YUV file\n" - " -w, --width # input width (default: 352)\n" - " -h, --height # input height (default: 288)\n" - " -n, --nframes # number of frames to process (default: 1000)\n" - " -f, --function NAME which function to test (see below)\n" - " -r, --repeat # number of repetitions for each image (default: 10)\n" - " -c, --check compare function result against its reference code\n" - "\n" - "these functions are known:\n" - ); - - std::stack<const char*> funcnames; - - for (DSPFunc* func = DSPFunc::first; - func ; - func=func->next) { - funcnames.push(func->name()); - } - - while (!funcnames.empty()) { - fprintf(stderr, - " %s\n", funcnames.top()); - funcnames.pop(); - } - - return 0; - } - - - // --- find DSP function with the given name --- - - if (function.empty()) { - fprintf(stderr,"No function specified. Use option '--function'.\n"); - exit(10); - } - - DSPFunc* algo = NULL; - for (DSPFunc* f = DSPFunc::first; f ; f=f->next) { - if (strcasecmp(f->name(), function.c_str())==0) { - algo = f; - break; - } - } - - if (algo==NULL) { - fprintf(stderr,"Argument to '--function' invalid. No function with that name.\n"); - exit(10); - } - - if (do_check && !algo->referenceImplementation()) { - fprintf(stderr,"cannot check function result: no reference function defined for the selected function.\n"); - exit(10); - } - - - ImageSource_YUV image_source; - image_source.set_input_file(input_file.c_str(), img_width, img_height); - - int img_counter=0; - - bool eof = false; - for (int f=0; f<nframes ; f++) - { - std::shared_ptr<de265_image> image(image_source.get_image()); - if (!image) { - eof=true; - break; - } - - img_counter++; - - if (algo->referenceImplementation()) { - algo->referenceImplementation()->prepareNextImage(image); - } - - if (algo->prepareNextImage(image)) { - printf("run %d times on image %d\n",repeat,img_counter); - - for (int r=0;r<repeat;r++) { - bool success = algo->runOnImage(image, do_check); - if (!success) { - fprintf(stderr, "computation mismatch to reference implementation...\n"); - exit(10); - } - } - } - } - - return 0; -} diff -Nru libde265-1.0.15/acceleration-speed/acceleration-speed.h libde265-1.0.16/acceleration-speed/acceleration-speed.h --- libde265-1.0.15/acceleration-speed/acceleration-speed.h 2021-01-24 20:57:54.000000000 +0100 +++ libde265-1.0.16/acceleration-speed/acceleration-speed.h 1970-01-01 01:00:00.000000000 +0100 @@ -1,65 +0,0 @@ -/* - * H.265 video codec. - * Copyright (c) 2015 struktur AG, Dirk Farin <farin@struktur.de> - * - * This file is part of libde265. - * - * libde265 is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * libde265 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 General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with libde265. If not, see <http://www.gnu.org/licenses/>. - */ - -#ifndef ACCELERATION_SPEED_H -#define ACCELERATION_SPEED_H - -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - -#include <stdio.h> -#include <stdlib.h> -#include <unistd.h> -#include <getopt.h> - -#include <string> -#include <stack> -#include <memory> - -#include "libde265/image.h" -#include "libde265/image-io.h" - - -class DSPFunc -{ -public: - DSPFunc() { next = first; first = this; } - virtual ~DSPFunc() { } - - virtual const char* name() const = 0; - - virtual int getBlkWidth() const = 0; - virtual int getBlkHeight() const = 0; - - virtual void runOnBlock(int x,int y) = 0; - virtual DSPFunc* referenceImplementation() const { return NULL; } - - virtual bool prepareNextImage(std::shared_ptr<const de265_image>) = 0; - - bool runOnImage(std::shared_ptr<const de265_image> img, bool compareToReference); - virtual bool compareToReferenceImplementation() { return false; } - - static DSPFunc* first; - DSPFunc* next; -}; - - -#endif diff -Nru libde265-1.0.15/acceleration-speed/dct.cc libde265-1.0.16/acceleration-speed/dct.cc --- libde265-1.0.15/acceleration-speed/dct.cc 2021-01-24 20:57:54.000000000 +0100 +++ libde265-1.0.16/acceleration-speed/dct.cc 1970-01-01 01:00:00.000000000 +0100 @@ -1,144 +0,0 @@ -/* - * H.265 video codec. - * Copyright (c) 2015 struktur AG, Dirk Farin <farin@struktur.de> - * - * This file is part of libde265. - * - * libde265 is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * libde265 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 General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with libde265. If not, see <http://www.gnu.org/licenses/>. - */ - -#include "dct.h" - - -// --- FDCT --- - -void DSPFunc_FDCT_Base::dump(int x,int y) -{ - printf("-> "); - for (int yy=0;yy<blkSize;yy++) - for (int xx=0;xx<blkSize;xx++) - printf("%d ", *(residuals+x+xx+(y+yy)*stride)); - printf("\n"); - - printf(" "); - for (int x=0;x<blkSize*blkSize;x++) - printf("%d ", coeffs[x]); - printf("\n"); - - int32_t out[32*32]; - transform_idct_8x8_fallback(out, coeffs, 20-8, 15); - - printf(" "); - for (int x=0;x<blkSize*blkSize;x++) - printf("%d ", out[x]); - printf("\n"); -} - - -bool DSPFunc_FDCT_Base::compareToReferenceImplementation() -{ - DSPFunc_FDCT_Base* refImpl = dynamic_cast<DSPFunc_FDCT_Base*>(referenceImplementation()); - - for (int i=0;i<blkSize*blkSize;i++) - if (coeffs[i] != refImpl->coeffs[i]) - return false; - - return true; -} - - -bool DSPFunc_FDCT_Base::prepareNextImage(std::shared_ptr<const de265_image> img) -{ - if (!curr_image) { - curr_image = img; - return false; - } - - prev_image = curr_image; - curr_image = img; - - int w = curr_image->get_width(0); - int h = curr_image->get_height(0); - - if (residuals==NULL) { - int align=16; - stride = (w+align-1)/align*align; - residuals = new int16_t[stride*h]; - } - - int cstride = curr_image->get_luma_stride(); - int pstride = prev_image->get_luma_stride(); - const uint8_t* curr = curr_image->get_image_plane_at_pos(0,0,0); - const uint8_t* prev = prev_image->get_image_plane_at_pos(0,0,0); - - for (int y=0;y<h;y++) - for (int x=0;x<w;x++) { - residuals[y*stride+x] = curr[y*cstride+x] - prev[y*pstride+x]; - } - - return true; -} - - -// --- IDCT --- - -bool DSPFunc_IDCT_Base::compareToReferenceImplementation() -{ - DSPFunc_IDCT_Base* refImpl = dynamic_cast<DSPFunc_IDCT_Base*>(referenceImplementation()); - - for (int i=0;i<blkSize*blkSize;i++) - if (out[i] != refImpl->out[i]) - return false; - - return true; -} - - -bool DSPFunc_IDCT_Base::prepareNextImage(std::shared_ptr<const de265_image> img) -{ - // --- generate fake coefficients --- - // difference between two frames - - if (!curr_image) { - curr_image = img; - return false; - } - - prev_image = curr_image; - curr_image = img; - - int w = curr_image->get_width(0); - int h = curr_image->get_height(0); - - int align = blkSize; - width = (w+align-1) / align * align; - - blksPerRow = w/blkSize; - - if (coeffs==NULL) { - coeffs = new int16_t[width*h]; - } - - int cstride = curr_image->get_luma_stride(); - int pstride = prev_image->get_luma_stride(); - const uint8_t* curr = curr_image->get_image_plane_at_pos(0,0,0); - const uint8_t* prev = prev_image->get_image_plane_at_pos(0,0,0); - - for (int y=0;y<h;y++) - for (int x=0;x<w;x++) { - coeffs[y*w+x] = curr[y*cstride+x] - prev[y*pstride+x]; - } - - return true; -} diff -Nru libde265-1.0.15/acceleration-speed/dct.h libde265-1.0.16/acceleration-speed/dct.h --- libde265-1.0.15/acceleration-speed/dct.h 2021-01-24 20:57:54.000000000 +0100 +++ libde265-1.0.16/acceleration-speed/dct.h 1970-01-01 01:00:00.000000000 +0100 @@ -1,111 +0,0 @@ -/* - * H.265 video codec. - * Copyright (c) 2015 struktur AG, Dirk Farin <farin@struktur.de> - * - * This file is part of libde265. - * - * libde265 is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * libde265 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 General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with libde265. If not, see <http://www.gnu.org/licenses/>. - */ - -#ifndef ACCELERATION_SPEED_DCT_H -#define ACCELERATION_SPEED_DCT_H - -#include "acceleration-speed.h" -#include "libde265/fallback-dct.h" - - -class DSPFunc_FDCT_Base : public DSPFunc -{ -public: - DSPFunc_FDCT_Base(int size) { - residuals=NULL; - blkSize=size; - coeffs = new int16_t[size*size]; - } - - virtual const char* name() const { return "FDCT-Base"; } - - virtual int getBlkWidth() const { return blkSize; } - virtual int getBlkHeight() const { return blkSize; } - - virtual void runOnBlock(int x,int y) = 0; - - void dump(int x,int y); - - virtual DSPFunc* referenceImplementation() const { return NULL; } - - bool compareToReferenceImplementation(); - virtual bool prepareNextImage(std::shared_ptr<const de265_image> img); - -private: - std::shared_ptr<const de265_image> prev_image; - std::shared_ptr<const de265_image> curr_image; - -protected: - int blkSize; - - int16_t* residuals; - int stride; - int16_t* coeffs; -}; - - - - - -class DSPFunc_IDCT_Base : public DSPFunc -{ -public: - DSPFunc_IDCT_Base(int size) { - prev_image=NULL; curr_image=NULL; coeffs=NULL; blkSize=size; - out = new uint8_t[size*size]; // allocate it to ensure alignment - } - - virtual const char* name() const { return "IDCT-Base"; } - - virtual int getBlkWidth() const { return blkSize; } - virtual int getBlkHeight() const { return blkSize; } - - virtual void runOnBlock(int x,int y) = 0; - - virtual DSPFunc* referenceImplementation() const { return NULL; } - - virtual bool compareToReferenceImplementation(); - virtual bool prepareNextImage(std::shared_ptr<const de265_image> img); - - inline int16_t* xy2coeff(int x,int y) const { - // note: x+y*width does not make any sense, but gives us some random data - - //int xb = x/blkSize; - //int yb = y/blkSize; - int offset = (x+y*blksPerRow)*blkSize; //(xb+yb*blksPerRow)*blkSize*blkSize; - //printf("%d %d -> %d %p\n", x,y, offset, coeffs+offset); - return coeffs + offset; - } - -private: - std::shared_ptr<const de265_image> prev_image; - std::shared_ptr<const de265_image> curr_image; - -protected: - int blkSize; - - int16_t* coeffs; - int width; - int blksPerRow; - uint8_t* out; // [32*32]; -}; - - -#endif diff -Nru libde265-1.0.15/acceleration-speed/dct-scalar.cc libde265-1.0.16/acceleration-speed/dct-scalar.cc --- libde265-1.0.15/acceleration-speed/dct-scalar.cc 2021-01-24 20:57:54.000000000 +0100 +++ libde265-1.0.16/acceleration-speed/dct-scalar.cc 1970-01-01 01:00:00.000000000 +0100 @@ -1,33 +0,0 @@ -/* - * H.265 video codec. - * Copyright (c) 2015 struktur AG, Dirk Farin <farin@struktur.de> - * - * This file is part of libde265. - * - * libde265 is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * libde265 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 General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with libde265. If not, see <http://www.gnu.org/licenses/>. - */ - -#include "dct-scalar.h" - - -DSPFunc_FDCT_Scalar_4x4 fdct_scalar_4x4; -DSPFunc_FDCT_Scalar_8x8 fdct_scalar_8x8; -DSPFunc_FDCT_Scalar_16x16 fdct_scalar_16x16; -DSPFunc_FDCT_Scalar_32x32 fdct_scalar_32x32; - - -DSPFunc_IDCT_Scalar_4x4 idct_scalar_4x4; -DSPFunc_IDCT_Scalar_8x8 idct_scalar_8x8; -DSPFunc_IDCT_Scalar_16x16 idct_scalar_16x16; -DSPFunc_IDCT_Scalar_32x32 idct_scalar_32x32; diff -Nru libde265-1.0.15/acceleration-speed/dct-scalar.h libde265-1.0.16/acceleration-speed/dct-scalar.h --- libde265-1.0.15/acceleration-speed/dct-scalar.h 2021-01-24 20:57:54.000000000 +0100 +++ libde265-1.0.16/acceleration-speed/dct-scalar.h 1970-01-01 01:00:00.000000000 +0100 @@ -1,158 +0,0 @@ -/* - * H.265 video codec. - * Copyright (c) 2015 struktur AG, Dirk Farin <farin@struktur.de> - * - * This file is part of libde265. - * - * libde265 is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * libde265 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 General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with libde265. If not, see <http://www.gnu.org/licenses/>. - */ - -#ifndef ACCELERATION_SPEED_DCT_SCALAR_H -#define ACCELERATION_SPEED_DCT_SCALAR_H - -#include "dct.h" - -class DSPFunc_FDCT_Scalar_4x4 : public DSPFunc_FDCT_Base -{ -public: - DSPFunc_FDCT_Scalar_4x4() : DSPFunc_FDCT_Base(4) { } - - virtual const char* name() const { return "FDCT-Scalar-4x4"; } - - virtual void runOnBlock(int x,int y) { - bool D = false; - - fdct_4x4_8_fallback(coeffs, residuals+x+y*stride, stride); - - if (D) { dump(x,y); } - } -}; - - -class DSPFunc_FDCT_Scalar_8x8 : public DSPFunc_FDCT_Base -{ -public: - DSPFunc_FDCT_Scalar_8x8() : DSPFunc_FDCT_Base(8) { } - - virtual const char* name() const { return "FDCT-Scalar-8x8"; } - - virtual void runOnBlock(int x,int y) { - bool D = false; - - fdct_8x8_8_fallback(coeffs, residuals+x+y*stride, stride); - - if (D) { dump(x,y); } - } -}; - - -class DSPFunc_FDCT_Scalar_16x16 : public DSPFunc_FDCT_Base -{ -public: - DSPFunc_FDCT_Scalar_16x16() : DSPFunc_FDCT_Base(16) { } - - virtual const char* name() const { return "FDCT-Scalar-16x16"; } - - virtual void runOnBlock(int x,int y) { - bool D = false; - - fdct_16x16_8_fallback(coeffs, residuals+x+y*stride, stride); - - if (D) { dump(x,y); } - } -}; - -class DSPFunc_FDCT_Scalar_32x32 : public DSPFunc_FDCT_Base -{ -public: - DSPFunc_FDCT_Scalar_32x32() : DSPFunc_FDCT_Base(32) { } - - virtual const char* name() const { return "FDCT-Scalar-32x32"; } - - virtual void runOnBlock(int x,int y) { - bool D = false; - - fdct_32x32_8_fallback(coeffs, residuals+x+y*stride, stride); - - if (D) { dump(x,y); } - } -}; - - - -class DSPFunc_IDCT_Scalar_4x4 : public DSPFunc_IDCT_Base -{ -public: - DSPFunc_IDCT_Scalar_4x4() : DSPFunc_IDCT_Base(4) { } - - virtual const char* name() const { return "IDCT-Scalar-4x4"; } - - virtual void runOnBlock(int x,int y) { - memset(out,0,4*4); - transform_4x4_add_8_fallback(out, xy2coeff(x,y), 4); - } -}; - -class DSPFunc_IDCT_Scalar_8x8 : public DSPFunc_IDCT_Base -{ -public: - DSPFunc_IDCT_Scalar_8x8() : DSPFunc_IDCT_Base(8) { } - - virtual const char* name() const { return "IDCT-Scalar-8x8"; } - - virtual void runOnBlock(int x,int y) { - memset(out,0,8*8); - transform_8x8_add_8_fallback(out, xy2coeff(x,y), 8); - } -}; - -class DSPFunc_IDCT_Scalar_16x16 : public DSPFunc_IDCT_Base -{ -public: - DSPFunc_IDCT_Scalar_16x16() : DSPFunc_IDCT_Base(16) { } - - virtual const char* name() const { return "IDCT-Scalar-16x16"; } - - virtual void runOnBlock(int x,int y) { - memset(out,0,16*16); - transform_16x16_add_8_fallback(out, xy2coeff(x,y), 16); - } -}; - -class DSPFunc_IDCT_Scalar_32x32 : public DSPFunc_IDCT_Base -{ -public: - DSPFunc_IDCT_Scalar_32x32() : DSPFunc_IDCT_Base(32) { } - - virtual const char* name() const { return "IDCT-Scalar-32x32"; } - - virtual void runOnBlock(int x,int y) { - memset(out,0,32*32); - transform_32x32_add_8_fallback(out, xy2coeff(x,y), 32); - } -}; - - -extern DSPFunc_FDCT_Scalar_4x4 fdct_scalar_4x4; -extern DSPFunc_FDCT_Scalar_8x8 fdct_scalar_8x8; -extern DSPFunc_FDCT_Scalar_16x16 fdct_scalar_16x16; -extern DSPFunc_FDCT_Scalar_32x32 fdct_scalar_32x32; - - -extern DSPFunc_IDCT_Scalar_4x4 idct_scalar_4x4; -extern DSPFunc_IDCT_Scalar_8x8 idct_scalar_8x8; -extern DSPFunc_IDCT_Scalar_16x16 idct_scalar_16x16; -extern DSPFunc_IDCT_Scalar_32x32 idct_scalar_32x32; - -#endif diff -Nru libde265-1.0.15/acceleration-speed/dct-sse.cc libde265-1.0.16/acceleration-speed/dct-sse.cc --- libde265-1.0.15/acceleration-speed/dct-sse.cc 2021-01-24 20:57:54.000000000 +0100 +++ libde265-1.0.16/acceleration-speed/dct-sse.cc 1970-01-01 01:00:00.000000000 +0100 @@ -1,177 +0,0 @@ -/* - * H.265 video codec. - * Copyright (c) 2015 struktur AG, Dirk Farin <farin@struktur.de> - * - * This file is part of libde265. - * - * libde265 is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * libde265 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 General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with libde265. If not, see <http://www.gnu.org/licenses/>. - */ - - -#include "libde265/x86/sse-dct.h" -#include "dct.h" -#include "dct-scalar.h" - - -class DSPFunc_IDCT_SSE_4x4 : public DSPFunc_IDCT_Base -{ -public: - DSPFunc_IDCT_SSE_4x4() : DSPFunc_IDCT_Base(4) { } - - virtual const char* name() const { return "IDCT-SSE-4x4"; } - - virtual DSPFunc* referenceImplementation() const { return &idct_scalar_4x4; } - - virtual void runOnBlock(int x,int y) { - memset(out,0,4*4); - ff_hevc_transform_4x4_add_8_sse4(out, xy2coeff(x,y), 4); - } -}; - -class DSPFunc_IDCT_SSE_8x8 : public DSPFunc_IDCT_Base -{ -public: - DSPFunc_IDCT_SSE_8x8() : DSPFunc_IDCT_Base(8) { } - - virtual const char* name() const { return "IDCT-SSE-8x8"; } - - virtual DSPFunc* referenceImplementation() const { return &idct_scalar_8x8; } - - virtual void runOnBlock(int x,int y) { - memset(out,0,8*8); - ff_hevc_transform_8x8_add_8_sse4(out, xy2coeff(x,y), 8); - } -}; - -class DSPFunc_IDCT_SSE_16x16 : public DSPFunc_IDCT_Base -{ -public: - DSPFunc_IDCT_SSE_16x16() : DSPFunc_IDCT_Base(16) { } - - virtual const char* name() const { return "IDCT-SSE-16x16"; } - - virtual DSPFunc* referenceImplementation() const { return &idct_scalar_16x16; } - - virtual void runOnBlock(int x,int y) { - memset(out,0,16*16); - ff_hevc_transform_16x16_add_8_sse4(out, xy2coeff(x,y), 16); - } -}; - -class DSPFunc_IDCT_SSE_32x32 : public DSPFunc_IDCT_Base -{ -public: - DSPFunc_IDCT_SSE_32x32() : DSPFunc_IDCT_Base(32) { } - - virtual const char* name() const { return "IDCT-SSE-32x32"; } - - virtual DSPFunc* referenceImplementation() const { return &idct_scalar_32x32; } - - virtual void runOnBlock(int x,int y) { - memset(out,0,32*32); - ff_hevc_transform_32x32_add_8_sse4(out, xy2coeff(x,y), 32); - } -}; - -DSPFunc_IDCT_SSE_4x4 idct_sse_4x4; -DSPFunc_IDCT_SSE_8x8 idct_sse_8x8; -DSPFunc_IDCT_SSE_16x16 idct_sse_16x16; -DSPFunc_IDCT_SSE_32x32 idct_sse_32x32; - - - - - -class DSPFunc_FDCT_SSE_4x4 : public DSPFunc_FDCT_Base -{ -public: - DSPFunc_FDCT_SSE_4x4() : DSPFunc_FDCT_Base(4) { } - - virtual const char* name() const { return "FDCT-SSE-4x4-to-be-implemented"; } - - virtual DSPFunc* referenceImplementation() const { return &fdct_scalar_4x4; } - - virtual void runOnBlock(int x,int y) { - // <<< function to be implemented >>> - - // fdct_4x4_8_fallback(coeffs, residuals+x+y*stride, stride); - - bool D = false; - if (D) { dump(x,y); } - } -}; - - -class DSPFunc_FDCT_SSE_8x8 : public DSPFunc_FDCT_Base -{ -public: - DSPFunc_FDCT_SSE_8x8() : DSPFunc_FDCT_Base(8) { } - - virtual const char* name() const { return "FDCT-SSE-8x8-to-be-implemented"; } - - virtual DSPFunc* referenceImplementation() const { return &fdct_scalar_8x8; } - - virtual void runOnBlock(int x,int y) { - // <<< function to be implemented >>> - - // fdct_8x8_8_fallback(coeffs, residuals+x+y*stride, stride); - - bool D = false; - if (D) { dump(x,y); } - } -}; - - -class DSPFunc_FDCT_SSE_16x16 : public DSPFunc_FDCT_Base -{ -public: - DSPFunc_FDCT_SSE_16x16() : DSPFunc_FDCT_Base(16) { } - - virtual const char* name() const { return "FDCT-SSE-16x16-to-be-implemented"; } - - virtual DSPFunc* referenceImplementation() const { return &fdct_scalar_16x16; } - - virtual void runOnBlock(int x,int y) { - // <<< function to be implemented >>> - - // fdct_16x16_8_fallback(coeffs, residuals+x+y*stride, stride); - - bool D = false; - if (D) { dump(x,y); } - } -}; - -class DSPFunc_FDCT_SSE_32x32 : public DSPFunc_FDCT_Base -{ -public: - DSPFunc_FDCT_SSE_32x32() : DSPFunc_FDCT_Base(32) { } - - virtual const char* name() const { return "FDCT-SSE-32x32-to-be-implemented"; } - - virtual DSPFunc* referenceImplementation() const { return &fdct_scalar_32x32; } - - virtual void runOnBlock(int x,int y) { - // <<< function to be implemented >>> - - // fdct_32x32_8_fallback(coeffs, residuals+x+y*stride, stride); - - bool D = false; - if (D) { dump(x,y); } - } -}; - -DSPFunc_FDCT_SSE_4x4 fdct_sse_4x4; -DSPFunc_FDCT_SSE_8x8 fdct_sse_8x8; -DSPFunc_FDCT_SSE_16x16 fdct_sse_16x16; -DSPFunc_FDCT_SSE_32x32 fdct_sse_32x32; diff -Nru libde265-1.0.15/acceleration-speed/Makefile.am libde265-1.0.16/acceleration-speed/Makefile.am --- libde265-1.0.15/acceleration-speed/Makefile.am 2022-10-19 16:34:13.000000000 +0200 +++ libde265-1.0.16/acceleration-speed/Makefile.am 1970-01-01 01:00:00.000000000 +0100 @@ -1,17 +0,0 @@ - -bin_PROGRAMS = acceleration_speed - -AM_CPPFLAGS = -I$(top_srcdir)/libde265 -I$(top_srcdir) - -acceleration_speed_DEPENDENCIES = ../libde265/libde265.la -acceleration_speed_CXXFLAGS = -acceleration_speed_LDFLAGS = -acceleration_speed_LDADD = ../libde265/libde265.la -lstdc++ -acceleration_speed_SOURCES = \ - acceleration-speed.cc acceleration-speed.h \ - dct.cc dct.h \ - dct-scalar.cc dct-scalar.h - -if ENABLE_SSE_OPT - acceleration_speed_SOURCES += dct-sse.cc -endif diff -Nru libde265-1.0.15/acceleration-speed/Makefile.in libde265-1.0.16/acceleration-speed/Makefile.in --- libde265-1.0.15/acceleration-speed/Makefile.in 2023-12-20 11:44:08.000000000 +0100 +++ libde265-1.0.16/acceleration-speed/Makefile.in 1970-01-01 01:00:00.000000000 +0100 @@ -1,775 +0,0 @@ -# Makefile.in generated by automake 1.16.5 from Makefile.am. -# @configure_input@ - -# Copyright (C) 1994-2021 Free Software Foundation, Inc. - -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ - -VPATH = @srcdir@ -am__is_gnu_make = { \ - if test -z '$(MAKELEVEL)'; then \ - false; \ - elif test -n '$(MAKE_HOST)'; then \ - true; \ - elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ - true; \ - else \ - false; \ - fi; \ -} -am__make_running_with_option = \ - case $${target_option-} in \ - ?) ;; \ - *) echo "am__make_running_with_option: internal error: invalid" \ - "target option '$${target_option-}' specified" >&2; \ - exit 1;; \ - esac; \ - has_opt=no; \ - sane_makeflags=$$MAKEFLAGS; \ - if $(am__is_gnu_make); then \ - sane_makeflags=$$MFLAGS; \ - else \ - case $$MAKEFLAGS in \ - *\\[\ \ ]*) \ - bs=\\; \ - sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ - | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ - esac; \ - fi; \ - skip_next=no; \ - strip_trailopt () \ - { \ - flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ - }; \ - for flg in $$sane_makeflags; do \ - test $$skip_next = yes && { skip_next=no; continue; }; \ - case $$flg in \ - *=*|--*) continue;; \ - -*I) strip_trailopt 'I'; skip_next=yes;; \ - -*I?*) strip_trailopt 'I';; \ - -*O) strip_trailopt 'O'; skip_next=yes;; \ - -*O?*) strip_trailopt 'O';; \ - -*l) strip_trailopt 'l'; skip_next=yes;; \ - -*l?*) strip_trailopt 'l';; \ - -[dEDm]) skip_next=yes;; \ - -[JT]) skip_next=yes;; \ - esac; \ - case $$flg in \ - *$$target_option*) has_opt=yes; break;; \ - esac; \ - done; \ - test $$has_opt = yes -am__make_dryrun = (target_option=n; $(am__make_running_with_option)) -am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) -pkgdatadir = $(datadir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkglibexecdir = $(libexecdir)/@PACKAGE@ -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = @build@ -host_triplet = @host@ -target_triplet = @target@ -bin_PROGRAMS = acceleration_speed$(EXEEXT) -@ENABLE_SSE_OPT_TRUE@am__append_1 = dct-sse.cc -subdir = acceleration-speed -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/m4/ax_compare_version.m4 \ - $(top_srcdir)/m4/ax_cxx_compile_stdcxx_11.m4 \ - $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ - $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/m4/m4_ax_check_compile_flag.m4 \ - $(top_srcdir)/configure.ac -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) -mkinstalldirs = $(install_sh) -d -CONFIG_HEADER = $(top_builddir)/config.h -CONFIG_CLEAN_FILES = -CONFIG_CLEAN_VPATH_FILES = -am__installdirs = "$(DESTDIR)$(bindir)" -PROGRAMS = $(bin_PROGRAMS) -am__acceleration_speed_SOURCES_DIST = acceleration-speed.cc \ - acceleration-speed.h dct.cc dct.h dct-scalar.cc dct-scalar.h \ - dct-sse.cc -@ENABLE_SSE_OPT_TRUE@am__objects_1 = \ -@ENABLE_SSE_OPT_TRUE@ acceleration_speed-dct-sse.$(OBJEXT) -am_acceleration_speed_OBJECTS = \ - acceleration_speed-acceleration-speed.$(OBJEXT) \ - acceleration_speed-dct.$(OBJEXT) \ - acceleration_speed-dct-scalar.$(OBJEXT) $(am__objects_1) -acceleration_speed_OBJECTS = $(am_acceleration_speed_OBJECTS) -AM_V_lt = $(am__v_lt_@AM_V@) -am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) -am__v_lt_0 = --silent -am__v_lt_1 = -acceleration_speed_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX \ - $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CXXLD) \ - $(acceleration_speed_CXXFLAGS) $(CXXFLAGS) \ - $(acceleration_speed_LDFLAGS) $(LDFLAGS) -o $@ -AM_V_P = $(am__v_P_@AM_V@) -am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) -am__v_P_0 = false -am__v_P_1 = : -AM_V_GEN = $(am__v_GEN_@AM_V@) -am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) -am__v_GEN_0 = @echo " GEN " $@; -am__v_GEN_1 = -AM_V_at = $(am__v_at_@AM_V@) -am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) -am__v_at_0 = @ -am__v_at_1 = -DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) -depcomp = $(SHELL) $(top_srcdir)/depcomp -am__maybe_remake_depfiles = depfiles -am__depfiles_remade = \ - ./$(DEPDIR)/acceleration_speed-acceleration-speed.Po \ - ./$(DEPDIR)/acceleration_speed-dct-scalar.Po \ - ./$(DEPDIR)/acceleration_speed-dct-sse.Po \ - ./$(DEPDIR)/acceleration_speed-dct.Po -am__mv = mv -f -CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ - $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -LTCXXCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_CXXFLAGS) $(CXXFLAGS) -AM_V_CXX = $(am__v_CXX_@AM_V@) -am__v_CXX_ = $(am__v_CXX_@AM_DEFAULT_V@) -am__v_CXX_0 = @echo " CXX " $@; -am__v_CXX_1 = -CXXLD = $(CXX) -CXXLINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \ - $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ -AM_V_CXXLD = $(am__v_CXXLD_@AM_V@) -am__v_CXXLD_ = $(am__v_CXXLD_@AM_DEFAULT_V@) -am__v_CXXLD_0 = @echo " CXXLD " $@; -am__v_CXXLD_1 = -COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ - $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_CFLAGS) $(CFLAGS) -AM_V_CC = $(am__v_CC_@AM_V@) -am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@) -am__v_CC_0 = @echo " CC " $@; -am__v_CC_1 = -CCLD = $(CC) -LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ - $(AM_LDFLAGS) $(LDFLAGS) -o $@ -AM_V_CCLD = $(am__v_CCLD_@AM_V@) -am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) -am__v_CCLD_0 = @echo " CCLD " $@; -am__v_CCLD_1 = -SOURCES = $(acceleration_speed_SOURCES) -DIST_SOURCES = $(am__acceleration_speed_SOURCES_DIST) -am__can_run_installinfo = \ - case $$AM_UPDATE_INFO_DIR in \ - n|no|NO) false;; \ - *) (install-info --version) >/dev/null 2>&1;; \ - esac -am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) -# Read a list of newline-separated strings from the standard input, -# and print each of them once, without duplicates. Input order is -# *not* preserved. -am__uniquify_input = $(AWK) '\ - BEGIN { nonempty = 0; } \ - { items[$$0] = 1; nonempty = 1; } \ - END { if (nonempty) { for (i in items) print i; }; } \ -' -# Make sure the list of sources is unique. This is necessary because, -# e.g., the same source file might be shared among _SOURCES variables -# for different programs/libraries. -am__define_uniq_tagged_files = \ - list='$(am__tagged_files)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | $(am__uniquify_input)` -am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp -DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = @ACLOCAL@ -ALLOCA = @ALLOCA@ -AMTAR = @AMTAR@ -AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ -AR = @AR@ -AUTOCONF = @AUTOCONF@ -AUTOHEADER = @AUTOHEADER@ -AUTOMAKE = @AUTOMAKE@ -AWK = @AWK@ -CC = @CC@ -CCAS = @CCAS@ -CCASDEPMODE = @CCASDEPMODE@ -CCASFLAGS = @CCASFLAGS@ -CCDEPMODE = @CCDEPMODE@ -CFLAGS = @CFLAGS@ -CPPFLAGS = @CPPFLAGS@ -CSCOPE = @CSCOPE@ -CTAGS = @CTAGS@ -CXX = @CXX@ -CXXCPP = @CXXCPP@ -CXXDEPMODE = @CXXDEPMODE@ -CXXFLAGS = @CXXFLAGS@ -CYGPATH_W = @CYGPATH_W@ -DEFS = @DEFS@ -DEPDIR = @DEPDIR@ -DLLTOOL = @DLLTOOL@ -DSYMUTIL = @DSYMUTIL@ -DUMPBIN = @DUMPBIN@ -ECHO_C = @ECHO_C@ -ECHO_N = @ECHO_N@ -ECHO_T = @ECHO_T@ -EGREP = @EGREP@ -ETAGS = @ETAGS@ -EXEEXT = @EXEEXT@ -FGREP = @FGREP@ -GREP = @GREP@ -HAVE_CXX11 = @HAVE_CXX11@ -INSTALL = @INSTALL@ -INSTALL_DATA = @INSTALL_DATA@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_SCRIPT = @INSTALL_SCRIPT@ -INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ -LD = @LD@ -LDFLAGS = @LDFLAGS@ -LIBDE265_AGE = @LIBDE265_AGE@ -LIBDE265_CURRENT = @LIBDE265_CURRENT@ -LIBDE265_REVISION = @LIBDE265_REVISION@ -LIBOBJS = @LIBOBJS@ -LIBS = @LIBS@ -LIBTOOL = @LIBTOOL@ -LIPO = @LIPO@ -LN_S = @LN_S@ -LTLIBOBJS = @LTLIBOBJS@ -LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ -MAKEINFO = @MAKEINFO@ -MANIFEST_TOOL = @MANIFEST_TOOL@ -MKDIR_P = @MKDIR_P@ -NM = @NM@ -NMEDIT = @NMEDIT@ -NUMERIC_VERSION = @NUMERIC_VERSION@ -OBJDUMP = @OBJDUMP@ -OBJEXT = @OBJEXT@ -OTOOL = @OTOOL@ -OTOOL64 = @OTOOL64@ -PACKAGE = @PACKAGE@ -PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ -PACKAGE_NAME = @PACKAGE_NAME@ -PACKAGE_STRING = @PACKAGE_STRING@ -PACKAGE_TARNAME = @PACKAGE_TARNAME@ -PACKAGE_URL = @PACKAGE_URL@ -PACKAGE_VERSION = @PACKAGE_VERSION@ -PATH_SEPARATOR = @PATH_SEPARATOR@ -PKG_CONFIG = @PKG_CONFIG@ -PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ -PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ -QTCHOOSER = @QTCHOOSER@ -QTMOC = @QTMOC@ -QT_CFLAGS = @QT_CFLAGS@ -QT_LIBS = @QT_LIBS@ -RANLIB = @RANLIB@ -SDL_CFLAGS = @SDL_CFLAGS@ -SDL_LIBS = @SDL_LIBS@ -SED = @SED@ -SET_MAKE = @SET_MAKE@ -SHELL = @SHELL@ -STRIP = @STRIP@ -SWSCALE_CFLAGS = @SWSCALE_CFLAGS@ -SWSCALE_LIBS = @SWSCALE_LIBS@ -VERSION = @VERSION@ -VIDEOGFX_CFLAGS = @VIDEOGFX_CFLAGS@ -VIDEOGFX_LIBS = @VIDEOGFX_LIBS@ -abs_builddir = @abs_builddir@ -abs_srcdir = @abs_srcdir@ -abs_top_builddir = @abs_top_builddir@ -abs_top_srcdir = @abs_top_srcdir@ -ac_ct_AR = @ac_ct_AR@ -ac_ct_CC = @ac_ct_CC@ -ac_ct_CXX = @ac_ct_CXX@ -ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ -am__include = @am__include@ -am__leading_dot = @am__leading_dot@ -am__quote = @am__quote@ -am__tar = @am__tar@ -am__untar = @am__untar@ -bindir = @bindir@ -build = @build@ -build_alias = @build_alias@ -build_cpu = @build_cpu@ -build_os = @build_os@ -build_vendor = @build_vendor@ -builddir = @builddir@ -datadir = @datadir@ -datarootdir = @datarootdir@ -docdir = @docdir@ -dvidir = @dvidir@ -exec_prefix = @exec_prefix@ -host = @host@ -host_alias = @host_alias@ -host_cpu = @host_cpu@ -host_os = @host_os@ -host_vendor = @host_vendor@ -htmldir = @htmldir@ -includedir = @includedir@ -infodir = @infodir@ -install_sh = @install_sh@ -libdir = @libdir@ -libexecdir = @libexecdir@ -localedir = @localedir@ -localstatedir = @localstatedir@ -mandir = @mandir@ -mkdir_p = @mkdir_p@ -oldincludedir = @oldincludedir@ -pdfdir = @pdfdir@ -prefix = @prefix@ -program_transform_name = @program_transform_name@ -psdir = @psdir@ -runstatedir = @runstatedir@ -sbindir = @sbindir@ -sharedstatedir = @sharedstatedir@ -srcdir = @srcdir@ -sysconfdir = @sysconfdir@ -target = @target@ -target_alias = @target_alias@ -target_cpu = @target_cpu@ -target_os = @target_os@ -target_vendor = @target_vendor@ -top_build_prefix = @top_build_prefix@ -top_builddir = @top_builddir@ -top_srcdir = @top_srcdir@ -AM_CPPFLAGS = -I$(top_srcdir)/libde265 -I$(top_srcdir) -acceleration_speed_DEPENDENCIES = ../libde265/libde265.la -acceleration_speed_CXXFLAGS = -acceleration_speed_LDFLAGS = -acceleration_speed_LDADD = ../libde265/libde265.la -lstdc++ -acceleration_speed_SOURCES = acceleration-speed.cc \ - acceleration-speed.h dct.cc dct.h dct-scalar.cc dct-scalar.h \ - $(am__append_1) -all: all-am - -.SUFFIXES: -.SUFFIXES: .cc .lo .o .obj -$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) - @for dep in $?; do \ - case '$(am__configure_deps)' in \ - *$$dep*) \ - ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ - && { if test -f $@; then exit 0; else break; fi; }; \ - exit 1;; \ - esac; \ - done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu acceleration-speed/Makefile'; \ - $(am__cd) $(top_srcdir) && \ - $(AUTOMAKE) --gnu acceleration-speed/Makefile -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status - @case '$?' in \ - *config.status*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ - *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ - esac; - -$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh - -$(top_srcdir)/configure: $(am__configure_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(ACLOCAL_M4): $(am__aclocal_m4_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(am__aclocal_m4_deps): -install-binPROGRAMS: $(bin_PROGRAMS) - @$(NORMAL_INSTALL) - @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \ - fi; \ - for p in $$list; do echo "$$p $$p"; done | \ - sed 's/$(EXEEXT)$$//' | \ - while read p p1; do if test -f $$p \ - || test -f $$p1 \ - ; then echo "$$p"; echo "$$p"; else :; fi; \ - done | \ - sed -e 'p;s,.*/,,;n;h' \ - -e 's|.*|.|' \ - -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \ - sed 'N;N;N;s,\n, ,g' | \ - $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \ - { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ - if ($$2 == $$4) files[d] = files[d] " " $$1; \ - else { print "f", $$3 "/" $$4, $$1; } } \ - END { for (d in files) print "f", d, files[d] }' | \ - while read type dir files; do \ - if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ - test -z "$$files" || { \ - echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(bindir)$$dir'"; \ - $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \ - } \ - ; done - -uninstall-binPROGRAMS: - @$(NORMAL_UNINSTALL) - @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ - files=`for p in $$list; do echo "$$p"; done | \ - sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ - -e 's/$$/$(EXEEXT)/' \ - `; \ - test -n "$$list" || exit 0; \ - echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \ - cd "$(DESTDIR)$(bindir)" && rm -f $$files - -clean-binPROGRAMS: - @list='$(bin_PROGRAMS)'; test -n "$$list" || exit 0; \ - echo " rm -f" $$list; \ - rm -f $$list || exit $$?; \ - test -n "$(EXEEXT)" || exit 0; \ - list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ - echo " rm -f" $$list; \ - rm -f $$list - -acceleration_speed$(EXEEXT): $(acceleration_speed_OBJECTS) $(acceleration_speed_DEPENDENCIES) $(EXTRA_acceleration_speed_DEPENDENCIES) - @rm -f acceleration_speed$(EXEEXT) - $(AM_V_CXXLD)$(acceleration_speed_LINK) $(acceleration_speed_OBJECTS) $(acceleration_speed_LDADD) $(LIBS) - -mostlyclean-compile: - -rm -f *.$(OBJEXT) - -distclean-compile: - -rm -f *.tab.c - -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/acceleration_speed-acceleration-speed.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/acceleration_speed-dct-scalar.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/acceleration_speed-dct-sse.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/acceleration_speed-dct.Po@am__quote@ # am--include-marker - -$(am__depfiles_remade): - @$(MKDIR_P) $(@D) - @echo '# dummy' >$@-t && $(am__mv) $@-t $@ - -am--depfiles: $(am__depfiles_remade) - -.cc.o: -@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXXCOMPILE) -c -o $@ $< - -.cc.obj: -@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` -@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` - -.cc.lo: -@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(LTCXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LTCXXCOMPILE) -c -o $@ $< - -acceleration_speed-acceleration-speed.o: acceleration-speed.cc -@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(acceleration_speed_CXXFLAGS) $(CXXFLAGS) -MT acceleration_speed-acceleration-speed.o -MD -MP -MF $(DEPDIR)/acceleration_speed-acceleration-speed.Tpo -c -o acceleration_speed-acceleration-speed.o `test -f 'acceleration-speed.cc' || echo '$(srcdir)/'`acceleration-speed.cc -@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/acceleration_speed-acceleration-speed.Tpo $(DEPDIR)/acceleration_speed-acceleration-speed.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='acceleration-speed.cc' object='acceleration_speed-acceleration-speed.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(acceleration_speed_CXXFLAGS) $(CXXFLAGS) -c -o acceleration_speed-acceleration-speed.o `test -f 'acceleration-speed.cc' || echo '$(srcdir)/'`acceleration-speed.cc - -acceleration_speed-acceleration-speed.obj: acceleration-speed.cc -@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(acceleration_speed_CXXFLAGS) $(CXXFLAGS) -MT acceleration_speed-acceleration-speed.obj -MD -MP -MF $(DEPDIR)/acceleration_speed-acceleration-speed.Tpo -c -o acceleration_speed-acceleration-speed.obj `if test -f 'acceleration-speed.cc'; then $(CYGPATH_W) 'acceleration-speed.cc'; else $(CYGPATH_W) '$(srcdir)/acceleration-speed.cc'; fi` -@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/acceleration_speed-acceleration-speed.Tpo $(DEPDIR)/acceleration_speed-acceleration-speed.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='acceleration-speed.cc' object='acceleration_speed-acceleration-speed.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(acceleration_speed_CXXFLAGS) $(CXXFLAGS) -c -o acceleration_speed-acceleration-speed.obj `if test -f 'acceleration-speed.cc'; then $(CYGPATH_W) 'acceleration-speed.cc'; else $(CYGPATH_W) '$(srcdir)/acceleration-speed.cc'; fi` - -acceleration_speed-dct.o: dct.cc -@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(acceleration_speed_CXXFLAGS) $(CXXFLAGS) -MT acceleration_speed-dct.o -MD -MP -MF $(DEPDIR)/acceleration_speed-dct.Tpo -c -o acceleration_speed-dct.o `test -f 'dct.cc' || echo '$(srcdir)/'`dct.cc -@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/acceleration_speed-dct.Tpo $(DEPDIR)/acceleration_speed-dct.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='dct.cc' object='acceleration_speed-dct.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(acceleration_speed_CXXFLAGS) $(CXXFLAGS) -c -o acceleration_speed-dct.o `test -f 'dct.cc' || echo '$(srcdir)/'`dct.cc - -acceleration_speed-dct.obj: dct.cc -@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(acceleration_speed_CXXFLAGS) $(CXXFLAGS) -MT acceleration_speed-dct.obj -MD -MP -MF $(DEPDIR)/acceleration_speed-dct.Tpo -c -o acceleration_speed-dct.obj `if test -f 'dct.cc'; then $(CYGPATH_W) 'dct.cc'; else $(CYGPATH_W) '$(srcdir)/dct.cc'; fi` -@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/acceleration_speed-dct.Tpo $(DEPDIR)/acceleration_speed-dct.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='dct.cc' object='acceleration_speed-dct.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(acceleration_speed_CXXFLAGS) $(CXXFLAGS) -c -o acceleration_speed-dct.obj `if test -f 'dct.cc'; then $(CYGPATH_W) 'dct.cc'; else $(CYGPATH_W) '$(srcdir)/dct.cc'; fi` - -acceleration_speed-dct-scalar.o: dct-scalar.cc -@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(acceleration_speed_CXXFLAGS) $(CXXFLAGS) -MT acceleration_speed-dct-scalar.o -MD -MP -MF $(DEPDIR)/acceleration_speed-dct-scalar.Tpo -c -o acceleration_speed-dct-scalar.o `test -f 'dct-scalar.cc' || echo '$(srcdir)/'`dct-scalar.cc -@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/acceleration_speed-dct-scalar.Tpo $(DEPDIR)/acceleration_speed-dct-scalar.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='dct-scalar.cc' object='acceleration_speed-dct-scalar.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(acceleration_speed_CXXFLAGS) $(CXXFLAGS) -c -o acceleration_speed-dct-scalar.o `test -f 'dct-scalar.cc' || echo '$(srcdir)/'`dct-scalar.cc - -acceleration_speed-dct-scalar.obj: dct-scalar.cc -@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(acceleration_speed_CXXFLAGS) $(CXXFLAGS) -MT acceleration_speed-dct-scalar.obj -MD -MP -MF $(DEPDIR)/acceleration_speed-dct-scalar.Tpo -c -o acceleration_speed-dct-scalar.obj `if test -f 'dct-scalar.cc'; then $(CYGPATH_W) 'dct-scalar.cc'; else $(CYGPATH_W) '$(srcdir)/dct-scalar.cc'; fi` -@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/acceleration_speed-dct-scalar.Tpo $(DEPDIR)/acceleration_speed-dct-scalar.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='dct-scalar.cc' object='acceleration_speed-dct-scalar.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(acceleration_speed_CXXFLAGS) $(CXXFLAGS) -c -o acceleration_speed-dct-scalar.obj `if test -f 'dct-scalar.cc'; then $(CYGPATH_W) 'dct-scalar.cc'; else $(CYGPATH_W) '$(srcdir)/dct-scalar.cc'; fi` - -acceleration_speed-dct-sse.o: dct-sse.cc -@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(acceleration_speed_CXXFLAGS) $(CXXFLAGS) -MT acceleration_speed-dct-sse.o -MD -MP -MF $(DEPDIR)/acceleration_speed-dct-sse.Tpo -c -o acceleration_speed-dct-sse.o `test -f 'dct-sse.cc' || echo '$(srcdir)/'`dct-sse.cc -@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/acceleration_speed-dct-sse.Tpo $(DEPDIR)/acceleration_speed-dct-sse.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='dct-sse.cc' object='acceleration_speed-dct-sse.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(acceleration_speed_CXXFLAGS) $(CXXFLAGS) -c -o acceleration_speed-dct-sse.o `test -f 'dct-sse.cc' || echo '$(srcdir)/'`dct-sse.cc - -acceleration_speed-dct-sse.obj: dct-sse.cc -@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(acceleration_speed_CXXFLAGS) $(CXXFLAGS) -MT acceleration_speed-dct-sse.obj -MD -MP -MF $(DEPDIR)/acceleration_speed-dct-sse.Tpo -c -o acceleration_speed-dct-sse.obj `if test -f 'dct-sse.cc'; then $(CYGPATH_W) 'dct-sse.cc'; else $(CYGPATH_W) '$(srcdir)/dct-sse.cc'; fi` -@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/acceleration_speed-dct-sse.Tpo $(DEPDIR)/acceleration_speed-dct-sse.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='dct-sse.cc' object='acceleration_speed-dct-sse.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(acceleration_speed_CXXFLAGS) $(CXXFLAGS) -c -o acceleration_speed-dct-sse.obj `if test -f 'dct-sse.cc'; then $(CYGPATH_W) 'dct-sse.cc'; else $(CYGPATH_W) '$(srcdir)/dct-sse.cc'; fi` - -mostlyclean-libtool: - -rm -f *.lo - -clean-libtool: - -rm -rf .libs _libs - -ID: $(am__tagged_files) - $(am__define_uniq_tagged_files); mkid -fID $$unique -tags: tags-am -TAGS: tags - -tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) - set x; \ - here=`pwd`; \ - $(am__define_uniq_tagged_files); \ - shift; \ - if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ - test -n "$$unique" || unique=$$empty_fix; \ - if test $$# -gt 0; then \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - "$$@" $$unique; \ - else \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - $$unique; \ - fi; \ - fi -ctags: ctags-am - -CTAGS: ctags -ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) - $(am__define_uniq_tagged_files); \ - test -z "$(CTAGS_ARGS)$$unique" \ - || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ - $$unique - -GTAGS: - here=`$(am__cd) $(top_builddir) && pwd` \ - && $(am__cd) $(top_srcdir) \ - && gtags -i $(GTAGS_ARGS) "$$here" -cscopelist: cscopelist-am - -cscopelist-am: $(am__tagged_files) - list='$(am__tagged_files)'; \ - case "$(srcdir)" in \ - [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ - *) sdir=$(subdir)/$(srcdir) ;; \ - esac; \ - for i in $$list; do \ - if test -f "$$i"; then \ - echo "$(subdir)/$$i"; \ - else \ - echo "$$sdir/$$i"; \ - fi; \ - done >> $(top_builddir)/cscope.files - -distclean-tags: - -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(BUILT_SOURCES) - $(MAKE) $(AM_MAKEFLAGS) distdir-am - -distdir-am: $(DISTFILES) - @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - list='$(DISTFILES)'; \ - dist_files=`for file in $$list; do echo $$file; done | \ - sed -e "s|^$$srcdirstrip/||;t" \ - -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ - case $$dist_files in \ - */*) $(MKDIR_P) `echo "$$dist_files" | \ - sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ - sort -u` ;; \ - esac; \ - for file in $$dist_files; do \ - if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - if test -d $$d/$$file; then \ - dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test -d "$(distdir)/$$file"; then \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ - else \ - test -f "$(distdir)/$$file" \ - || cp -p $$d/$$file "$(distdir)/$$file" \ - || exit 1; \ - fi; \ - done -check-am: all-am -check: check-am -all-am: Makefile $(PROGRAMS) -installdirs: - for dir in "$(DESTDIR)$(bindir)"; do \ - test -z "$$dir" || $(MKDIR_P) "$$dir"; \ - done -install: install-am -install-exec: install-exec-am -install-data: install-data-am -uninstall: uninstall-am - -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am - -installcheck: installcheck-am -install-strip: - if test -z '$(STRIP)'; then \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - install; \ - else \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ - fi -mostlyclean-generic: - -clean-generic: - -distclean-generic: - -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) - -maintainer-clean-generic: - @echo "This command is intended for maintainers to use" - @echo "it deletes files that may require special tools to rebuild." -clean: clean-am - -clean-am: clean-binPROGRAMS clean-generic clean-libtool mostlyclean-am - -distclean: distclean-am - -rm -f ./$(DEPDIR)/acceleration_speed-acceleration-speed.Po - -rm -f ./$(DEPDIR)/acceleration_speed-dct-scalar.Po - -rm -f ./$(DEPDIR)/acceleration_speed-dct-sse.Po - -rm -f ./$(DEPDIR)/acceleration_speed-dct.Po - -rm -f Makefile -distclean-am: clean-am distclean-compile distclean-generic \ - distclean-tags - -dvi: dvi-am - -dvi-am: - -html: html-am - -html-am: - -info: info-am - -info-am: - -install-data-am: - -install-dvi: install-dvi-am - -install-dvi-am: - -install-exec-am: install-binPROGRAMS - -install-html: install-html-am - -install-html-am: - -install-info: install-info-am - -install-info-am: - -install-man: - -install-pdf: install-pdf-am - -install-pdf-am: - -install-ps: install-ps-am - -install-ps-am: - -installcheck-am: - -maintainer-clean: maintainer-clean-am - -rm -f ./$(DEPDIR)/acceleration_speed-acceleration-speed.Po - -rm -f ./$(DEPDIR)/acceleration_speed-dct-scalar.Po - -rm -f ./$(DEPDIR)/acceleration_speed-dct-sse.Po - -rm -f ./$(DEPDIR)/acceleration_speed-dct.Po - -rm -f Makefile -maintainer-clean-am: distclean-am maintainer-clean-generic - -mostlyclean: mostlyclean-am - -mostlyclean-am: mostlyclean-compile mostlyclean-generic \ - mostlyclean-libtool - -pdf: pdf-am - -pdf-am: - -ps: ps-am - -ps-am: - -uninstall-am: uninstall-binPROGRAMS - -.MAKE: install-am install-strip - -.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \ - clean-binPROGRAMS clean-generic clean-libtool cscopelist-am \ - ctags ctags-am distclean distclean-compile distclean-generic \ - distclean-libtool distclean-tags distdir dvi dvi-am html \ - html-am info info-am install install-am install-binPROGRAMS \ - install-data install-data-am install-dvi install-dvi-am \ - install-exec install-exec-am install-html install-html-am \ - install-info install-info-am install-man install-pdf \ - install-pdf-am install-ps install-ps-am install-strip \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-compile \ - mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ - tags tags-am uninstall uninstall-am uninstall-binPROGRAMS - -.PRECIOUS: Makefile - - -# Tell versions [3.59,3.63) of GNU make to not export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: diff -Nru libde265-1.0.15/aclocal.m4 libde265-1.0.16/aclocal.m4 --- libde265-1.0.15/aclocal.m4 2023-12-20 11:44:07.000000000 +0100 +++ libde265-1.0.16/aclocal.m4 2025-05-04 00:05:25.000000000 +0200 @@ -20,7 +20,7 @@ If you have problems, you may need to regenerate the build system entirely. To do so, use the procedure documented by the package, typically 'autoreconf'.])]) -# pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*- +# pkg.m4 - Macros to locate and use pkg-config. -*- Autoconf -*- # serial 12 (pkg-config-0.29.2) dnl Copyright © 2004 Scott James Remnant <scott@netsplit.com>. @@ -108,7 +108,7 @@ dnl PKG_CHECK_MODULES(), but does not set variables or print errors. dnl dnl Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG]) -dnl only at the first occurence in configure.ac, so if the first place +dnl only at the first occurrence in configure.ac, so if the first place dnl it's called might be skipped (such as if it is within an "if", you dnl have to call PKG_CHECK_EXISTS manually AC_DEFUN([PKG_CHECK_EXISTS], @@ -177,14 +177,14 @@ AC_MSG_RESULT([no]) _PKG_SHORT_ERRORS_SUPPORTED if test $_pkg_short_errors_supported = yes; then - $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$2" 2>&1` + $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$2" 2>&1` else - $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$2" 2>&1` + $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$2" 2>&1` fi - # Put the nasty error message in config.log where it belongs - echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD + # Put the nasty error message in config.log where it belongs + echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD - m4_default([$4], [AC_MSG_ERROR( + m4_default([$4], [AC_MSG_ERROR( [Package requirements ($2) were not met: $$1_PKG_ERRORS @@ -196,7 +196,7 @@ ]) elif test $pkg_failed = untried; then AC_MSG_RESULT([no]) - m4_default([$4], [AC_MSG_FAILURE( + m4_default([$4], [AC_MSG_FAILURE( [The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. @@ -206,10 +206,10 @@ To get pkg-config, see <http://pkg-config.freedesktop.org/>.])[]dnl ]) else - $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS - $1[]_LIBS=$pkg_cv_[]$1[]_LIBS + $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS + $1[]_LIBS=$pkg_cv_[]$1[]_LIBS AC_MSG_RESULT([yes]) - $3 + $3 fi[]dnl ])dnl PKG_CHECK_MODULES @@ -296,6 +296,74 @@ AS_VAR_IF([$1], [""], [$5], [$4])dnl ])dnl PKG_CHECK_VAR +dnl PKG_WITH_MODULES(VARIABLE-PREFIX, MODULES, +dnl [ACTION-IF-FOUND],[ACTION-IF-NOT-FOUND], +dnl [DESCRIPTION], [DEFAULT]) +dnl ------------------------------------------ +dnl +dnl Prepare a "--with-" configure option using the lowercase +dnl [VARIABLE-PREFIX] name, merging the behaviour of AC_ARG_WITH and +dnl PKG_CHECK_MODULES in a single macro. +AC_DEFUN([PKG_WITH_MODULES], +[ +m4_pushdef([with_arg], m4_tolower([$1])) + +m4_pushdef([description], + [m4_default([$5], [build with ]with_arg[ support])]) + +m4_pushdef([def_arg], [m4_default([$6], [auto])]) +m4_pushdef([def_action_if_found], [AS_TR_SH([with_]with_arg)=yes]) +m4_pushdef([def_action_if_not_found], [AS_TR_SH([with_]with_arg)=no]) + +m4_case(def_arg, + [yes],[m4_pushdef([with_without], [--without-]with_arg)], + [m4_pushdef([with_without],[--with-]with_arg)]) + +AC_ARG_WITH(with_arg, + AS_HELP_STRING(with_without, description[ @<:@default=]def_arg[@:>@]),, + [AS_TR_SH([with_]with_arg)=def_arg]) + +AS_CASE([$AS_TR_SH([with_]with_arg)], + [yes],[PKG_CHECK_MODULES([$1],[$2],$3,$4)], + [auto],[PKG_CHECK_MODULES([$1],[$2], + [m4_n([def_action_if_found]) $3], + [m4_n([def_action_if_not_found]) $4])]) + +m4_popdef([with_arg]) +m4_popdef([description]) +m4_popdef([def_arg]) + +])dnl PKG_WITH_MODULES + +dnl PKG_HAVE_WITH_MODULES(VARIABLE-PREFIX, MODULES, +dnl [DESCRIPTION], [DEFAULT]) +dnl ----------------------------------------------- +dnl +dnl Convenience macro to trigger AM_CONDITIONAL after PKG_WITH_MODULES +dnl check._[VARIABLE-PREFIX] is exported as make variable. +AC_DEFUN([PKG_HAVE_WITH_MODULES], +[ +PKG_WITH_MODULES([$1],[$2],,,[$3],[$4]) + +AM_CONDITIONAL([HAVE_][$1], + [test "$AS_TR_SH([with_]m4_tolower([$1]))" = "yes"]) +])dnl PKG_HAVE_WITH_MODULES + +dnl PKG_HAVE_DEFINE_WITH_MODULES(VARIABLE-PREFIX, MODULES, +dnl [DESCRIPTION], [DEFAULT]) +dnl ------------------------------------------------------ +dnl +dnl Convenience macro to run AM_CONDITIONAL and AC_DEFINE after +dnl PKG_WITH_MODULES check. HAVE_[VARIABLE-PREFIX] is exported as make +dnl and preprocessor variable. +AC_DEFUN([PKG_HAVE_DEFINE_WITH_MODULES], +[ +PKG_HAVE_WITH_MODULES([$1],[$2],[$3],[$4]) + +AS_IF([test "$AS_TR_SH([with_]m4_tolower([$1]))" = "yes"], + [AC_DEFINE([HAVE_][$1], 1, [Enable ]m4_tolower([$1])[ support])]) +])dnl PKG_HAVE_DEFINE_WITH_MODULES + # Copyright (C) 2002-2021 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation diff -Nru libde265-1.0.15/CMakeLists.txt libde265-1.0.16/CMakeLists.txt --- libde265-1.0.15/CMakeLists.txt 2023-12-20 11:41:58.000000000 +0100 +++ libde265-1.0.16/CMakeLists.txt 2025-05-04 00:02:09.000000000 +0200 @@ -1,8 +1,8 @@ -cmake_minimum_required (VERSION 3.3.2) +cmake_minimum_required (VERSION 3.5.0) project (libde265 LANGUAGES C CXX - VERSION 1.0.15 + VERSION 1.0.16 ) set(CMAKE_CXX_STANDARD 11) @@ -11,7 +11,7 @@ set(CMAKE_POSITION_INDEPENDENT_CODE ON) # The version number. -set (NUMERIC_VERSION 0x01001500) +set (NUMERIC_VERSION 0x01001600) set (PACKAGE_VERSION ${PROJECT_VERSION}) include (${CMAKE_ROOT}/Modules/CheckCCompilerFlag.cmake) @@ -57,6 +57,10 @@ add_definitions(-DLIBDE265_STATIC_BUILD) endif() +if(APPLE) + option(BUILD_FRAMEWORK "Build as Apple Frameworks" OFF) +endif() + include_directories ("${PROJECT_SOURCE_DIR}") include_directories ("${PROJECT_BINARY_DIR}") include_directories ("${PROJECT_SOURCE_DIR}/libde265") diff -Nru libde265-1.0.15/configure libde265-1.0.16/configure --- libde265-1.0.15/configure 2023-12-20 11:44:08.000000000 +0100 +++ libde265-1.0.16/configure 2025-05-04 00:05:25.000000000 +0200 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.71 for libde265 1.0.15. +# Generated by GNU Autoconf 2.71 for libde265 1.0.16. # # Report bugs to <dirk.farin@gmail.com>. # @@ -621,8 +621,8 @@ # Identity of this package. PACKAGE_NAME='libde265' PACKAGE_TARNAME='libde265' -PACKAGE_VERSION='1.0.15' -PACKAGE_STRING='libde265 1.0.15' +PACKAGE_VERSION='1.0.16' +PACKAGE_STRING='libde265 1.0.16' PACKAGE_BUGREPORT='dirk.farin@gmail.com' PACKAGE_URL='' @@ -698,6 +698,7 @@ ENABLE_ENCODER_TRUE MINGW_FALSE MINGW_TRUE +LIBS_PRIVATE LIBOBJS ALLOCA HAVE_VISIBILITY_FALSE @@ -1437,7 +1438,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures libde265 1.0.15 to adapt to many kinds of systems. +\`configure' configures libde265 1.0.16 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1509,7 +1510,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of libde265 1.0.15:";; + short | recursive ) echo "Configuration of libde265 1.0.16:";; esac cat <<\_ACEOF @@ -1651,7 +1652,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -libde265 configure 1.0.15 +libde265 configure 1.0.16 generated by GNU Autoconf 2.71 Copyright (C) 2021 Free Software Foundation, Inc. @@ -2263,7 +2264,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by libde265 $as_me 1.0.15, which was +It was created by libde265 $as_me 1.0.16, which was generated by GNU Autoconf 2.71. Invocation command line was $ $0$ac_configure_args_raw @@ -3240,7 +3241,7 @@ ac_config_headers="$ac_config_headers config.h" -NUMERIC_VERSION=0x01001500 # Numeric representation of the version (A.B.C[.D] = 0xAABBCCDD) +NUMERIC_VERSION=0x01001600 # Numeric representation of the version (A.B.C[.D] = 0xAABBCCDD) # From https://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html: @@ -3250,7 +3251,7 @@ # If any interfaces have been removed or changed since the last public release, then set age to 0. LIBDE265_CURRENT=1 -LIBDE265_REVISION=8 +LIBDE265_REVISION=9 LIBDE265_AGE=1 # --------------------------------------------------------------------------- @@ -12951,11 +12952,11 @@ then : { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CXX option to enable C++11 features" >&5 printf %s "checking for $CXX option to enable C++11 features... " >&6; } -if test ${ac_cv_prog_cxx_11+y} +if test ${ac_cv_prog_cxx_cxx11+y} then : printf %s "(cached) " >&6 else $as_nop - ac_cv_prog_cxx_11=no + ac_cv_prog_cxx_cxx11=no ac_save_CXX=$CXX cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -12997,11 +12998,11 @@ then : { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CXX option to enable C++98 features" >&5 printf %s "checking for $CXX option to enable C++98 features... " >&6; } -if test ${ac_cv_prog_cxx_98+y} +if test ${ac_cv_prog_cxx_cxx98+y} then : printf %s "(cached) " >&6 else $as_nop - ac_cv_prog_cxx_98=no + ac_cv_prog_cxx_cxx98=no ac_save_CXX=$CXX cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -17714,7 +17715,7 @@ # Define the identity of the package. PACKAGE='libde265' - VERSION='1.0.15' + VERSION='1.0.16' printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h @@ -19343,6 +19344,9 @@ fi +LIBS_PRIVATE="$LIBS -lstdc++" + + if expr $host : '.*-mingw' >/dev/null 2>&1; then MINGW_TRUE= MINGW_FALSE='#' @@ -20019,23 +20023,23 @@ _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then - VIDEOGFX_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libvideogfx" 2>&1` + VIDEOGFX_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libvideogfx" 2>&1` else - VIDEOGFX_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libvideogfx" 2>&1` + VIDEOGFX_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libvideogfx" 2>&1` fi - # Put the nasty error message in config.log where it belongs - echo "$VIDEOGFX_PKG_ERRORS" >&5 + # Put the nasty error message in config.log where it belongs + echo "$VIDEOGFX_PKG_ERRORS" >&5 - have_videogfx="no" + have_videogfx="no" elif test $pkg_failed = untried; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } - have_videogfx="no" + have_videogfx="no" else - VIDEOGFX_CFLAGS=$pkg_cv_VIDEOGFX_CFLAGS - VIDEOGFX_LIBS=$pkg_cv_VIDEOGFX_LIBS + VIDEOGFX_CFLAGS=$pkg_cv_VIDEOGFX_CFLAGS + VIDEOGFX_LIBS=$pkg_cv_VIDEOGFX_LIBS { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } @@ -20100,23 +20104,23 @@ _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then - SDL_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "sdl2" 2>&1` + SDL_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "sdl2" 2>&1` else - SDL_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "sdl2" 2>&1` + SDL_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "sdl2" 2>&1` fi - # Put the nasty error message in config.log where it belongs - echo "$SDL_PKG_ERRORS" >&5 + # Put the nasty error message in config.log where it belongs + echo "$SDL_PKG_ERRORS" >&5 - have_sdl="no" + have_sdl="no" elif test $pkg_failed = untried; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } - have_sdl="no" + have_sdl="no" else - SDL_CFLAGS=$pkg_cv_SDL_CFLAGS - SDL_LIBS=$pkg_cv_SDL_LIBS + SDL_CFLAGS=$pkg_cv_SDL_CFLAGS + SDL_LIBS=$pkg_cv_SDL_LIBS { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } @@ -20181,23 +20185,23 @@ _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then - SWSCALE_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libswscale" 2>&1` + SWSCALE_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libswscale" 2>&1` else - SWSCALE_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libswscale" 2>&1` + SWSCALE_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libswscale" 2>&1` fi - # Put the nasty error message in config.log where it belongs - echo "$SWSCALE_PKG_ERRORS" >&5 + # Put the nasty error message in config.log where it belongs + echo "$SWSCALE_PKG_ERRORS" >&5 - have_swscale="no" + have_swscale="no" elif test $pkg_failed = untried; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } - have_swscale="no" + have_swscale="no" else - SWSCALE_CFLAGS=$pkg_cv_SWSCALE_CFLAGS - SWSCALE_LIBS=$pkg_cv_SWSCALE_LIBS + SWSCALE_CFLAGS=$pkg_cv_SWSCALE_CFLAGS + SWSCALE_LIBS=$pkg_cv_SWSCALE_LIBS { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } @@ -20298,24 +20302,24 @@ _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then - QT_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "Qt5Core Qt5Gui Qt5Widgets" 2>&1` + QT_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "Qt5Core Qt5Gui Qt5Widgets" 2>&1` else - QT_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "Qt5Core Qt5Gui Qt5Widgets" 2>&1` + QT_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "Qt5Core Qt5Gui Qt5Widgets" 2>&1` fi - # Put the nasty error message in config.log where it belongs - echo "$QT_PKG_ERRORS" >&5 + # Put the nasty error message in config.log where it belongs + echo "$QT_PKG_ERRORS" >&5 - found_qt=no + found_qt=no elif test $pkg_failed = untried; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } - found_qt=no + found_qt=no else - QT_CFLAGS=$pkg_cv_QT_CFLAGS - QT_LIBS=$pkg_cv_QT_LIBS + QT_CFLAGS=$pkg_cv_QT_CFLAGS + QT_LIBS=$pkg_cv_QT_LIBS { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } - found_qt=5 + found_qt=5 fi if eval "test $found_qt = no" ; then @@ -20370,14 +20374,14 @@ _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then - QT_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "QtCore QtGui" 2>&1` + QT_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "QtCore QtGui" 2>&1` else - QT_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "QtCore QtGui" 2>&1` + QT_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "QtCore QtGui" 2>&1` fi - # Put the nasty error message in config.log where it belongs - echo "$QT_PKG_ERRORS" >&5 + # Put the nasty error message in config.log where it belongs + echo "$QT_PKG_ERRORS" >&5 - as_fn_error $? "Package requirements (QtCore QtGui) were not met: + as_fn_error $? "Package requirements (QtCore QtGui) were not met: $QT_PKG_ERRORS @@ -20390,7 +20394,7 @@ elif test $pkg_failed = untried; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full @@ -20403,11 +20407,11 @@ To get pkg-config, see <http://pkg-config.freedesktop.org/>. See \`config.log' for more details" "$LINENO" 5; } else - QT_CFLAGS=$pkg_cv_QT_CFLAGS - QT_LIBS=$pkg_cv_QT_LIBS + QT_CFLAGS=$pkg_cv_QT_CFLAGS + QT_LIBS=$pkg_cv_QT_LIBS { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } - found_qt=4 + found_qt=4 fi fi for ac_prog in qtchooser @@ -20613,8 +20617,7 @@ ac_config_files="$ac_config_files tools/Makefile" -ac_config_files="$ac_config_files acceleration-speed/Makefile" - +# AC_CONFIG_FILES([acceleration-speed/Makefile]) ac_config_files="$ac_config_files libde265.pc" cat >confcache <<\_ACEOF @@ -21196,7 +21199,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by libde265 $as_me 1.0.15, which was +This file was extended by libde265 $as_me 1.0.16, which was generated by GNU Autoconf 2.71. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -21264,7 +21267,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config='$ac_cs_config_escaped' ac_cs_version="\\ -libde265 config.status 1.0.15 +libde265 config.status 1.0.16 configured by $0, generated by GNU Autoconf 2.71, with options \\"\$ac_cs_config\\" @@ -21788,7 +21791,6 @@ "enc265/Makefile") CONFIG_FILES="$CONFIG_FILES enc265/Makefile" ;; "sherlock265/Makefile") CONFIG_FILES="$CONFIG_FILES sherlock265/Makefile" ;; "tools/Makefile") CONFIG_FILES="$CONFIG_FILES tools/Makefile" ;; - "acceleration-speed/Makefile") CONFIG_FILES="$CONFIG_FILES acceleration-speed/Makefile" ;; "libde265.pc") CONFIG_FILES="$CONFIG_FILES libde265.pc" ;; *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;; diff -Nru libde265-1.0.15/configure.ac libde265-1.0.16/configure.ac --- libde265-1.0.15/configure.ac 2023-12-20 11:42:57.000000000 +0100 +++ libde265-1.0.16/configure.ac 2025-05-04 00:03:20.000000000 +0200 @@ -2,11 +2,11 @@ # Process this file with autoconf to produce a configure script. AC_PREREQ([2.68]) -AC_INIT([libde265], [1.0.15], [dirk.farin@gmail.com]) +AC_INIT([libde265], [1.0.16], [dirk.farin@gmail.com]) AC_CONFIG_SRCDIR([libde265/de265.cc]) AC_CONFIG_HEADERS([config.h]) -NUMERIC_VERSION=0x01001500 # Numeric representation of the version (A.B.C[.D] = 0xAABBCCDD) +NUMERIC_VERSION=0x01001600 # Numeric representation of the version (A.B.C[.D] = 0xAABBCCDD) AC_SUBST(NUMERIC_VERSION) # From https://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html: @@ -16,7 +16,7 @@ # If any interfaces have been removed or changed since the last public release, then set age to 0. LIBDE265_CURRENT=1 -LIBDE265_REVISION=8 +LIBDE265_REVISION=9 LIBDE265_AGE=1 # --------------------------------------------------------------------------- @@ -104,6 +104,9 @@ # AC_FUNC_REALLOC AC_FUNC_MKTIME +LIBS_PRIVATE="$LIBS -lstdc++" +AC_SUBST(LIBS_PRIVATE) + AM_CONDITIONAL(MINGW, expr $host : '.*-mingw' >/dev/null 2>&1) # Check if "__STRICT_ANSI__" is required. @@ -385,6 +388,6 @@ AC_CONFIG_FILES([enc265/Makefile]) AC_CONFIG_FILES([sherlock265/Makefile]) AC_CONFIG_FILES([tools/Makefile]) -AC_CONFIG_FILES([acceleration-speed/Makefile]) +# AC_CONFIG_FILES([acceleration-speed/Makefile]) AC_CONFIG_FILES([libde265.pc]) AC_OUTPUT diff -Nru libde265-1.0.15/debian/changelog libde265-1.0.16/debian/changelog --- libde265-1.0.15/debian/changelog 2023-12-21 09:29:24.000000000 +0100 +++ libde265-1.0.16/debian/changelog 2025-05-13 09:32:27.000000000 +0200 @@ -1,3 +1,16 @@ +libde265 (1.0.16-1) unstable; urgency=medium + + * d/control: Change "Uploaders" to use my @debian.org address. + * New upstream version 1.0.16 + * Refresh patches for new upstream version. + * d/control: Migrate from "pkg-config" to "pkgconf". + * Bump "Standards-Version" to 4.7.2 + * d/copyright: Remove entry for file no longer present in upstream tarball. + * Ignore internal std:: symbol. + * d/rules: Check "DEB_BUILD_OPTIONS" before running tests. + + -- Joachim Bauch <fancycode@debian.org> Tue, 13 May 2025 09:32:27 +0200 + libde265 (1.0.15-1) unstable; urgency=medium * New upstream version 1.0.15 diff -Nru libde265-1.0.15/debian/control libde265-1.0.16/debian/control --- libde265-1.0.15/debian/control 2023-11-21 08:45:01.000000000 +0100 +++ libde265-1.0.16/debian/control 2025-05-13 09:17:01.000000000 +0200 @@ -4,7 +4,7 @@ Maintainer: Debian Multimedia Maintainers <debian-multimedia@lists.debian.org> Uploaders: Alessio Treglia <alessio@debian.org>, - Joachim Bauch <bauch@struktur.de> + Joachim Bauch <fancycode@debian.org> Build-Depends: debhelper-compat (= 13), qtbase5-dev | libqt4-dev, @@ -12,9 +12,9 @@ libswscale-dev, libx11-dev, libxext-dev, - pkg-config + pkgconf Rules-Requires-Root: no -Standards-Version: 4.6.2 +Standards-Version: 4.7.2 Homepage: https://github.com/strukturag/libde265 Vcs-Git: https://salsa.debian.org/multimedia-team/libde265.git Vcs-Browser: https://salsa.debian.org/multimedia-team/libde265 diff -Nru libde265-1.0.15/debian/copyright libde265-1.0.16/debian/copyright --- libde265-1.0.15/debian/copyright 2023-02-02 17:12:17.000000000 +0100 +++ libde265-1.0.16/debian/copyright 2025-05-13 09:21:04.000000000 +0200 @@ -10,7 +10,6 @@ License: LGPL-3+ Files: dec265/dec265.cc - dec265/hdrcopy.cc dec265/sdl.cc dec265/sdl.hh enc265/enc265.cc diff -Nru libde265-1.0.15/debian/libde265-0.symbols libde265-1.0.16/debian/libde265-0.symbols --- libde265-1.0.15/debian/libde265-0.symbols 2023-11-21 08:54:03.000000000 +0100 +++ libde265-1.0.16/debian/libde265-0.symbols 2025-05-13 09:23:32.000000000 +0200 @@ -5,6 +5,7 @@ (optional|c++|regex)"^std::_Sp_make_shared_tag.*@Base$" 1.0.4 (optional|c++|regex)"^std::__cxx11::basic_stringbuf<.*@Base$" 1.0.2 (optional|c++|regex)"^std::vector<.*@Base$" 1.0.2 + (optional|c++|regex)"^std::_Vector_base<.*@Base$" 1.0.16 (optional|c++|regex)"^typeinfo for std::.*@Base$" 1.0.2 (optional|c++|regex)"^typeinfo name for std::.*@Base$" 1.0.2 (optional|c++|regex)"^void std::vector<.*@Base$" 1.0.2 diff -Nru libde265-1.0.15/debian/patches/disable_tools.patch libde265-1.0.16/debian/patches/disable_tools.patch --- libde265-1.0.15/debian/patches/disable_tools.patch 2023-11-21 08:44:14.000000000 +0100 +++ libde265-1.0.16/debian/patches/disable_tools.patch 2025-05-13 09:09:32.000000000 +0200 @@ -1,9 +1,11 @@ Description: Disable building of some internal tools that no longer link because internal symbols are no longer exported. Author: Joachim Bauch <bauch@struktur.de> ---- a/Makefile.am -+++ b/Makefile.am -@@ -8,13 +8,6 @@ +Index: libde265/Makefile.am +=================================================================== +--- libde265.orig/Makefile.am ++++ libde265/Makefile.am +@@ -8,12 +8,6 @@ if ENABLE_DEC265 SUBDIRS+=dec265 endif @@ -12,8 +14,7 @@ -endif - -SUBDIRS+=tools --SUBDIRS+=acceleration-speed - - if ENABLE_SHERLOCK265 - SUBDIRS+=sherlock265 - endif + # Remove acceleration-speed test program, because it needs many internal functions (that have to be dllexported). + # On the other hand, that tool was only used for development. + # SUBDIRS+=acceleration-speed diff -Nru libde265-1.0.15/debian/patches/fix-private-libs-pc.patch libde265-1.0.16/debian/patches/fix-private-libs-pc.patch --- libde265-1.0.15/debian/patches/fix-private-libs-pc.patch 2023-12-21 09:26:14.000000000 +0100 +++ libde265-1.0.16/debian/patches/fix-private-libs-pc.patch 2025-05-13 09:10:04.000000000 +0200 @@ -10,13 +10,13 @@ configure.ac | 3 +++ 1 file changed, 3 insertions(+) -diff --git a/configure.ac b/configure.ac -index 770f5025..798e9a2c 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -104,6 +104,9 @@ AC_FUNC_ERROR_AT_LINE - # AC_FUNC_REALLOC - AC_FUNC_MKTIME +Index: libde265/configure.ac +=================================================================== +--- libde265.orig/configure.ac ++++ libde265/configure.ac +@@ -105,6 +105,9 @@ AC_FUNC_MKTIME + LIBS_PRIVATE="$LIBS -lstdc++" + AC_SUBST(LIBS_PRIVATE) +LIBS_PRIVATE="$LIBS -lstdc++" +AC_SUBST(LIBS_PRIVATE) diff -Nru libde265-1.0.15/debian/patches/only_export_decoder_api.patch libde265-1.0.16/debian/patches/only_export_decoder_api.patch --- libde265-1.0.15/debian/patches/only_export_decoder_api.patch 2023-02-02 15:44:39.000000000 +0100 +++ libde265-1.0.16/debian/patches/only_export_decoder_api.patch 2025-05-13 09:06:38.000000000 +0200 @@ -2,9 +2,11 @@ The encoder API is not final yet, so upstream exports all symbols to make development easier. For packaging we only want to expose the public API. Author: Joachim Bauch <bauch@struktur.de> ---- a/libde265/encoder/Makefile.am -+++ b/libde265/encoder/Makefile.am -@@ -12,6 +12,18 @@ +Index: libde265/libde265/encoder/Makefile.am +=================================================================== +--- libde265.orig/libde265/encoder/Makefile.am ++++ libde265/libde265/encoder/Makefile.am +@@ -12,6 +12,18 @@ libde265_encoder_la_SOURCES = \ encpicbuf.h encpicbuf.cc \ sop.h sop.cc @@ -23,9 +25,11 @@ SUBDIRS=algo libde265_encoder_la_LIBADD = algo/libde265_encoder_algo.la ---- a/libde265/encoder/algo/Makefile.am -+++ b/libde265/encoder/algo/Makefile.am -@@ -17,5 +17,13 @@ +Index: libde265/libde265/encoder/algo/Makefile.am +=================================================================== +--- libde265.orig/libde265/encoder/algo/Makefile.am ++++ libde265/libde265/encoder/algo/Makefile.am +@@ -17,5 +17,13 @@ libde265_encoder_algo_la_SOURCES = \ tb-rateestim.h tb-rateestim.cc \ pb-mv.h pb-mv.cc @@ -39,9 +43,11 @@ + EXTRA_DIST = \ CMakeLists.txt ---- a/configure.ac -+++ b/configure.ac -@@ -56,9 +56,7 @@ +Index: libde265/configure.ac +=================================================================== +--- libde265.orig/configure.ac ++++ libde265/configure.ac +@@ -56,9 +56,7 @@ if test "x$GCC" = "xyes"; then fi changequote([,])dnl @@ -52,9 +58,11 @@ AM_CONDITIONAL([HAVE_VISIBILITY], [test "x$HAVE_VISIBILITY" != "x0"]) # Checks for header files. ---- a/libde265/image-io.cc -+++ b/libde265/image-io.cc -@@ -186,7 +186,7 @@ +Index: libde265/libde265/image-io.cc +=================================================================== +--- libde265.orig/libde265/image-io.cc ++++ libde265/libde265/image-io.cc +@@ -208,7 +208,7 @@ PacketSink_File::PacketSink_File() } @@ -63,7 +71,7 @@ { if (mFH) { fclose(mFH); -@@ -194,7 +194,7 @@ +@@ -216,7 +216,7 @@ LIBDE265_API PacketSink_File::~PacketSin } @@ -72,7 +80,7 @@ { assert(mFH==NULL); -@@ -202,7 +202,7 @@ +@@ -224,7 +224,7 @@ LIBDE265_API void PacketSink_File::set_f } @@ -81,16 +89,18 @@ { uint8_t startCode[3]; startCode[0] = 0; ---- a/libde265/image-io.h -+++ b/libde265/image-io.h +Index: libde265/libde265/image-io.h +=================================================================== +--- libde265.orig/libde265/image-io.h ++++ libde265/libde265/image-io.h @@ -30,17 +30,17 @@ class ImageSource { public: - LIBDE265_API ImageSource(); -- virtual LIBDE265_API ~ImageSource() { } +- virtual LIBDE265_API ~ImageSource(); + ImageSource(); -+ virtual ~ImageSource() { } ++ virtual ~ImageSource(); //enum ImageStatus { Available, Waiting, EndOfVideo }; @@ -107,7 +117,7 @@ }; -@@ -48,17 +48,17 @@ +@@ -48,17 +48,17 @@ class ImageSource class ImageSource_YUV : public ImageSource { public: @@ -125,19 +135,19 @@ + virtual de265_image* get_image(bool block=true); + virtual void skip_frames(int n); -- virtual LIBDE265_API int get_width() const { return width; } -- virtual LIBDE265_API int get_height() const { return height; } -+ virtual int get_width() const { return width; } -+ virtual int get_height() const { return height; } +- virtual LIBDE265_API int get_width() const; +- virtual LIBDE265_API int get_height() const; ++ virtual int get_width() const; ++ virtual int get_height() const; private: FILE* mFH; -@@ -74,20 +74,20 @@ +@@ -74,20 +74,20 @@ class ImageSource_YUV : public ImageSour class ImageSink { public: -- virtual LIBDE265_API ~ImageSink() { } -+ virtual ~ImageSink() { } +- virtual LIBDE265_API ~ImageSink(); ++ virtual ~ImageSink(); - virtual LIBDE265_API void send_image(const de265_image* img) = 0; + virtual void send_image(const de265_image* img) = 0; @@ -146,9 +156,9 @@ class ImageSink_YUV : public ImageSink { public: -- LIBDE265_API ImageSink_YUV() : mFH(NULL) { } +- LIBDE265_API ImageSink_YUV(); - LIBDE265_API ~ImageSink_YUV(); -+ ImageSink_YUV() : mFH(NULL) { } ++ ImageSink_YUV(); + ~ImageSink_YUV(); - bool LIBDE265_API set_filename(const char* filename); @@ -159,12 +169,12 @@ private: FILE* mFH; -@@ -98,21 +98,21 @@ +@@ -98,21 +98,21 @@ class ImageSink_YUV : public ImageSink class PacketSink { public: -- virtual LIBDE265_API ~PacketSink() { } -+ virtual ~PacketSink() { } +- virtual LIBDE265_API ~PacketSink(); ++ virtual ~PacketSink(); - virtual LIBDE265_API void send_packet(const uint8_t* data, int n) = 0; + virtual void send_packet(const uint8_t* data, int n) = 0; @@ -187,9 +197,11 @@ private: FILE* mFH; ---- a/libde265/configparam.h -+++ b/libde265/configparam.h -@@ -95,7 +95,7 @@ +Index: libde265/libde265/configparam.h +=================================================================== +--- libde265.orig/libde265/configparam.h ++++ libde265/libde265/configparam.h +@@ -95,7 +95,7 @@ class option_base bool hasLongOption() const { return true; } //mLongOption!=NULL; } std::string getLongOption() const { return mLongOption ? std::string(mLongOption) : get_name(); } @@ -198,7 +210,7 @@ -@@ -132,7 +132,7 @@ +@@ -132,7 +132,7 @@ public: virtual std::string get_default_string() const { return default_value ? "true":"false"; } virtual std::string getTypeDescr() const { return "(boolean)"; } @@ -207,7 +219,7 @@ bool set(bool v) { value_set=true; value=v; return true; } -@@ -162,10 +162,10 @@ +@@ -162,10 +162,10 @@ public: virtual bool has_default() const { return default_set; } void set_default(std::string v) { default_value=v; default_set=true; } @@ -221,7 +233,7 @@ bool set(std::string v) { value_set=true; value=v; return true; } -@@ -201,10 +201,10 @@ +@@ -201,10 +201,10 @@ public: virtual bool has_default() const { return default_set; } void set_default(int v) { default_value=v; default_set=true; } @@ -235,7 +247,7 @@ bool set(int v) { if (is_valid(v)) { value_set=true; value=v; return true; } -@@ -239,7 +239,7 @@ +@@ -239,7 +239,7 @@ public: virtual std::vector<std::string> get_choice_names() const = 0; virtual std::string getTypeDescr() const; @@ -244,7 +256,7 @@ const char** get_choices_string_table() const; -@@ -368,10 +368,10 @@ +@@ -368,10 +368,10 @@ class config_parameters config_parameters() : param_string_table(NULL) { } ~config_parameters() { delete[] param_string_table; } @@ -258,8 +270,10 @@ bool ignore_unknown_options=false); ---- a/libde265/quality.h -+++ b/libde265/quality.h +Index: libde265/libde265/quality.h +=================================================================== +--- libde265.orig/libde265/quality.h ++++ libde265/libde265/quality.h @@ -26,11 +26,11 @@ #include <libde265/image.h> @@ -274,7 +288,7 @@ const uint8_t* ref, int refStride, int width, int height); -@@ -41,7 +41,7 @@ +@@ -41,7 +41,7 @@ LIBDE265_API double MSE(const uint8_t* i LIBDE265_API double PSNR(double mse); diff -Nru libde265-1.0.15/debian/rules libde265-1.0.16/debian/rules --- libde265-1.0.15/debian/rules 2023-10-16 14:15:37.000000000 +0200 +++ libde265-1.0.16/debian/rules 2025-05-13 09:31:58.000000000 +0200 @@ -8,7 +8,9 @@ override_dh_auto_test: +ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS))) ./debian/tests/test-decode +endif dh_auto_test override_dh_auto_install: diff -Nru libde265-1.0.15/dec265/Makefile.in libde265-1.0.16/dec265/Makefile.in --- libde265-1.0.15/dec265/Makefile.in 2023-12-20 11:44:08.000000000 +0100 +++ libde265-1.0.16/dec265/Makefile.in 2025-05-04 00:05:52.000000000 +0200 @@ -260,6 +260,7 @@ LIBDE265_REVISION = @LIBDE265_REVISION@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ +LIBS_PRIVATE = @LIBS_PRIVATE@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ diff -Nru libde265-1.0.15/dec265/sdl.cc libde265-1.0.16/dec265/sdl.cc --- libde265-1.0.15/dec265/sdl.cc 2023-11-23 19:43:05.000000000 +0100 +++ libde265-1.0.16/dec265/sdl.cc 2025-05-03 15:35:16.000000000 +0200 @@ -25,7 +25,7 @@ */ #include "sdl.hh" -#include <assert.h> +#include <cstring> bool SDL_YUV_Display::init(int frame_width, int frame_height, enum SDL_Chroma chroma) diff -Nru libde265-1.0.15/enc265/Makefile.in libde265-1.0.16/enc265/Makefile.in --- libde265-1.0.15/enc265/Makefile.in 2023-12-20 11:44:08.000000000 +0100 +++ libde265-1.0.16/enc265/Makefile.in 2025-05-04 00:05:52.000000000 +0200 @@ -249,6 +249,7 @@ LIBDE265_REVISION = @LIBDE265_REVISION@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ +LIBS_PRIVATE = @LIBS_PRIVATE@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ diff -Nru libde265-1.0.15/INSTALL libde265-1.0.16/INSTALL --- libde265-1.0.15/INSTALL 2021-02-01 11:29:46.000000000 +0100 +++ libde265-1.0.16/INSTALL 2024-02-01 19:46:14.000000000 +0100 @@ -1,8 +1,8 @@ Installation Instructions ************************* - Copyright (C) 1994-1996, 1999-2002, 2004-2016 Free Software -Foundation, Inc. + Copyright (C) 1994-1996, 1999-2002, 2004-2017, 2020-2021 Free +Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright @@ -225,7 +225,7 @@ and if that doesn't work, install pre-built binaries of GCC for HP-UX. - HP-UX 'make' updates targets which have the same time stamps as their + HP-UX 'make' updates targets which have the same timestamps as their prerequisites, which makes it generally unusable when shipped generated files such as 'configure' are involved. Use GNU 'make' instead. diff -Nru libde265-1.0.15/libde265/arm/Makefile.in libde265-1.0.16/libde265/arm/Makefile.in --- libde265-1.0.15/libde265/arm/Makefile.in 2023-12-20 11:44:08.000000000 +0100 +++ libde265-1.0.16/libde265/arm/Makefile.in 2025-05-04 00:05:52.000000000 +0200 @@ -274,6 +274,7 @@ LIBDE265_REVISION = @LIBDE265_REVISION@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ +LIBS_PRIVATE = @LIBS_PRIVATE@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ diff -Nru libde265-1.0.15/libde265/CMakeLists.txt libde265-1.0.16/libde265/CMakeLists.txt --- libde265-1.0.15/libde265/CMakeLists.txt 2023-11-21 10:09:05.000000000 +0100 +++ libde265-1.0.16/libde265/CMakeLists.txt 2025-05-03 17:59:04.000000000 +0200 @@ -121,20 +121,60 @@ endif() endif() -add_library(de265 ${libde265_sources} ${ENCODER_OBJECTS} ${X86_OBJECTS}) +add_library(de265 ${libde265_sources} ${libde265_public_headers} ${ENCODER_OBJECTS} ${X86_OBJECTS}) target_link_libraries(de265 PRIVATE Threads::Threads) target_include_directories(de265 PRIVATE ${CMAKE_BINARY_DIR} ${CMAKE_CURRENT_BINARY_DIR}) write_basic_package_version_file(libde265ConfigVersion.cmake COMPATIBILITY ExactVersion) +# --- debug output + +set(LOG_LEVELS error info debug trace) +set(DE265_LOG_LEVEL "error" CACHE STRING "Log level (${LOG_LEVELS})") + +set_property(CACHE DE265_LOG_LEVEL PROPERTY STRINGS ${LOG_LEVELS}) +if (NOT DE265_LOG_LEVEL IN_LIST LOG_LEVELS) + message(FATAL_ERROR "DE265_LOG_LEVEL has to be one of: ${LOG_LEVELS}") +endif () + +if (DE265_LOG_LEVEL MATCHES "error") + target_compile_definitions(de265 PRIVATE DE265_LOG_ERROR) +elseif (DE265_LOG_LEVEL MATCHES "info") + target_compile_definitions(de265 PRIVATE DE265_LOG_ERROR DE265_LOG_INFO) +elseif (DE265_LOG_LEVEL MATCHES "debug") + target_compile_definitions(de265 PRIVATE DE265_LOG_ERROR DE265_LOG_INFO DE265_LOG_DEBUG) +elseif (DE265_LOG_LEVEL MATCHES "trace") + target_compile_definitions(de265 PRIVATE DE265_LOG_ERROR DE265_LOG_INFO DE265_LOG_DEBUG DE265_LOG_TRACE) +endif() + + if (WIN32) set_target_properties(de265 PROPERTIES PREFIX "lib") endif() +if (BUILD_FRAMEWORK) + set_target_properties(de265 PROPERTIES + FRAMEWORK TRUE + FRAMEWORK_VERSION "${PROJECT_VERSION}" + PRODUCT_BUNDLE_IDENTIFIER "github.com/strukturag/libde265" + XCODE_ATTRIBUTE_INSTALL_PATH "@rpath" + # OUTPUT_NAME "de265" + XCODE_ATTRIBUTE_CODE_SIGN_IDENTITY "" + XCODE_ATTRIBUTE_CODE_SIGNING_ALLOWED "NO" + XCODE_ATTRIBUTE_CODE_SIGNING_REQUIRED "NO" + PUBLIC_HEADER "${libde265_public_headers}" + MACOSX_FRAMEWORK_IDENTIFIER "github.com/strukturag/libde265" + MACOSX_FRAMEWORK_BUNDLE_VERSION "${PROJECT_VERSION}" + MACOSX_RPATH TRUE) +endif() + install(TARGETS de265 EXPORT libde265Config RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} + FRAMEWORK DESTINATION Library/Frameworks COMPONENT runtime OPTIONAL + INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} + PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/libde265 ) install(FILES ${libde265_public_headers} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/libde265) diff -Nru libde265-1.0.15/libde265/contextmodel.cc libde265-1.0.16/libde265/contextmodel.cc --- libde265-1.0.15/libde265/contextmodel.cc 2023-02-20 13:02:19.000000000 +0100 +++ libde265-1.0.16/libde265/contextmodel.cc 2025-04-26 22:58:45.000000000 +0200 @@ -92,7 +92,7 @@ { if (D) printf("%p decouple (%p)\n",this,refcnt); - assert(refcnt); // not necessarily so, but we never use it on an unitialized object + assert(refcnt); // not necessarily so, but we never use it on an uninitialized object if (*refcnt > 1) { (*refcnt)--; @@ -125,7 +125,7 @@ { if (D) printf("%p assign = %p\n",this,&src); - // assert(src.refcnt); // not necessarily so, but we never use it on an unitialized object + // assert(src.refcnt); // not necessarily so, but we never use it on an uninitialized object if (!src.refcnt) { release(); diff -Nru libde265-1.0.15/libde265/de265.h libde265-1.0.16/libde265/de265.h --- libde265-1.0.15/libde265/de265.h 2023-09-19 20:21:11.000000000 +0200 +++ libde265-1.0.16/libde265/de265.h 2025-04-26 22:58:45.000000000 +0200 @@ -36,7 +36,7 @@ #endif #include <stdint.h> -#if defined(_MSC_VER) && !defined(LIBDE265_STATIC_BUILD) +#if (defined(_WIN32) || defined(__CYGWIN__)) && !defined(LIBDE265_STATIC_BUILD) #ifdef LIBDE265_EXPORTS #define LIBDE265_API __declspec(dllexport) #else diff -Nru libde265-1.0.15/libde265/de265-version.h libde265-1.0.16/libde265/de265-version.h --- libde265-1.0.15/libde265/de265-version.h 2023-12-20 11:44:13.000000000 +0100 +++ libde265-1.0.16/libde265/de265-version.h 2025-05-04 00:06:03.000000000 +0200 @@ -28,9 +28,9 @@ #define LIBDE265_VERSION_H /* Numeric representation of the version */ -#define LIBDE265_NUMERIC_VERSION 0x01001500 +#define LIBDE265_NUMERIC_VERSION 0x01001600 /* Version string */ -#define LIBDE265_VERSION "1.0.15" +#define LIBDE265_VERSION "1.0.16" #endif diff -Nru libde265-1.0.15/libde265/decctx.cc libde265-1.0.16/libde265/decctx.cc --- libde265-1.0.15/libde265/decctx.cc 2023-11-04 15:31:00.000000000 +0100 +++ libde265-1.0.16/libde265/decctx.cc 2025-05-03 23:59:28.000000000 +0200 @@ -694,6 +694,9 @@ image_units.back()->slice_units.push_back(sliceunit); } + else { + nal_parser.free_NAL_unit(nal); + } bool did_work; err = decode_some(&did_work); @@ -1209,7 +1212,7 @@ if (nal_hdr.nuh_layer_id > 0) { // Discard all NAL units with nuh_layer_id > 0 - // These will have to be handeled by an SHVC decoder. + // These will have to be handled by an SHVC decoder. nal_parser.free_NAL_unit(nal); return DE265_OK; } diff -Nru libde265-1.0.15/libde265/encoder/algo/cb-split.cc libde265-1.0.16/libde265/encoder/algo/cb-split.cc --- libde265-1.0.15/libde265/encoder/algo/cb-split.cc 2021-01-24 20:57:57.000000000 +0100 +++ libde265-1.0.16/libde265/encoder/algo/cb-split.cc 2025-04-26 22:58:45.000000000 +0200 @@ -31,7 +31,7 @@ #include <iostream> -// Utility function to encode all four children in a splitted CB. +// Utility function to encode all four children in a split CB. // Children are coded with the specified algo_cb_split. enc_cb* Algo_CB_Split::encode_cb_split(encoder_context* ectx, context_model_table& ctxModel, diff -Nru libde265-1.0.15/libde265/encoder/algo/Makefile.in libde265-1.0.16/libde265/encoder/algo/Makefile.in --- libde265-1.0.15/libde265/encoder/algo/Makefile.in 2023-12-20 11:44:08.000000000 +0100 +++ libde265-1.0.16/libde265/encoder/algo/Makefile.in 2025-05-04 00:05:52.000000000 +0200 @@ -273,6 +273,7 @@ LIBDE265_REVISION = @LIBDE265_REVISION@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ +LIBS_PRIVATE = @LIBS_PRIVATE@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ diff -Nru libde265-1.0.15/libde265/encoder/Makefile.in libde265-1.0.16/libde265/encoder/Makefile.in --- libde265-1.0.15/libde265/encoder/Makefile.in 2023-12-20 11:44:08.000000000 +0100 +++ libde265-1.0.16/libde265/encoder/Makefile.in 2025-05-04 00:05:52.000000000 +0200 @@ -303,6 +303,7 @@ LIBDE265_REVISION = @LIBDE265_REVISION@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ +LIBS_PRIVATE = @LIBS_PRIVATE@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ diff -Nru libde265-1.0.15/libde265/image.cc libde265-1.0.16/libde265/image.cc --- libde265-1.0.15/libde265/image.cc 2023-11-30 11:55:41.000000000 +0100 +++ libde265-1.0.16/libde265/image.cc 2025-04-26 22:58:45.000000000 +0200 @@ -154,6 +154,8 @@ img->set_image_plane(1, p[1], chroma_stride, NULL); img->set_image_plane(2, p[2], chroma_stride, NULL); + img->fill_image(0,0,0); + return 1; } @@ -526,18 +528,72 @@ } +void de265_image::fill_plane(int channel, int value) +{ + int bytes_per_pixel = get_bytes_per_pixel(channel); + assert(value >= 0); // needed for the shift operation in the check below + + if (bytes_per_pixel == 1) { + if (channel==0) { + memset(pixels[channel], value, stride * height); + } + else { + memset(pixels[channel], value, chroma_stride * chroma_height); + } + } + else if ((value >> 8) == (value & 0xFF)) { + assert(bytes_per_pixel == 2); + + // if we fill the same byte value to all bytes, we can still use memset() + if (channel==0) { + memset(pixels[channel], 0, stride * height * bytes_per_pixel); + } + else { + memset(pixels[channel], 0, chroma_stride * chroma_height * bytes_per_pixel); + } + } + else { + assert(bytes_per_pixel == 2); + uint16_t v = value; + + if (channel==0) { + // copy value into first row + for (int x = 0; x < width; x++) { + *(uint16_t*) (&pixels[channel][2 * x]) = v; + } + + // copy first row into remaining rows + for (int y = 1; y < height; y++) { + memcpy(pixels[channel] + y * stride * 2, pixels[channel], chroma_width * 2); + } + } + else { + // copy value into first row + for (int x = 0; x < chroma_width; x++) { + *(uint16_t*) (&pixels[channel][2 * x]) = v; + } + + // copy first row into remaining rows + for (int y = 1; y < chroma_height; y++) { + memcpy(pixels[channel] + y * chroma_stride * 2, pixels[channel], chroma_width * 2); + } + } + } +} + + void de265_image::fill_image(int y,int cb,int cr) { - if (y>=0) { - memset(pixels[0], y, stride * height); + if (pixels[0]) { + fill_plane(0, y); } - if (cb>=0) { - memset(pixels[1], cb, chroma_stride * chroma_height); + if (pixels[1]) { + fill_plane(1, cb); } - if (cr>=0) { - memset(pixels[2], cr, chroma_stride * chroma_height); + if (pixels[2]) { + fill_plane(2, cr); } } diff -Nru libde265-1.0.15/libde265/image.h libde265-1.0.16/libde265/image.h --- libde265-1.0.15/libde265/image.h 2023-11-23 19:43:05.000000000 +0100 +++ libde265-1.0.16/libde265/image.h 2025-04-26 22:58:45.000000000 +0200 @@ -244,6 +244,7 @@ } void fill_image(int y,int u,int v); + void fill_plane(int channel, int value); de265_error copy_image(const de265_image* src); void copy_lines_from(const de265_image* src, int first, int end); void exchange_pixel_data_with(de265_image&); @@ -428,7 +429,7 @@ void* userdata); */ - uint8_t integrity; /* Whether an error occured while the image was decoded. + uint8_t integrity; /* Whether an error occurred while the image was decoded. When generated, this is initialized to INTEGRITY_CORRECT, and changed on decoding errors. */ diff -Nru libde265-1.0.15/libde265/image-io.cc libde265-1.0.16/libde265/image-io.cc --- libde265-1.0.15/libde265/image-io.cc 2022-10-19 16:34:13.000000000 +0200 +++ libde265-1.0.16/libde265/image-io.cc 2025-04-26 22:58:45.000000000 +0200 @@ -30,6 +30,9 @@ } +ImageSource::~ImageSource() { } + + ImageSource_YUV::ImageSource_YUV() : mFH(NULL) { @@ -131,6 +134,23 @@ } +int ImageSource_YUV::get_width() const +{ + return width; +} + + +int ImageSource_YUV::get_height() const +{ + return height; +} + + + + +ImageSink::~ImageSink() { } + +ImageSink_YUV::ImageSink_YUV() : mFH(NULL) { } ImageSink_YUV::~ImageSink_YUV() @@ -180,6 +200,8 @@ +PacketSink::~PacketSink() { } + PacketSink_File::PacketSink_File() : mFH(NULL) { diff -Nru libde265-1.0.15/libde265/image-io.h libde265-1.0.16/libde265/image-io.h --- libde265-1.0.15/libde265/image-io.h 2021-01-24 20:57:57.000000000 +0100 +++ libde265-1.0.16/libde265/image-io.h 2025-04-26 22:58:45.000000000 +0200 @@ -31,7 +31,7 @@ { public: LIBDE265_API ImageSource(); - virtual LIBDE265_API ~ImageSource() { } + virtual LIBDE265_API ~ImageSource(); //enum ImageStatus { Available, Waiting, EndOfVideo }; @@ -57,8 +57,8 @@ virtual LIBDE265_API de265_image* get_image(bool block=true); virtual LIBDE265_API void skip_frames(int n); - virtual LIBDE265_API int get_width() const { return width; } - virtual LIBDE265_API int get_height() const { return height; } + virtual LIBDE265_API int get_width() const; + virtual LIBDE265_API int get_height() const; private: FILE* mFH; @@ -74,7 +74,7 @@ class ImageSink { public: - virtual LIBDE265_API ~ImageSink() { } + virtual LIBDE265_API ~ImageSink(); virtual LIBDE265_API void send_image(const de265_image* img) = 0; }; @@ -82,7 +82,7 @@ class ImageSink_YUV : public ImageSink { public: - LIBDE265_API ImageSink_YUV() : mFH(NULL) { } + LIBDE265_API ImageSink_YUV(); LIBDE265_API ~ImageSink_YUV(); bool LIBDE265_API set_filename(const char* filename); @@ -98,7 +98,7 @@ class PacketSink { public: - virtual LIBDE265_API ~PacketSink() { } + virtual LIBDE265_API ~PacketSink(); virtual LIBDE265_API void send_packet(const uint8_t* data, int n) = 0; }; diff -Nru libde265-1.0.15/libde265/Makefile.in libde265-1.0.16/libde265/Makefile.in --- libde265-1.0.15/libde265/Makefile.in 2023-12-20 11:44:08.000000000 +0100 +++ libde265-1.0.16/libde265/Makefile.in 2025-05-04 00:05:52.000000000 +0200 @@ -395,6 +395,7 @@ LIBDE265_REVISION = @LIBDE265_REVISION@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ +LIBS_PRIVATE = @LIBS_PRIVATE@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ diff -Nru libde265-1.0.15/libde265/motion.cc libde265-1.0.16/libde265/motion.cc --- libde265-1.0.15/libde265/motion.cc 2023-11-23 19:43:32.000000000 +0100 +++ libde265-1.0.16/libde265/motion.cc 2025-04-26 22:58:45.000000000 +0200 @@ -389,7 +389,7 @@ l,vi->mv[l].x,vi->mv[l].y,refPic->PicOrderCntVal); - // TODO: must predSamples stride really be nCS or can it be somthing smaller like nPbW? + // TODO: must predSamples stride really be nCS or can it be something smaller like nPbW? if (img->high_bit_depth(0)) { mc_luma(ctx, sps, vi->mv[l].x, vi->mv[l].y, xP,yP, @@ -795,7 +795,7 @@ A maximum of 4 candidates are generated. - Note 1: For a CB splitted into two PBs, it does not make sense to merge the + Note 1: For a CB split into two PBs, it does not make sense to merge the second part to the parameters of the first part, since then, we could use 2Nx2N right away. -> Exclude this candidate. */ diff -Nru libde265-1.0.15/libde265/nal-parser.cc libde265-1.0.16/libde265/nal-parser.cc --- libde265-1.0.15/libde265/nal-parser.cc 2023-11-04 15:31:00.000000000 +0100 +++ libde265-1.0.16/libde265/nal-parser.cc 2025-05-03 23:59:28.000000000 +0200 @@ -105,7 +105,8 @@ int NAL_unit::num_skipped_bytes_before(int byte_position, int headerLength) const { for (int k=skipped_bytes.size()-1;k>=0;k--) - if (skipped_bytes[k]-headerLength <= byte_position) { + if (skipped_bytes[k] >= headerLength && + skipped_bytes[k]-headerLength <= byte_position) { return k+1; } diff -Nru libde265-1.0.15/libde265/refpic.cc libde265-1.0.16/libde265/refpic.cc --- libde265-1.0.15/libde265/refpic.cc 2023-11-04 15:31:00.000000000 +0100 +++ libde265-1.0.16/libde265/refpic.cc 2025-04-26 22:58:45.000000000 +0200 @@ -79,7 +79,7 @@ - as a list of the relative POC deltas themselves, or - by shifting an existing ref-pic-set by some number of frames When shifting an existing set, the frame 0 is also shifted as an additional reference frame. - When coding the ref-pic-sets in the SPS, predicition is always from the previous set. + When coding the ref-pic-sets in the SPS, prediction is always from the previous set. In the slice header, the ref-pic-set can use any previous set as reference. */ bool read_short_term_ref_pic_set(error_queue* errqueue, diff -Nru libde265-1.0.15/libde265/sao.cc libde265-1.0.16/libde265/sao.cc --- libde265-1.0.15/libde265/sao.cc 2023-02-20 13:02:19.000000000 +0100 +++ libde265-1.0.16/libde265/sao.cc 2025-04-26 22:58:45.000000000 +0200 @@ -212,20 +212,15 @@ } // Shifts are a strange thing. On x86, >>x actually computes >>(x%64). - // So we have to take care of large bandShifts. - int bandIdx; - if (bandShift >= 8) { - bandIdx = 0; - } else { - int pixel = in_img[xC+i+(yC+j)*in_stride]; + // But this should never happen, because the maximum bit-depth is 16. + int pixel = in_img[xC + i + (yC + j) * in_stride]; - // Note: the input pixel value should never exceed the valid range, but it seems that it still does, - // maybe when there was a decoding error and the pixels have not been filled in correctly. - // Thus, we have to limit the pixel range to ensure that we have no illegal table access. - pixel = Clip3(0,maxPixelValue, pixel); + // Note: the input pixel value should never exceed the valid range, but it seems that it still does, + // maybe when there was a decoding error and the pixels have not been filled in correctly. + // Thus, we have to limit the pixel range to ensure that we have no illegal table access. + pixel = Clip3(0, maxPixelValue, pixel); - bandIdx = bandTable[ pixel>>bandShift ]; - } + int bandIdx = bandTable[pixel >> bandShift]; if (bandIdx>0) { int offset = saoinfo->saoOffsetVal[cIdx][bandIdx-1]; @@ -247,20 +242,14 @@ for (int j=0;j<ctbH;j++) for (int i=0;i<ctbW;i++) { - // see above - int bandIdx; - if (bandShift >= 8) { - bandIdx = 0; - } else { - int pixel = in_img[xC+i+(yC+j)*in_stride]; - - // Note: the input pixel value should never exceed the valid range, but it seems that it still does, - // maybe when there was a decoding error and the pixels have not been filled in correctly. - // Thus, we have to limit the pixel range to ensure that we have no illegal table access. - pixel = Clip3(0,maxPixelValue, pixel); + int pixel = in_img[xC + i + (yC + j) * in_stride]; + + // Note: the input pixel value should never exceed the valid range, but it seems that it still does, + // maybe when there was a decoding error and the pixels have not been filled in correctly. + // Thus, we have to limit the pixel range to ensure that we have no illegal table access. + pixel = Clip3(0, maxPixelValue, pixel); - bandIdx = bandTable[ pixel>>bandShift ]; - } + int bandIdx = bandTable[pixel >> bandShift]; if (bandIdx>0) { int offset = saoinfo->saoOffsetVal[cIdx][bandIdx-1]; diff -Nru libde265-1.0.15/libde265/transform.cc libde265-1.0.16/libde265/transform.cc --- libde265-1.0.15/libde265/transform.cc 2023-01-27 14:21:54.000000000 +0100 +++ libde265-1.0.16/libde265/transform.cc 2025-05-03 18:49:50.000000000 +0200 @@ -489,6 +489,11 @@ const uint8_t* sclist; int matrixID = cIdx; + + if (nT==32) { + matrixID=0; + } + if (!intra) { if (nT<32) { matrixID += 3; } else { matrixID++; } @@ -653,7 +658,7 @@ //#define QUANT_IQUANT_SHIFT 20 // Q(QP%6) * IQ(QP%6) = 2^20 #define QUANT_SHIFT 14 // Q(4) = 2^14 -//#define SCALE_BITS 15 // Inherited from TMuC, pressumably for fractional bit estimates in RDOQ +//#define SCALE_BITS 15 // Inherited from TMuC, presumably for fractional bit estimates in RDOQ #define MAX_TR_DYNAMIC_RANGE 15 // Maximum transform dynamic range (excluding sign bit) diff -Nru libde265-1.0.15/libde265/vui.cc libde265-1.0.16/libde265/vui.cc --- libde265-1.0.15/libde265/vui.cc 2023-01-27 14:21:54.000000000 +0100 +++ libde265-1.0.16/libde265/vui.cc 2025-04-26 22:58:45.000000000 +0200 @@ -187,8 +187,8 @@ fixed_pic_rate_within_cvs_flag[i] = true; } - low_delay_hrd_flag[i] = 0;// Infered to be 0 when not present - cpb_cnt_minus1[i] = 0; // Infered to be 0 when not present + low_delay_hrd_flag[i] = 0;// Inferred to be 0 when not present + cpb_cnt_minus1[i] = 0; // Inferred to be 0 when not present if (fixed_pic_rate_within_cvs_flag[i]) { diff -Nru libde265-1.0.15/libde265/x86/Makefile.in libde265-1.0.16/libde265/x86/Makefile.in --- libde265-1.0.15/libde265/x86/Makefile.in 2023-12-20 11:44:08.000000000 +0100 +++ libde265-1.0.16/libde265/x86/Makefile.in 2025-05-04 00:05:52.000000000 +0200 @@ -258,6 +258,7 @@ LIBDE265_REVISION = @LIBDE265_REVISION@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ +LIBS_PRIVATE = @LIBS_PRIVATE@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ diff -Nru libde265-1.0.15/libde265/x86/sse-dct.cc libde265-1.0.16/libde265/x86/sse-dct.cc --- libde265-1.0.15/libde265/x86/sse-dct.cc 2023-06-13 15:54:12.000000000 +0200 +++ libde265-1.0.16/libde265/x86/sse-dct.cc 2025-04-26 22:58:45.000000000 +0200 @@ -2114,7 +2114,7 @@ r4 = _mm_unpackhi_epi64(m128Tmp0, m128Tmp1); //1st half 2nd row - r6 = _mm_unpackhi_epi64(m128Tmp2, m128Tmp3); //2nd hald 2nd row + r6 = _mm_unpackhi_epi64(m128Tmp2, m128Tmp3); //2nd half 2nd row m128Tmp0 = _mm_unpackhi_epi32(E0l, E1l); m128Tmp1 = _mm_unpackhi_epi32(E2l, E3l); @@ -4924,7 +4924,7 @@ m128iS14= _mm_unpackhi_epi64(m128Tmp4,m128Tmp5); //third quarter m128iS15= _mm_unpackhi_epi64(m128Tmp6,m128Tmp7); //last quarter - //fith row + //fifth row m128Tmp0= _mm_unpacklo_epi32(E0h,E1h); m128Tmp1= _mm_unpacklo_epi32(E2h,E3h); diff -Nru libde265-1.0.15/libde265/x86/sse-motion.cc libde265-1.0.16/libde265/x86/sse-motion.cc --- libde265-1.0.15/libde265/x86/sse-motion.cc 2021-01-24 20:57:57.000000000 +0100 +++ libde265-1.0.16/libde265/x86/sse-motion.cc 2025-04-26 22:58:45.000000000 +0200 @@ -3527,9 +3527,9 @@ r0 = _mm_srli_epi32(r0, 6); r1 = _mm_and_si128(r1, - _mm_set_epi16(0, 65535, 0, 65535, 0, 65535, 0, 65535)); + _mm_set_epi16(0, -1, 0, -1, 0, -1, 0, -1)); r0 = _mm_and_si128(r0, - _mm_set_epi16(0, 65535, 0, 65535, 0, 65535, 0, 65535)); + _mm_set_epi16(0, -1, 0, -1, 0, -1, 0, -1)); r0 = _mm_hadd_epi16(r0, r1); _mm_store_si128((__m128i *) &dst[x], r0); @@ -3710,9 +3710,9 @@ r0 = _mm_srli_epi32(r0, 6); r1 = _mm_and_si128(r1, - _mm_set_epi16(0, 65535, 0, 65535, 0, 65535, 0, 65535)); + _mm_set_epi16(0, -1, 0, -1, 0, -1, 0, -1)); r0 = _mm_and_si128(r0, - _mm_set_epi16(0, 65535, 0, 65535, 0, 65535, 0, 65535)); + _mm_set_epi16(0, -1, 0, -1, 0, -1, 0, -1)); r0 = _mm_hadd_epi16(r0, r1); _mm_store_si128((__m128i *) &dst[x], r0); @@ -3887,9 +3887,9 @@ r0 = _mm_srli_epi32(r0, 6); r1 = _mm_and_si128(r1, - _mm_set_epi16(0, 65535, 0, 65535, 0, 65535, 0, 65535)); + _mm_set_epi16(0, -1, 0, -1, 0, -1, 0, -1)); r0 = _mm_and_si128(r0, - _mm_set_epi16(0, 65535, 0, 65535, 0, 65535, 0, 65535)); + _mm_set_epi16(0, -1, 0, -1, 0, -1, 0, -1)); r0 = _mm_hadd_epi16(r0, r1); _mm_store_si128((__m128i *) &dst[x], r0); @@ -4058,9 +4058,9 @@ r0 = _mm_srli_epi32(r0, 6); r1 = _mm_and_si128(r1, - _mm_set_epi16(0, 65535, 0, 65535, 0, 65535, 0, 65535)); + _mm_set_epi16(0, -1, 0, -1, 0, -1, 0, -1)); r0 = _mm_and_si128(r0, - _mm_set_epi16(0, 65535, 0, 65535, 0, 65535, 0, 65535)); + _mm_set_epi16(0, -1, 0, -1, 0, -1, 0, -1)); r0 = _mm_hadd_epi16(r0, r1); _mm_store_si128((__m128i *) &dst[x], r0); @@ -4241,9 +4241,9 @@ r0 = _mm_srli_epi32(r0, 6); r1 = _mm_and_si128(r1, - _mm_set_epi16(0, 65535, 0, 65535, 0, 65535, 0, 65535)); + _mm_set_epi16(0, -1, 0, -1, 0, -1, 0, -1)); r0 = _mm_and_si128(r0, - _mm_set_epi16(0, 65535, 0, 65535, 0, 65535, 0, 65535)); + _mm_set_epi16(0, -1, 0, -1, 0, -1, 0, -1)); r0 = _mm_hadd_epi16(r0, r1); _mm_store_si128((__m128i *) &dst[x], r0); @@ -4419,9 +4419,9 @@ r0 = _mm_srli_epi32(r0, 6); r1 = _mm_and_si128(r1, - _mm_set_epi16(0, 65535, 0, 65535, 0, 65535, 0, 65535)); + _mm_set_epi16(0, -1, 0, -1, 0, -1, 0, -1)); r0 = _mm_and_si128(r0, - _mm_set_epi16(0, 65535, 0, 65535, 0, 65535, 0, 65535)); + _mm_set_epi16(0, -1, 0, -1, 0, -1, 0, -1)); r0 = _mm_hadd_epi16(r0, r1); _mm_store_si128((__m128i *) &dst[x], r0); @@ -4592,9 +4592,9 @@ r0 = _mm_srli_epi32(r0, 6); r1 = _mm_and_si128(r1, - _mm_set_epi16(0, 65535, 0, 65535, 0, 65535, 0, 65535)); + _mm_set_epi16(0, -1, 0, -1, 0, -1, 0, -1)); r0 = _mm_and_si128(r0, - _mm_set_epi16(0, 65535, 0, 65535, 0, 65535, 0, 65535)); + _mm_set_epi16(0, -1, 0, -1, 0, -1, 0, -1)); r0 = _mm_hadd_epi16(r0, r1); _mm_store_si128((__m128i *) &dst[x], r0); @@ -4778,9 +4778,9 @@ r0 = _mm_srli_epi32(r0, 6); r1 = _mm_and_si128(r1, - _mm_set_epi16(0, 65535, 0, 65535, 0, 65535, 0, 65535)); + _mm_set_epi16(0, -1, 0, -1, 0, -1, 0, -1)); r0 = _mm_and_si128(r0, - _mm_set_epi16(0, 65535, 0, 65535, 0, 65535, 0, 65535)); + _mm_set_epi16(0, -1, 0, -1, 0, -1, 0, -1)); r0 = _mm_hadd_epi16(r0, r1); _mm_store_si128((__m128i *) &dst[x], r0); @@ -4958,9 +4958,9 @@ r0 = _mm_srli_epi32(r0, 6); r1 = _mm_and_si128(r1, - _mm_set_epi16(0, 65535, 0, 65535, 0, 65535, 0, 65535)); + _mm_set_epi16(0, -1, 0, -1, 0, -1, 0, -1)); r0 = _mm_and_si128(r0, - _mm_set_epi16(0, 65535, 0, 65535, 0, 65535, 0, 65535)); + _mm_set_epi16(0, -1, 0, -1, 0, -1, 0, -1)); r0 = _mm_hadd_epi16(r0, r1); _mm_store_si128((__m128i *) &dst[x], r0); diff -Nru libde265-1.0.15/Makefile.am libde265-1.0.16/Makefile.am --- libde265-1.0.15/Makefile.am 2023-02-20 13:02:19.000000000 +0100 +++ libde265-1.0.16/Makefile.am 2025-04-26 22:58:45.000000000 +0200 @@ -13,7 +13,10 @@ endif SUBDIRS+=tools -SUBDIRS+=acceleration-speed + +# Remove acceleration-speed test program, because it needs many internal functions (that have to be dllexported). +# On the other hand, that tool was only used for development. +# SUBDIRS+=acceleration-speed if ENABLE_SHERLOCK265 SUBDIRS+=sherlock265 diff -Nru libde265-1.0.15/Makefile.in libde265-1.0.16/Makefile.in --- libde265-1.0.15/Makefile.in 2023-12-20 11:44:08.000000000 +0100 +++ libde265-1.0.16/Makefile.in 2025-05-04 00:05:52.000000000 +0200 @@ -91,6 +91,10 @@ target_triplet = @target@ @ENABLE_DEC265_TRUE@am__append_1 = dec265 @ENABLE_ENCODER_TRUE@am__append_2 = enc265 + +# Remove acceleration-speed test program, because it needs many internal functions (that have to be dllexported). +# On the other hand, that tool was only used for development. +# SUBDIRS+=acceleration-speed @ENABLE_SHERLOCK265_TRUE@am__append_3 = sherlock265 subdir = . ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 @@ -193,8 +197,7 @@ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | $(am__uniquify_input)` -DIST_SUBDIRS = libde265 dec265 enc265 tools acceleration-speed \ - sherlock265 +DIST_SUBDIRS = libde265 dec265 enc265 tools sherlock265 am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/config.h.in \ $(srcdir)/libde265.pc.in AUTHORS COPYING ChangeLog INSTALL \ NEWS README compile config.guess config.sub depcomp install-sh \ @@ -292,6 +295,7 @@ LIBDE265_REVISION = @LIBDE265_REVISION@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ +LIBS_PRIVATE = @LIBS_PRIVATE@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ @@ -393,7 +397,7 @@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ SUBDIRS = libde265 $(am__append_1) $(am__append_2) tools \ - acceleration-speed $(am__append_3) + $(am__append_3) ACLOCAL_AMFLAGS = -I m4 EXTRA_DIST = \ autogen.sh \ diff -Nru libde265-1.0.15/README.md libde265-1.0.16/README.md --- libde265-1.0.15/README.md 2023-11-21 09:44:01.000000000 +0100 +++ libde265-1.0.16/README.md 2025-04-26 22:58:45.000000000 +0200 @@ -162,6 +162,6 @@ The short video clip in the 'testdata' directory is from the movie 'Girl Shy', which is in the public domain. -Copyright (c) 2013-2014 Struktur AG -Copyright (c) 2013-2023 Dirk Farin +Copyright (c) 2013-2014 Struktur AG<br> +Copyright (c) 2013-2024 Dirk Farin<br> Contact: Dirk Farin <dirk.farin@gmail.com> diff -Nru libde265-1.0.15/sherlock265/Makefile.in libde265-1.0.16/sherlock265/Makefile.in --- libde265-1.0.15/sherlock265/Makefile.in 2023-12-20 11:44:08.000000000 +0100 +++ libde265-1.0.16/sherlock265/Makefile.in 2025-05-04 00:05:52.000000000 +0200 @@ -263,6 +263,7 @@ LIBDE265_REVISION = @LIBDE265_REVISION@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ +LIBS_PRIVATE = @LIBS_PRIVATE@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ diff -Nru libde265-1.0.15/sherlock265/README libde265-1.0.16/sherlock265/README --- libde265-1.0.15/sherlock265/README 2021-01-24 20:57:58.000000000 +0100 +++ libde265-1.0.16/sherlock265/README 2025-04-26 22:58:45.000000000 +0200 @@ -7,7 +7,7 @@ PBs for prediction and TBs for residual transforms. PB - Show Prediction Block structure. CB blocks may be further - subdivided, possibly using asymetric partitionings. This is + subdivided, possibly using asymmetric partitionings. This is the level on which motion-compensation and intra-prediction is performed. diff -Nru libde265-1.0.15/tools/Makefile.in libde265-1.0.16/tools/Makefile.in --- libde265-1.0.15/tools/Makefile.in 2023-12-20 11:44:08.000000000 +0100 +++ libde265-1.0.16/tools/Makefile.in 2025-05-04 00:05:52.000000000 +0200 @@ -268,6 +268,7 @@ LIBDE265_REVISION = @LIBDE265_REVISION@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ +LIBS_PRIVATE = @LIBS_PRIVATE@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@
Attachment:
OpenPGP_signature.asc
Description: OpenPGP digital signature