...
 
Commits (2622)

Too many changes to show.

To preserve performance only 1000 of 1000+ files are displayed.

......@@ -8,8 +8,9 @@ Jean-Baptiste Kempf <jb@videolan.org>
<jb@videolan.org> <jb@sasmira.(none)>
Jean-Baptiste Kempf <jb@videolan.org> U-AMBRE\Jean-Baptiste <Jean-Baptiste@ambre.(none)>
Jean-Baptiste Kempf <jb@videolan.org> U-SASMIRA\jb <jb@sasmira.(none)>
<rem@videolan.org> <remi.denis-courmont@nokia.com>
<rem@videolan.org> <rdenis@simphalempin.com>
<remi@remlab.net> <remi.denis-courmont@nokia.com>
<remi@remlab.net> <rdenis@simphalempin.com>
<remi@remlab.net> <rem@videolan.org>
<pdherbemont@videolan.org> <steg@nibudy.local>
<dionoea@videolan.org> <antoine@macbook.(none)>
Felix Paul Kühne <fkuehne@videolan.org>
......
......@@ -187,7 +187,7 @@ lcov-raw.out:
lcov.out: lcov-raw.out
lcov -r lcov-raw.out -o lcov.out \
'*test*' 'contrib/*' '/usr/include/*'
'*test*' 'contrib/*' '/usr/include/*' '*mock*'
lcov: lcov.out
rm -Rf lcov lcov.tmp
......
......@@ -4,7 +4,7 @@ Changes between 3.0.x and 4.0.0-dev:
Platform support changes:
* 4.0.x requires:
- Windows 7/2008 R2 or later (with KB2533623 installed)
- macOS 10.10 or later
- macOS 10.11 or later
- iOS 9 or later
- Android 4.1.x or later (API-16)
- GCC 5.0 or Clang 3.4 (or equivalent)
......@@ -14,8 +14,10 @@ Audio output:
Use --alsa-passthrough to configure S/PDIF or HDMI passthrough.
Demuxer:
* Support for HEIF format
* Support for HEIF image and grid image formats
* Support for DASH WebM
* Support for DVBSUB in mkv
* Improved Bluray menus, clips and stream selection
Codecs:
* Support for experimental AV1 video encoding
......@@ -23,15 +25,34 @@ Codecs:
* Remove iomx support for Android
* WebP image decoding
* Support for SMPTE-TT image profile
* Support for 16-bit greyscale
* Support IMM4 decoder
Access:
* Enable SMB2 / SMB3 support on mobile ports with libsmb2
* Added support for the RIST (Reliable Internet Stream Transport) Protocol
* Added avaudiocapture module as a replacement for qtsound, which is removed now
Access output:
* Added support for the RIST (Reliable Internet Stream Transport) Protocol
Video output:
* Added X11 RENDER video output plugin
* Remove aa plugin
* Remove evas plugin
* Remove omxil_vout plugin
* Remove RealRTSP plugin
* Remove Real demuxer plugin
Stream output:
* New SDI output with improved audio and ancillary support.
Candidate for deprecation of decklink vout/aout modules.
macOS:
* Remove Growl notification support
appleOS:
* Improved proxy configuration handling
Changes between 3.0.2 and 3.0.3:
......
- Remove input/control.c (move remaining implementation to player.c)
- Remove bookmark handling from input
- Remove INPUT_GET_VOUTS/INPUT_GET_AOUT
- Remove INPUT_GET_FULL_TITLE_INFO and priv->*title
- http cookies jar
- Seek callback
......@@ -23,7 +23,7 @@ endif
#
# Main VLC executable
#
vlc_LDADD = ../lib/libvlc.la $(LIBPTHREAD)
vlc_LDADD = ../lib/libvlc.la
vlc_CPPFLAGS = $(AM_CPPFLAGS)
if !HAVE_WIN32
vlc_SOURCES = vlc.c override.c
......@@ -31,7 +31,7 @@ vlc_LDADD += $(LIBDL)
else
vlc_SOURCES = winvlc.c
vlc_DEPENDENCIES = vlc_win32_rc.$(OBJEXT)
vlc_LDFLAGS = -mwindows
vlc_LDFLAGS = -mwindows -Wc,-static
vlc_LDADD += vlc_win32_rc.$(OBJEXT)
libbreakpad_wrapper_la_SOURCES = breakpad.cpp
libbreakpad_wrapper_la_LIBADD = $(BREAKPAD_LIBS)
......@@ -118,6 +118,7 @@ vlc_cache_gen_LDADD = \
../lib/libvlc.la
if HAVE_WIN32
vlc_cache_gen_LDADD += vlc_win32_rc.$(OBJEXT)
vlc_cache_gen_LDFLAGS = -Wc,-static
vlc_cache_gen_DEPENDENCIES = vlc_win32_rc.$(OBJEXT)
endif
......
......@@ -27,6 +27,9 @@
#endif
#include <vlc/vlc.h>
#include <vlc_common.h>
#include <vlc_charset.h>
#include <stdlib.h>
#include <locale.h>
#include <signal.h>
......@@ -244,21 +247,13 @@ int main(int i_argc, const char *ppsz_argv[])
language = (CFStringRef)CFPreferencesCopyAppValue(CFSTR("language"),
kCFPreferencesCurrentApplication);
if (language) {
CFIndex length = CFStringGetLength(language) + 1;
if (length > 0) {
CFIndex maxSize = CFStringGetMaximumSizeForEncoding(length, kCFStringEncodingUTF8);
lang = (char *)malloc(maxSize);
if(lang) {
CFStringGetCString(language, lang, maxSize - 1, kCFStringEncodingUTF8);
if (strncmp( lang, "auto", 4 )) {
char tmp[11];
snprintf(tmp, 11, "LANG=%s", lang);
putenv(tmp);
}
}
free(lang);
lang = FromCFString(language, kCFStringEncodingUTF8);
if (strncmp( lang, "auto", 4 )) {
char tmp[11];
snprintf(tmp, 11, "LANG=%s", lang);
putenv(tmp);
}
free(lang);
CFRelease(language);
}
}
......
......@@ -173,7 +173,7 @@ static struct
void srand (unsigned int seed)
{
pthread_mutex_lock (&prng.lock);
LOG("Warning", "%d", seed);
LOG("Warning", "%u", seed);
prng.seed = seed;
pthread_mutex_unlock (&prng.lock);
}
......
/*****************************************************************************
* lfind.c : implement lfind
*****************************************************************************/
#ifdef HAVE_CONFIG_H
# include <config.h>
#endif
void *lfind(const void *key, const void *base, size_t *nmemb,
size_t size, int(*cmp)(const void *, const void *))
{
for (int i = 0; i < *nmemb; ++i)
{
const void *elem = base + i * size;
if (!cmp(key, elem))
return elem;
}
return NULL;
}
/*****************************************************************************
* qsort_r.c: future POSIX qsort_r() replacement
*****************************************************************************
* Copyright © 2018 Rémi Denis-Courmont
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation; either version 2.1 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 Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with this program; if not, write to the Free Software Foundation,
* Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
*****************************************************************************/
#ifdef HAVE_CONFIG_H
# include <config.h>
#endif
#include <stdlib.h>
static _Thread_local struct
{
int (*compar)(const void *, const void *, void *);
void *arg;
} state;
static int compar_wrapper(const void *a, const void *b)
{
return state.compar(a, b, state.arg);
}
/* Follow the upcoming POSIX prototype, coming from GNU/libc.
* Note that this differs from the BSD prototype. */
void qsort_r(void *base, size_t nmemb, size_t size,
int (*compar)(const void *, const void *, void *),
void *arg)
{
int (*saved_compar)(const void *, const void *, void *) = state.compar;
void *saved_arg = state.arg;
state.compar = compar;
state.arg = arg;
qsort(base, nmemb, size, compar_wrapper);
/* Restore state for nested reentrant calls */
state.compar = saved_compar;
state.arg = saved_arg;
}
......@@ -22,7 +22,7 @@
# include <config.h>
#endif
#include <stddef.h>
#include <string.h>
/**
* Copy a string to a sized buffer. The result is always nul-terminated
......@@ -37,16 +37,13 @@
*/
size_t strlcpy (char *tgt, const char *src, size_t bufsize)
{
size_t length;
size_t length = strlen(src);
for (length = 1; (length < bufsize) && *src; length++)
*tgt++ = *src++;
if (bufsize > length)
memcpy(tgt, src, length + 1);
else
if (bufsize > 0)
memcpy(tgt, src, bufsize - 1), tgt[bufsize - 1] = '\0';
if (bufsize)
*tgt = '\0';
while (*src++)
length++;
return length - 1;
return length;
}
This diff is collapsed.
......@@ -120,7 +120,7 @@ fi
if test -z "$BUILD"
then
echo -n "Guessing build system... "
BUILD="`${CC:-cc} -dumpmachine`"
BUILD="`${CC:-cc} -dumpmachine | sed s/windows-gnu/mingw32/`"
if test -z "$BUILD"; then
echo "FAIL!"
exit 1
......
#!/bin/sh
# create a patch file based on file extension
# $1 folder to run the find in
# $2 extension to use for the diff
#!/bin/sh
# create a patch file based on file extension
# $1 folder to run the find in
# $2 extension to use for the diff
find $1 -name "*$2" -exec bash -c 'filepath="$1" ; dir=$(dirname "$filepath") ; base=$(basename -s $2 "$filepath") ; diff -pur $filepath $dir/$base' -- {} $2 \;
\ No newline at end of file
From 8884914546ee68a440342587c4a7c9189dbc8443 Mon Sep 17 00:00:00 2001
From: Steve Lhomme <robux4@videolan.org>
Date: Wed, 12 Sep 2018 11:18:15 +0200
Subject: [PATCH] [film-grain] copy user_priv from the source img
Since we don't return the original img we need to prive the same user_priv
data as the aom_image_t that would be returned without film-grain.
Change-Id: I6ac6c575b9ca34673018cf7533955afe4996e6fc
---
av1/av1_dx_iface.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/av1/av1_dx_iface.c b/av1/av1_dx_iface.c
index 8899556ca..f5e19ea5c 100644
--- a/av1/av1_dx_iface.c
+++ b/av1/av1_dx_iface.c
@@ -642,6 +642,7 @@ static aom_image_t *add_grain_if_needed(aom_image_t *img,
*grain_img_ptr = NULL;
}
}
+ grain_img_buf->user_priv = img->user_priv;
return grain_img_buf;
}
--
2.17.0.windows.1
diff --git a/aom_ports/aom_ports.cmake b/aom_ports/aom_ports.cmake
index 6272fc0..2d795f8 100644
--- a/aom_ports/aom_ports.cmake
+++ b/aom_ports/aom_ports.cmake
@@ -30,7 +30,8 @@ list(APPEND AOM_PORTS_ASM_X86 "${AOM_ROOT}/aom_ports/emms.asm")
list(APPEND AOM_PORTS_INCLUDES_X86 "${AOM_ROOT}/aom_ports/x86_abi_support.asm")
list(APPEND AOM_PORTS_SOURCES_ARM "${AOM_ROOT}/aom_ports/arm.h"
- "${AOM_ROOT}/aom_ports/arm_cpudetect.c")
+ "${AOM_ROOT}/aom_ports/arm_cpudetect.c"
+ "${AOM_ROOT}/aom_ports/cpu-features.c")
list(APPEND AOM_PORTS_SOURCES_PPC "${AOM_ROOT}/aom_ports/ppc.h"
"${AOM_ROOT}/aom_ports/ppc_cpudetect.c")
diff --git a/aom_ports/arm_cpudetect.c b/aom_ports/arm_cpudetect.c
index 70efee9..86efb8e 100644
--- a/aom_ports/arm_cpudetect.c
+++ b/aom_ports/arm_cpudetect.c
@@ -88,7 +88,7 @@ int arm_cpu_caps(void) {
}
#elif defined(__ANDROID__) /* end _MSC_VER */
-#include <cpu-features.h>
+#include "cpu-features.h"
int arm_cpu_caps(void) {
int flags;
diff --git a/build/cmake/pkg_config.cmake b/build/cmake/pkg_config.cmake
index 64e2021..1cab2a3 100644
--- a/build/cmake/pkg_config.cmake
+++ b/build/cmake/pkg_config.cmake
@@ -47,12 +47,6 @@ file(APPEND "${pkgconfig_file}"
file(APPEND "${pkgconfig_file}" "Version: ${package_version}\n")
file(APPEND "${pkgconfig_file}" "Requires:\n")
file(APPEND "${pkgconfig_file}" "Conflicts:\n")
-if(CONFIG_MULTITHREAD AND HAVE_PTHREAD_H)
- file(APPEND "${pkgconfig_file}"
- "Libs: -L\${prefix}/lib -l${pkg_name} -lm -lpthread\n")
- file(APPEND "${pkgconfig_file}" "Libs.private: -lm -lpthread\n")
-else()
- file(APPEND "${pkgconfig_file}" "Libs: -L\${prefix}/lib -l${pkg_name} -lm\n")
- file(APPEND "${pkgconfig_file}" "Libs.private: -lm\n")
-endif()
+file(APPEND "${pkgconfig_file}" "Libs: -L\${prefix}/lib -l${pkg_name} -lm\n")
+file(APPEND "${pkgconfig_file}" "Libs.private: -lm\n")
file(APPEND "${pkgconfig_file}" "Cflags: -I\${prefix}/include\n")
# aom
AOM_HASH := e2aa4019709af0520b79397a28934237b15d2fda
AOM_VERSION := git-$(AOM_HASH)
AOM_HASH := a65377bf5c555fccd161f27c33168cc36390662e
AOM_VERSION := v1.0.0-$(AOM_HASH)
AOM_GITURL := https://aomedia.googlesource.com/aom/+archive/$(AOM_HASH).tar.gz
PKGS += aom
......@@ -19,10 +19,18 @@ aom: aom-$(AOM_VERSION).tar.gz .sum-aom
rm -Rf $@-$(AOM_VERSION) $@
mkdir -p $@-$(AOM_VERSION)
tar xvzf "$<" -C $@-$(AOM_VERSION)
$(APPLY) $(SRC)/aom/0001-film-grain-copy-user_priv-from-the-source-img.patch
ifdef HAVE_WINSTORE
$(APPLY) $(SRC)/aom/aom-pthreads-win32.patch
endif
ifdef HAVE_ANDROID
$(APPLY) $(SRC)/aom/aom-android-pthreads.patch
$(APPLY) $(SRC)/aom/aom-android-cpufeatures.patch
endif
$(MOVE)
ifdef HAVE_ANDROID
cp $(ANDROID_NDK)/sources/android/cpufeatures/cpu-features.c $(ANDROID_NDK)/sources/android/cpufeatures/cpu-features.h aom/aom_ports/
endif
DEPS_aom =
ifdef HAVE_WIN32
......@@ -37,6 +45,7 @@ AOM_CONF := \
-DENABLE_EXAMPLES=OFF \
-DENABLE_TOOLS=OFF \
-DCONFIG_UNIT_TESTS=0 \
-DENABLE_TESTS=OFF \
-DCONFIG_INSTALL_BINS=0 \
-DCONFIG_INSTALL_DOCS=0 \
-DCONFIG_DEPENDENCY_TRACKING=0
......@@ -61,6 +70,27 @@ AOM_CONF += -DAOM_ADS2GAS_REQUIRED=1 -DAOM_ADS2GAS=../build/make/ads2gas.pl -DAO
endif
endif
ifdef HAVE_IOS
ifneq ($(filter arm aarch64, $(ARCH)),)
# These targets don't have runtime cpu detection.
AOM_CONF += -DCONFIG_RUNTIME_CPU_DETECT=0
endif
ifeq ($(ARCH),arm)
# armv7, not just plain arm
AOM_CONF += -DAOM_TARGET_CPU=armv7
endif
endif
# Force cpu detection
ifdef HAVE_ANDROID
ifeq ($(ARCH),arm)
AOM_CONF += -DAOM_TARGET_CPU=armv7
endif
ifeq ($(ARCH),aarch64)
AOM_CONF += -DAOM_TARGET_CPU=arm64
endif
endif
# libaom doesn't allow in-tree builds
.aom: aom toolchain.cmake
cd $< && mkdir -p aom_build
......
BITSTREAM_HASH := a9b69ce2680ee361e0327ce0c8c2fdee48e390c3
BITSTREAM_VERSION := git-$(BITSTREAM_HASH)
BITSTREAM_GITURL := https://code.videolan.org/videolan/bitstream.git
PKGS += bitstream
$(TARBALLS)/bitstream-$(BITSTREAM_VERSION).tar.xz:
$(call download_git,$(BITSTREAM_GITURL),,$(BITSTREAM_HASH))
.sum-bitstream: bitstream-$(BITSTREAM_VERSION).tar.xz
$(call check_githash,$(BITSTREAM_HASH))
touch $@
bitstream: bitstream-$(BITSTREAM_VERSION).tar.xz .sum-bitstream
rm -rf $@-$(BITSTREAM_VERSION) $@
mkdir -p $@-$(BITSTREAM_VERSION)
tar xvf "$<" --strip-components=1 -C $@-$(BITSTREAM_VERSION)
$(MOVE)
.bitstream: bitstream
cd $< && PREFIX=$(PREFIX) $(MAKE) install
touch $@
From 73681388dfd0f839e0b4447b3063842d606691d8 Mon Sep 17 00:00:00 2001
From: Francois Cartegnie <fcvlcdev@free.fr>
Date: Mon, 19 Nov 2018 15:27:23 +0100
Subject: [PATCH] install bdjo_data header
---
Makefile.am | 1 +
src/libbluray/bluray.h | 1 +
2 files changed, 2 insertions(+)
diff --git a/Makefile.am b/Makefile.am
index 94add5b..f9a76a0 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -218,6 +218,7 @@ pkginclude_HEADERS = \
src/libbluray/bluray-version.h \
src/libbluray/keys.h \
src/libbluray/player_settings.h \
+ src/libbluray/bdj/bdjo_data.h \
src/libbluray/bdnav/clpi_data.h \
src/libbluray/bdnav/meta_data.h \
src/libbluray/decoders/overlay.h \
diff --git a/src/libbluray/bluray.h b/src/libbluray/bluray.h
index 8eb8100..86be9e6 100644
--- a/src/libbluray/bluray.h
+++ b/src/libbluray/bluray.h
@@ -1073,6 +1073,7 @@ void bd_free_mobj(struct mobj_objects *);
struct bdjo_data;
struct bdjo_data *bd_read_bdjo(const char *bdjo_file);
void bd_free_bdjo(struct bdjo_data *);
+#define BLURAY_HAS_BDJO_DATA_H
/* BD-J testing */
--
2.17.2
From 35f1bcc4885f84b3c4836ba1ffea8db6ec4f2682 Mon Sep 17 00:00:00 2001
From: Francois Cartegnie <fcvlcdev@free.fr>
Date: Tue, 13 Nov 2018 23:10:30 +0100
Subject: [PATCH] keep on with menuless user selected streams between clips
---
src/libbluray/bluray.c | 20 ++------------------
1 file changed, 2 insertions(+), 18 deletions(-)
diff --git a/src/libbluray/bluray.c b/src/libbluray/bluray.c
index 1728801..aa3135e 100644
--- a/src/libbluray/bluray.c
+++ b/src/libbluray/bluray.c
@@ -323,24 +323,8 @@ static void _update_clip_psrs(BLURAY *bd, NAV_CLIP *clip)
/* Update selected audio and subtitle stream PSRs when not using menus.
* Selection is based on language setting PSRs and clip STN.
*/
- if (bd->title_type == title_undef) {
-
- if (stn->num_audio) {
- _update_stream_psr_by_lang(bd->regs,