Projects
Essentials
xvid
Sign Up
Log In
Username
Password
We truncated the diff of some files because they were too big. If you want to see the full diff for every file,
click here
.
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
Expand all
Collapse all
Changes of Revision 12
View file
xvidcore.changes
Changed
@@ -1,4 +1,11 @@ ------------------------------------------------------------------- +Tue Jun 2 06:25:14 UTC 2020 - Luigi Baldoni <aloisio@gmx.com> + +- Update to version 1.3.7 (see ChangeLog) +- Update source URL +- Drop remove-.rotext.patch (included upstream) + +------------------------------------------------------------------- Sat Oct 27 14:39:49 UTC 2018 - jslaby@suse.cz - fix crashes on init (add remove-.rotext.patch)
View file
xvidcore.spec
Changed
@@ -1,6 +1,7 @@ # # spec file for package xvidcore # +# Copyright (c) 2020 Packman Team <packman@links2linux.de> # Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties @@ -12,29 +13,24 @@ # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. -# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# Please submit bugfixes or comments via https://bugs.links2linux.org/ # %define soname 4 Name: xvidcore -Version: 1.3.5 +Version: 1.3.7 Release: 0 Summary: Xvid is a high quality MPEG-4 ASP video codec -License: GPL-2.0+ +License: GPL-2.0-or-later Group: Productivity/Multimedia/Video/Editors and Convertors -Url: http://www.xvid.org/ -Source0: http://downloads.xvid.org/downloads/xvidcore-%{version}.tar.bz2 +URL: https://www.xvid.com/ +Source0: https://downloads.xvid.com/downloads/xvidcore-%{version}.tar.bz2 Source1: baselibs.conf -Patch0: remove-.rotext.patch +BuildRequires: dos2unix BuildRequires: gcc-c++ -BuildRequires: make BuildRequires: nasm BuildRequires: pkgconfig -Requires: lib%{name}%{soname} = %{version} -Provides: xvid = %{version} -Obsoletes: xvid < %{version} -BuildRoot: %{_tmppath}/%{name}-%{version}-build %description Xvid is a high quality MPEG-4 ASP video codec. @@ -53,8 +49,6 @@ Summary(de): Entwicklerdateien des XviD Video-Codecs Group: Development/Libraries/C and C++ Requires: lib%{name}%{soname} = %{version} -Provides: xvid-devel = %{version} -Obsoletes: xvid-devel < %{version} %description -n lib%{name}-devel Xvid is a high quality MPEG-4 ASP video codec. @@ -79,12 +73,12 @@ %prep %setup -q -n "%{name}" -%autopatch -p1 +dos2unix ChangeLog %build cd build/generic %configure -make %{?_smp_mflags} +%make_build %install install -d "%{buildroot}%{_libdir}" @@ -106,18 +100,15 @@ %post -n lib%{name}%{soname} -p /sbin/ldconfig %postun -n lib%{name}%{soname} -p /sbin/ldconfig -%files -%defattr(644,root,root,755) -%doc AUTHORS ChangeLog LICENSE README TODO - %files -n lib%{name}-devel %defattr(644,root,root,755) -%doc CodingStyle doc examples +%doc AUTHORS ChangeLog CodingStyle README TODO examples %{_includedir}/*.h %{_libdir}/*.so %files -n lib%{name}%{soname} %defattr(644,root,root) +%license LICENSE %{_libdir}/libxvidcore.so.%{soname}* %changelog
View file
remove-.rotext.patch
Deleted
@@ -1,58 +0,0 @@ -From: Jiri Slaby <jslaby@suse.cz> -Subject: remove .rotext section -Patch-mainline: haven't tried to submit - -avidemux and others crash right when the initialization routine of xvid -(xvid_global) is called: -> #0 0x00007fffde18d920 in check_cpu_features () from /usr/lib64/libxvidcore.so.4 -> #1 0x00007fffde1070db in detect_cpu_flags () at ../../src/xvid.c:156 -> #2 0x00007fffde1081e5 in xvid_gbl_init (init=0x7fffffffd304, init=0x7fffffffd304) at ../../src/xvid.c:793 -> #3 xvid_global (handle=<optimized out>, opt=<optimized out>, param1=0x7fffffffd304, param2=<optimized out>) at ../../src/xvid.c:816 -... - -It is because xvid tries to call a function written in assembly and the -authors decided to put it in a section called .rotext. The same as other -assembly functions: - 15 .rotext 00022f69 0000000000075140 0000000000075140 00075140 2**5 - CONTENTS, ALLOC, LOAD, READONLY, DATA - -As can be seen, it is marked as DATA and not CODE, so it ends up in data -program headers without permissions to execute it: - LOAD 0x000000000006a000 0x000000000006a000 0x000000000006a000 - 0x0000000000035070 0x0000000000035070 R 0x1000 - -... - Section to Segment mapping: - Segment Sections... - 02 .rodata .rotext .eh_frame_hdr .eh_frame - -So kill .rotext which is no "standard" section and use .text as usual. -Note that .text *is* read-only in any way: - LOAD 0x0000000000002000 0x0000000000002000 0x0000000000002000 - 0x000000000008a1d5 0x000000000008a1d5 R E 0x1000 - -This could work in the past versions of binutils/nasm, but not with my: -binutils-2.31 -nasm-2.13.03 ---- - src/nasm.inc | 8 -------- - 1 file changed, 8 deletions(-) - ---- a/src/nasm.inc -+++ b/src/nasm.inc -@@ -175,15 +175,7 @@ BITS 32 - %endmacro - - %macro TEXT 0 --%ifidn __OUTPUT_FORMAT__,macho32 - SECTION .text align=SECTION_ALIGN --%else --%ifidn __OUTPUT_FORMAT__,macho64 -- SECTION .text align=SECTION_ALIGN --%else -- SECTION .rotext align=SECTION_ALIGN --%endif --%endif - %endmacro - - %macro cglobal 1
View file
xvidcore-1.3.5.tar.bz2/ChangeLog -> xvidcore-1.3.7.tar.bz2/ChangeLog
Changed
@@ -1,5 +1,24 @@ # Note that this ChangeLog covers only main changes to the release branch +2019-12-28 09:43 Isibaar + * xvidcore/src/quant/quant_matrix.c: Fix stupid regression due + to wrong brackets... + +2019-11-12 14:48 Isibaar + * xvidcore/src/bitstream/bitstream.c + * xvidcore/src/bitstream/bitstream.h + * xvidcore/src/bitstream/mbcoding.c + * xvidcore/src/decoder.c + * xvidcore/src/global.h + * xvidcore/src/image/colorspace.c + * xvidcore/src/motion/gmc.c + * xvidcore/src/quant/quant_matrix.c + * xvidcore/src/xvid.h: Backporting patches from HEAD + +2019-01-17 10:33 Isibaar + * xvidcore/src/nasm.inc: always use .text for machine (Patch + by Peter Ross) + 2017-07-12 08:23 Isibaar * xvidcore/vfw/src/codec.c: Re-add support to decode raw YV12 input FourCC video
View file
xvidcore-1.3.5.tar.bz2/build/generic/configure -> xvidcore-1.3.7.tar.bz2/build/generic/configure
Changed
@@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for Xvid 1.3.5. +# Generated by GNU Autoconf 2.69 for Xvid 1.3.7. # # Report bugs to <xvid-devel@xvid.org>. # @@ -580,8 +580,8 @@ # Identity of this package. PACKAGE_NAME='Xvid' PACKAGE_TARNAME='xvid' -PACKAGE_VERSION='1.3.5' -PACKAGE_STRING='Xvid 1.3.5' +PACKAGE_VERSION='1.3.7' +PACKAGE_STRING='Xvid 1.3.7' PACKAGE_BUGREPORT='xvid-devel@xvid.org' PACKAGE_URL='' @@ -1277,7 +1277,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 Xvid 1.3.5 to adapt to many kinds of systems. +\`configure' configures Xvid 1.3.7 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1343,7 +1343,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of Xvid 1.3.5:";; + short | recursive ) echo "Configuration of Xvid 1.3.7:";; esac cat <<\_ACEOF @@ -1434,7 +1434,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -Xvid configure 1.3.5 +Xvid configure 1.3.7 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -1919,7 +1919,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by Xvid $as_me 1.3.5, which was +It was created by Xvid $as_me 1.3.7, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -5617,7 +5617,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by Xvid $as_me 1.3.5, which was +This file was extended by Xvid $as_me 1.3.7, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -5670,7 +5670,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -Xvid config.status 1.3.5 +Xvid config.status 1.3.7 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\"
View file
xvidcore-1.3.5.tar.bz2/build/generic/configure.in -> xvidcore-1.3.7.tar.bz2/build/generic/configure.in
Changed
@@ -8,7 +8,7 @@ AC_PREREQ([2.50]) -AC_INIT([Xvid], [1.3.5], [xvid-devel@xvid.org]) +AC_INIT([Xvid], [1.3.7], [xvid-devel@xvid.org]) AC_CONFIG_SRCDIR(configure.in) dnl Do not forget to increase that when needed.
View file
xvidcore-1.3.5.tar.bz2/src/bitstream/bitstream.c -> xvidcore-1.3.7.tar.bz2/src/bitstream/bitstream.c
Changed
@@ -20,7 +20,7 @@ * along with this program ; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: bitstream.c 1985 2011-05-18 09:02:35Z Isibaar $ + * $Id: bitstream.c 2180 2019-11-12 14:48:35Z Isibaar $ * ****************************************************************************/ @@ -153,6 +153,8 @@ READ_MARKER(); if (dec->time_inc_bits) time_increment = (BitstreamGetBits(bs, dec->time_inc_bits)); /* vop_time_increment */ + else + time_increment = 0; READ_MARKER(); DPRINTF(XVID_DEBUG_HEADER,"time %i:%i\n", time_base, time_increment); @@ -398,7 +400,6 @@ uint32_t start_code; uint32_t time_incr = 0; int32_t time_increment = 0; - int resize = 0; while ((BitstreamPos(bs) >> 3) + 4 <= bs->length) { @@ -466,6 +467,7 @@ BitstreamSkip(bs, 32); /* video_object_start_code */ } else if ((start_code & ~VIDOBJLAY_START_CODE_MASK) == VIDOBJLAY_START_CODE) { + uint32_t width = 0, height = 0; DPRINTF(XVID_DEBUG_STARTCODE, "<video_object_layer>\n"); DPRINTF(XVID_DEBUG_HEADER, "vol id %i\n", start_code & VIDOBJLAY_START_CODE_MASK); @@ -566,8 +568,6 @@ if (dec->shape != VIDOBJLAY_SHAPE_BINARY_ONLY) { if (dec->shape == VIDOBJLAY_SHAPE_RECTANGULAR) { - uint32_t width, height; - READ_MARKER(); width = BitstreamGetBits(bs, 13); /* video_object_layer_width */ READ_MARKER(); @@ -576,18 +576,6 @@ DPRINTF(XVID_DEBUG_HEADER, "width %i\n", width); DPRINTF(XVID_DEBUG_HEADER, "height %i\n", height); - - if (dec->width != width || dec->height != height) - { - if (dec->fixed_dimensions) - { - DPRINTF(XVID_DEBUG_ERROR, "decoder width/height does not match bitstream\n"); - return -1; - } - resize = 1; - dec->width = width; - dec->height = height; - } } dec->interlacing = BitstreamGetBit(bs); @@ -764,7 +752,19 @@ } - return (resize ? -3 : -2 ); /* VOL */ + if (((width > 0) && (height > 0)) && (dec->width != width || dec->height != height)) + { + if (dec->fixed_dimensions) + { + DPRINTF(XVID_DEBUG_ERROR, "decoder width/height does not match bitstream\n"); + return -1; + } + dec->width = width; + dec->height = height; + return -3; + } + + return -2; /* VOL */ } else if (start_code == GRPOFVOP_START_CODE) { @@ -860,8 +860,9 @@ dec->shape == VIDOBJLAY_SHAPE_RECTANGULAR && (coding_type == P_VOP || coding_type == I_VOP)) { - if (BitstreamGetBit(bs)); + if (BitstreamGetBit(bs)) { DPRINTF(XVID_DEBUG_ERROR, "RRV not supported (anymore)\n"); + } } if (dec->shape != VIDOBJLAY_SHAPE_RECTANGULAR) { @@ -919,7 +920,7 @@ int i; - for (i = 0 ; i < dec->sprite_warping_points; i++) + for (i = 0 ; i < MIN(4, dec->sprite_warping_points); i++) { int length; int x = 0, y = 0; @@ -981,7 +982,7 @@ } else if (start_code == USERDATA_START_CODE) { char tmp[256]; - int i, version, build; + int i, version = 0, build = 0; char packed; BitstreamSkip(bs, 32); /* user_data_start_code */ @@ -989,7 +990,7 @@ memset(tmp, 0, 256); tmp[0] = BitstreamShowBits(bs, 8); - for(i = 1; i < 256; i++){ + for(i = 1; i < 255; i++){ tmp[i] = (BitstreamShowBits(bs, 16) & 0xFF); if(tmp[i] == 0)
View file
xvidcore-1.3.5.tar.bz2/src/bitstream/bitstream.h -> xvidcore-1.3.7.tar.bz2/src/bitstream/bitstream.h
Changed
@@ -19,7 +19,7 @@ * along with this program ; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: bitstream.h 1985 2011-05-18 09:02:35Z Isibaar $ + * $Id: bitstream.h 2180 2019-11-12 14:48:35Z Isibaar $ * ****************************************************************************/ @@ -171,7 +171,9 @@ the end of the buffer. Padding might be appropriate. If only chunks of 4bytes are applicable, define XVID_SAFE_BS_TAIL. Note that this will slow decoding, so consider this as a last-resort solution */ -/* #define XVID_SAFE_BS_TAIL */ +#ifndef XVID_HAVE_PADDED_BS_BUFFER +#define XVID_SAFE_BS_TAIL +#endif /* initialise bitstream structure */
View file
xvidcore-1.3.5.tar.bz2/src/bitstream/mbcoding.c -> xvidcore-1.3.7.tar.bz2/src/bitstream/mbcoding.c
Changed
@@ -19,7 +19,7 @@ * along with this program ; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: mbcoding.c 1985 2011-05-18 09:02:35Z Isibaar $ + * $Id: mbcoding.c 2180 2019-11-12 14:48:35Z Isibaar $ * ****************************************************************************/ @@ -901,8 +901,8 @@ index -= 4; - BitstreamSkip(bs, TMNMVtab2[index].len); - return TMNMVtab2[index].code; + BitstreamSkip(bs, TMNMVtab2[index&0x7f].len); + return TMNMVtab2[index&0x7f].code; } @@ -1965,7 +1965,8 @@ {14, 10}, {14, 10}, {14, 10}, {14, 10}, {-14, 10}, {-14, 10}, {-14, 10}, {-14, 10}, {13, 10}, {13, 10}, {13, 10}, {13, 10}, - {-13, 10}, {-13, 10}, {-13, 10}, {-13, 10} + {-13, 10}, {-13, 10}, {-13, 10}, {-13, 10}, + {0, 0}, {0, 0}, {0, 0}, {0, 0} }; short const dc_threshold[] = {
View file
xvidcore-1.3.5.tar.bz2/src/decoder.c -> xvidcore-1.3.7.tar.bz2/src/decoder.c
Changed
@@ -20,7 +20,7 @@ * along with this program ; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: decoder.c 2130 2016-01-08 17:40:12Z Isibaar $ + * $Id: decoder.c 2180 2019-11-12 14:48:35Z Isibaar $ * ****************************************************************************/ @@ -149,6 +149,7 @@ int decoder_create(xvid_dec_create_t * create) { + int ret = 0; DECODER *dec; if (XVID_VERSION_MAJOR(create->version) != 1) /* v1.x.x */ @@ -169,8 +170,8 @@ create->handle = dec; - dec->width = create->width; - dec->height = create->height; + dec->width = MAX(0, create->width); + dec->height = MAX(0, create->height); dec->num_threads = MAX(0, create->num_threads); @@ -209,13 +210,10 @@ dec->fixed_dimensions = (dec->width > 0 && dec->height > 0); - if (dec->fixed_dimensions) { - int ret = decoder_resize(dec); - if (ret == XVID_ERR_MEMORY) create->handle = NULL; - return ret; - } - else - return 0; + ret = decoder_resize(dec); + if (ret == XVID_ERR_MEMORY) create->handle = NULL; + + return ret; } @@ -266,7 +264,7 @@ uint32_t stride2 = stride / 2; uint32_t next_block = stride * 8; uint32_t i; - uint32_t iQuant = pMB->quant; + uint32_t iQuant = MAX(1, pMB->quant); uint8_t *pY_Cur, *pU_Cur, *pV_Cur; pY_Cur = dec->cur.y + (y_pos << 4) * stride + (x_pos << 4); @@ -363,7 +361,7 @@ int stride = dec->edged_width; int i; - const uint32_t iQuant = pMB->quant; + const uint32_t iQuant = MAX(1, pMB->quant); const int direction = dec->alternate_vertical_scan ? 2 : 0; typedef void (*get_inter_block_function_t)( Bitstream * bs, @@ -1540,9 +1538,11 @@ img = &dec->tmp; } - image_output(img, dec->width, dec->height, - dec->edged_width, (uint8_t**)frame->output.plane, frame->output.stride, - frame->output.csp, dec->interlacing); + if ((frame->output.plane[0] != NULL) && (frame->output.stride[0] >= dec->width)) { + image_output(img, dec->width, dec->height, + dec->edged_width, (uint8_t**)frame->output.plane, frame->output.stride, + frame->output.csp, dec->interlacing); + } if (stats) { stats->type = coding2type(coding_type); @@ -1565,19 +1565,20 @@ { Bitstream bs; - uint32_t rounding; + uint32_t rounding = 0; uint32_t quant = 2; - uint32_t fcode_forward; - uint32_t fcode_backward; - uint32_t intra_dc_threshold; + uint32_t fcode_forward = 0; + uint32_t fcode_backward = 0; + uint32_t intra_dc_threshold = 0; WARPPOINTS gmc_warp; - int coding_type; + int coding_type = -1; int success, output, seen_something; if (XVID_VERSION_MAJOR(frame->version) != 1 || (stats && XVID_VERSION_MAJOR(stats->version) != 1)) /* v1.x.x */ return XVID_ERR_VERSION; start_global_timer(); + memset((void *)&gmc_warp, 0, sizeof(WARPPOINTS)); dec->low_delay_default = (frame->general & XVID_LOWDELAY); if ((frame->general & XVID_DISCONTINUITY)) @@ -1664,7 +1665,7 @@ goto repeat; } - if(dec->frames == 0 && coding_type != I_VOP) { + if((dec->frames == 0 && coding_type != I_VOP) || (!dec->width || !dec->height)) { /* 1st frame is not an i-vop */ goto repeat; }
View file
xvidcore-1.3.5.tar.bz2/src/global.h -> xvidcore-1.3.7.tar.bz2/src/global.h
Changed
@@ -19,7 +19,7 @@ * along with this program ; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: global.h 2057 2011-12-30 13:04:28Z Isibaar $ + * $Id: global.h 2180 2019-11-12 14:48:35Z Isibaar $ * ****************************************************************************/ @@ -81,7 +81,7 @@ typedef struct { - VECTOR duv[3]; + VECTOR duv[4]; } WARPPOINTS;
View file
xvidcore-1.3.5.tar.bz2/src/image/colorspace.c -> xvidcore-1.3.7.tar.bz2/src/image/colorspace.c
Changed
@@ -19,7 +19,7 @@ * along with this program ; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: colorspace.c 1985 2011-05-18 09:02:35Z Isibaar $ + * $Id: colorspace.c 2180 2019-11-12 14:48:35Z Isibaar $ * ****************************************************************************/ @@ -102,6 +102,7 @@ int y_dif = y_stride - fixed_width; \ int uv_dif = uv_stride - (fixed_width / 2); \ int x, y; \ + if ((x_ptr == NULL) || (x_dif < 0)) return; \ if (vflip) { \ x_ptr += (height - 1) * x_stride; \ x_dif = -(SIZE)*fixed_width - x_stride; \
View file
xvidcore-1.3.5.tar.bz2/src/image/image.c -> xvidcore-1.3.7.tar.bz2/src/image/image.c
Changed
@@ -19,7 +19,7 @@ * along with this program ; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: image.c 1985 2011-05-18 09:02:35Z Isibaar $ + * $Id: image.c 2172 2019-01-17 14:24:50Z Isibaar $ * ****************************************************************************/ @@ -415,10 +415,10 @@ /* packed conversions require height to be divisable by 2 (or even by 4 for interlaced conversion) */ - if (interlacing) - height_opt = height & (~3); - else - height_opt = height & (~1); + if (interlacing) + height_opt = height & (~3); + else + height_opt = height & (~1); func_opt(x_ptr, x_stride, y_ptr, u_ptr, v_ptr, y_stride, uv_stride,
View file
xvidcore-1.3.5.tar.bz2/src/motion/gmc.c -> xvidcore-1.3.7.tar.bz2/src/motion/gmc.c
Changed
@@ -19,7 +19,7 @@ * along with this program ; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: gmc.c 1985 2011-05-18 09:02:35Z Isibaar $ + * $Id: gmc.c 2180 2019-11-12 14:48:35Z Isibaar $ * ****************************************************************************/ @@ -269,7 +269,7 @@ { const int W = This->sW; const int H = This->sH; - const int rho = 3-This->accuracy; + const int rho = 3-MIN(This->accuracy, 3); const int32_t Rounder = ( 128 - (rounding<<(2*rho)) ) << 16;
View file
xvidcore-1.3.5.tar.bz2/src/nasm.inc -> xvidcore-1.3.7.tar.bz2/src/nasm.inc
Changed
@@ -1,221 +1,213 @@ -;/**************************************************************************** -; * -; * XVID MPEG-4 VIDEO CODEC -; * - NASM common header - -; * -; * Copyright (C) 2008 Michael Militzer -; * -; * This program 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 2 of the License, or -; * (at your option) any later version. -; * -; * This program 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 this program ; if not, write to the Free Software -; * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -; * -; * $Id: nasm.inc,v 1.7.2.2 2011-02-25 12:40:25 Isibaar Exp $ -; * -; ***************************************************************************/ - -%ifdef ARCH_IS_X86_64 - -BITS 64 -DEFAULT REL - -%define SECTION_ALIGN 32 - -%ifdef WINDOWS - -%define prm1 rcx -%define prm2 rdx -%define prm3 r8 -%define prm4 r9 -%define prm5 [rsp+40] -%define prm6 [rsp+48] -%define prm7 [rsp+56] -%define prm8 [rsp+64] - -%define prm1d ecx -%define prm2d edx -%define prm3d r8d -%define prm4d r9d -%define prm5d dword prm5 -%define prm6d dword prm6 -%define prm7d dword prm7 -%define prm8d dword prm8 - -%macro PUSH_XMM6_XMM7 0 - movdqa [_ESP+PTR_SIZE], xmm6 - movdqa [_ESP+PTR_SIZE+16], xmm7 -%endmacro - -%macro POP_XMM6_XMM7 0 - movdqa xmm6, [_ESP+PTR_SIZE] - movdqa xmm7, [_ESP+PTR_SIZE+16] -%endmacro - -%else ; Linux - -%define prm1 rdi -%define prm2 rsi -%define prm3 rdx -%define prm4 rcx -%define prm5 r8 -%define prm6 r9 -%define prm7 [rsp+8] -%define prm8 [rsp+16] - -%define prm1d edi -%define prm2d esi -%define prm3d edx -%define prm4d ecx -%define prm5d r8d -%define prm6d r9d -%define prm7d dword prm7 -%define prm8d dword prm8 - -%define PUSH_XMM6_XMM7 -%define POP_XMM6_XMM7 - -%endif - -%define _EAX rax -%define _EBX rbx -%define _ECX rcx -%define _EDX rdx -%define _ESI rsi -%define _EDI rdi -%define _EBP rbp -%define _ESP rsp - -%define TMP0 r10 -%define TMP1 r11 - -%define TMP0d r10d -%define TMP1d r11d - -%define PTR_SIZE 8 -%define PTR_TYPE qword - -%ifdef __YASM_VERSION_ID__ -%define XVID_MOVSXD movsxd -%else -%define XVID_MOVSXD movsx -%endif - -%else - -%define SECTION_ALIGN 16 - -BITS 32 - -%define prm1 [esp + 4] -%define prm2 [esp + 8] -%define prm3 [esp + 12] -%define prm4 [esp + 16] -%define prm5 [esp + 20] -%define prm6 [esp + 24] -%define prm7 [esp + 28] -%define prm8 [esp + 32] - -%define prm1d dword prm1 -%define prm2d dword prm2 -%define prm3d dword prm3 -%define prm4d dword prm4 -%define prm5d dword prm5 -%define prm6d dword prm6 -%define prm7d dword prm7 -%define prm8d dword prm8 - -%define _EAX eax -%define _EBX ebx -%define _ECX ecx -%define _EDX edx -%define _ESI esi -%define _EDI edi -%define _EBP ebp -%define _ESP esp - -%define TMP0 ecx -%define TMP1 edx - -%define TMP0d ecx -%define TMP1d edx - -%define PTR_SIZE 4 -%define PTR_TYPE dword - -%define PUSH_XMM6_XMM7 -%define POP_XMM6_XMM7 - -%define XVID_MOVSXD movsx -%endif - - -%ifdef WINDOWS - %define PREFIX -%endif - -%ifdef NO_PREFIX - %undef PREFIX -%endif - -%macro DATA 0 - %ifdef FORMAT_COFF - SECTION .rodata - %else - SECTION .rodata align=SECTION_ALIGN - %endif -%endmacro - -%macro TEXT 0 -%ifidn __OUTPUT_FORMAT__,macho32 - SECTION .text align=SECTION_ALIGN -%else -%ifidn __OUTPUT_FORMAT__,macho64 - SECTION .text align=SECTION_ALIGN -%else - SECTION .rotext align=SECTION_ALIGN -%endif -%endif -%endmacro - -%macro cglobal 1 - %ifdef PREFIX - %ifdef MARK_FUNCS - global _%1:function %1.endfunc-%1 - %define %1 _%1:function %1.endfunc-%1 - %define ENDFUNC .endfunc: - %else - global _%1 - %define %1 _%1 - %define ENDFUNC - %endif
View file
xvidcore-1.3.5.tar.bz2/src/quant/quant_matrix.c -> xvidcore-1.3.7.tar.bz2/src/quant/quant_matrix.c
Changed
@@ -20,10 +20,11 @@ * along with this program ; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: quant_matrix.c 1985 2011-05-18 09:02:35Z Isibaar $ + * $Id: quant_matrix.c 2188 2019-12-28 09:43:50Z Isibaar $ * ****************************************************************************/ +#include "../global.h" #include "quant_matrix.h" #define FIX(X) (((X)==1) ? 0xFFFF : ((1UL << 16) / (X) + 1)) @@ -114,7 +115,7 @@ uint16_t *intra_matrix = mpeg_quant_matrices + 0*64; for (i = 0; i < 64; i++) { - intra_matrix[i] = (!i) ? (uint16_t)8: (uint16_t)matrix[i]; + intra_matrix[i] = (!i) ? (uint16_t)8: (uint16_t)MAX(1, matrix[i]); } } @@ -141,7 +142,7 @@ uint16_t *inter_matrix_fixl = mpeg_quant_matrices + 7*64; for (i = 0; i < 64; i++) { - inter_matrix1[i] = ((inter_matrix[i] = (int16_t) matrix[i])>>1); + inter_matrix1[i] = ((inter_matrix[i] = (int16_t)MAX(1, matrix[i])) >> 1); inter_matrix1[i] += ((inter_matrix[i] == 1) ? 1: 0); inter_matrix_fix[i] = (uint16_t) FIX(inter_matrix[i]); inter_matrix_fixl[i] = (uint16_t) FIXL(inter_matrix[i]);
View file
xvidcore-1.3.5.tar.bz2/src/xvid.c -> xvidcore-1.3.7.tar.bz2/src/xvid.c
Changed
@@ -20,7 +20,7 @@ * along with this program ; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: xvid.c 2130 2016-01-08 17:40:12Z Isibaar $ + * $Id: xvid.c 2190 2019-12-28 09:56:26Z Isibaar $ * ****************************************************************************/ @@ -699,7 +699,7 @@ return XVID_ERR_VERSION; info->actual_version = XVID_VERSION; - info->build = "xvid-1.3.5"; + info->build = "xvid-1.3.7"; info->cpu_flags = detect_cpu_flags(); info->num_threads = 0; /* single-thread */
View file
xvidcore-1.3.5.tar.bz2/src/xvid.h -> xvidcore-1.3.7.tar.bz2/src/xvid.h
Changed
@@ -19,7 +19,7 @@ * along with this program ; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: xvid.h 2130 2016-01-08 17:40:12Z Isibaar $ + * $Id: xvid.h 2190 2019-12-28 09:56:26Z Isibaar $ * ****************************************************************************/ @@ -57,7 +57,7 @@ #define XVID_API_MAJOR(a) (((a)>>16) & 0xff) #define XVID_API_MINOR(a) (((a)>> 0) & 0xff) -#define XVID_VERSION XVID_MAKE_VERSION(1,3,5) +#define XVID_VERSION XVID_MAKE_VERSION(1,3,7) #define XVID_API XVID_MAKE_API(4, 3) /* Bitstream Version @@ -71,7 +71,7 @@ * doesnt hurt but not increasing it could cause difficulty for decoders in the * future */ -#define XVID_BS_VERSION 67 +#define XVID_BS_VERSION 69 /***************************************************************************** * error codes @@ -447,8 +447,8 @@ int sse_v; /* [out] V plane's sse */ /* End of duplicated data, kept only for binary compatibility */ - int bquant_ratio; /* [in] */ - int bquant_offset; /* [in] */ + int bquant_ratio; /* [out] */ + int bquant_offset; /* [out] */ xvid_enc_stats_t stats; /* [out] frame statistics */ } xvid_plg_data_t;
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.