vlc.git
5 years agodemux: mp4: chunk matching does not need frag flag
Francois Cartegnie [Mon, 31 Oct 2016 17:08:22 +0000 (18:08 +0100)]
demux: mp4: chunk matching does not need frag flag

5 years agodemux: mp4: rewrite main non fragmented Demux logic
Francois Cartegnie [Fri, 28 Oct 2016 13:19:54 +0000 (15:19 +0200)]
demux: mp4: rewrite main non fragmented Demux logic

Makes main demux aware of interleaving, and avoid
access layer seeks. Also improves the large interleaves
and non interleaved playback.

Fixes the pcr jumps, as a min() dts based logic isn't
suitable for edit lists.

Improves empty edits handling by keeping demuxing on
empty samples time.

5 years agodemux: mp4: add chunk virtual trun
Francois Cartegnie [Mon, 31 Oct 2016 10:09:16 +0000 (11:09 +0100)]
demux: mp4: add chunk virtual trun

Adds continuity sequence counter,
like fragmented mp4 truns

5 years agodemux: mp4: fix and improve interleaving detection
Francois Cartegnie [Fri, 28 Oct 2016 21:10:50 +0000 (23:10 +0200)]
demux: mp4: fix and improve interleaving detection

On compressed content, all chunks are separate

5 years agodemux: mp4: set discontinuity on edit list change
Francois Cartegnie [Mon, 31 Oct 2016 16:04:24 +0000 (17:04 +0100)]
demux: mp4: set discontinuity on edit list change

fixes timestamp conversion errors using avcodec
refs samples/mov/editlist/menace00.mov

5 years agostream: assert that read size is well defined
Rémi Denis-Courmont [Mon, 31 Oct 2016 08:00:39 +0000 (10:00 +0200)]
stream: assert that read size is well defined

The result of a read operation is a signed size_t, and cannot be
negative (except on error). Thus reading more than SSIZE_MAX bytes at
once is not well defined.

(Note: POSIX marks it as implementation-defined, and we cannot rely on
 much given the different implementations.)

In practice, this is not really a limitation for regular reads as
allocating a contiguous output buffer of more than SSIZE_MAX bytes is
essentially impossible. It can however be a problem when skipping data
(buffer pointer is NULL), especially on 32-bits platforms.

To skip such large amount of data, seeking is recommended instead,
e.g.:

    vlc_stream_Seek(s, vlc_stream_Tell() + skip);

instead of:

    vlc_stream_Read(s, NULL, skip);

5 years agomacosx: Correct spelling mistakes in fscontroller
Marvin Scholz [Sun, 30 Oct 2016 22:21:10 +0000 (23:21 +0100)]
macosx: Correct spelling mistakes in fscontroller

5 years agomacosx: Remove fscontroller assets
Marvin Scholz [Tue, 11 Oct 2016 09:02:28 +0000 (11:02 +0200)]
macosx: Remove fscontroller assets

Remove the old fullscreen controller assets and
their references from the Makefile and Xcode
project.

5 years agomacosx: Remove old fscontroller source code
Marvin Scholz [Tue, 11 Oct 2016 08:55:34 +0000 (10:55 +0200)]
macosx: Remove old fscontroller source code

Removes the old VLCFSPanel, and references to the
source files from the makefiles, potfiles and
the Xcode project.

5 years agomacosx: Make fscontroller compatible with <10.10
Marvin Scholz [Tue, 11 Oct 2016 08:17:30 +0000 (10:17 +0200)]
macosx: Make fscontroller compatible with <10.10

This will add a fallback mechanism that uses a
normal layer-backed NSView with a dark but still
slightly transparent background on macOS versions
that do not support NSVisualEffectView.

Additionally it will allow compilation with older
SDK's that have no NSVisualEffectView defined.
If compiled with such an SDK, support for
NSVisualEffectView is disabled completely, so
even when running the compiled VLC version
on 10.10 or higher it will use the old fallback
view, as the SDK it was compiled with had not the
necessary definitions.

5 years agomacosx: Add a new fullscreen controller
Marvin Scholz [Mon, 3 Oct 2016 10:01:52 +0000 (12:01 +0200)]
macosx: Add a new fullscreen controller

This introduces a new fullscreen controller
which uses NSVisualEffectView for it's background
and the icons that are used throughout the rest of
the macOS user interface, hence making it more
consistent with the overall look of VLC.

Additionally the new fullscreen controller is
resizable and, as it already used to be, can be
move around on the screen.

The user interface is now described in a interface
builder file (xib) instead of doing everything in
code. This allows easy usage of autolayout, which
is heavily used to allow adaption of the
buttons/sliders depending on the panel width and
height.

5 years agocontrib: Fix wrong deployment target on macOS
Marvin Scholz [Sat, 29 Oct 2016 12:57:30 +0000 (14:57 +0200)]
contrib: Fix wrong deployment target on macOS

This adds MACOSX_DEPLOYMENT_TARGET (which will be set to the value of
the MIN_OSX_VERSION variable) so contribs that only use xcodebuild
(like BGHUDKit) will use the correct deployment target.

5 years agocontrib: Remove special case for Xcode 3
Marvin Scholz [Sat, 29 Oct 2016 10:28:42 +0000 (12:28 +0200)]
contrib: Remove special case for Xcode 3

Xcode 3 is ancient and Xcode 4 is available for OS X 10.7 (the oldest
OS X version that VLC supports) so this special case can be removed.

5 years agolinux: implement vlc_getaddrinfo_i11e()
Rémi Denis-Courmont [Sun, 30 Oct 2016 20:12:17 +0000 (22:12 +0200)]
linux: implement vlc_getaddrinfo_i11e()

5 years agoposix: implement vlc_getaddrinfo_i11e()
Rémi Denis-Courmont [Sun, 30 Oct 2016 20:34:16 +0000 (22:34 +0200)]
posix: implement vlc_getaddrinfo_i11e()

5 years agonet: add vlc_getaddrinfo_i11e() stub
Rémi Denis-Courmont [Sun, 30 Oct 2016 20:11:08 +0000 (22:11 +0200)]
net: add vlc_getaddrinfo_i11e() stub

The function should provide interrupt DNS resolution, so a thread can
abort a DNS query (e.g. if network is down or really slow).

The stub is not interruptible. This makes no difference to the existing
uninterruptible (mis)behaviour.

5 years agodemux: mp4: store chunk duration instead of last dts
Francois Cartegnie [Fri, 28 Oct 2016 18:34:56 +0000 (20:34 +0200)]
demux: mp4: store chunk duration instead of last dts

5 years agocodec: cc: fix replaytv field ordering
Francois Cartegnie [Sat, 29 Oct 2016 14:52:48 +0000 (16:52 +0200)]
codec: cc: fix replaytv field ordering

guess from samples

5 years agocodec: cc: fix replay tv multiple packets per private data
Francois Cartegnie [Sat, 29 Oct 2016 14:50:40 +0000 (16:50 +0200)]
codec: cc: fix replay tv multiple packets per private data

according to samples, there always can be more than 8 bytes

5 years agocodec: cc: add comments
Francois Cartegnie [Sat, 29 Oct 2016 14:21:56 +0000 (16:21 +0200)]
codec: cc: add comments

5 years agodemux: ts: improve ARIB probing
Francois Cartegnie [Sat, 29 Oct 2016 13:55:51 +0000 (15:55 +0200)]
demux: ts: improve ARIB probing

refs HigashiNoEden8CCs.ts

5 years agodemux: ts: read component_id instead of memcmp
Francois Cartegnie [Sat, 29 Oct 2016 13:23:55 +0000 (15:23 +0200)]
demux: ts: read component_id instead of memcmp

5 years agodemux: ts: simplify component tag matching
Francois Cartegnie [Sat, 29 Oct 2016 13:18:33 +0000 (15:18 +0200)]
demux: ts: simplify component tag matching

5 years agoconfigure: fix typo in ALTIVEC_CFLAGS assignment
Sebastian Ramacher [Sun, 30 Oct 2016 11:20:31 +0000 (12:20 +0100)]
configure: fix typo in ALTIVEC_CFLAGS assignment

This looks like a typo to me and should have been ALTIVEC_CFLAGS instead.

Signed-off-by: Rémi Denis-Courmont <remi@remlab.net>
5 years agoinput: remove write-only, unsafe and deprecated b_dead flag
Rémi Denis-Courmont [Sat, 29 Oct 2016 15:03:02 +0000 (18:03 +0300)]
input: remove write-only, unsafe and deprecated b_dead flag

5 years agoconfigure: remove legacy nanosleep header check
Rémi Denis-Courmont [Sat, 29 Oct 2016 15:02:36 +0000 (18:02 +0300)]
configure: remove legacy nanosleep header check

5 years agocontrib: Do not build microdns by default on macOS
Marvin Scholz [Sat, 29 Oct 2016 12:58:18 +0000 (14:58 +0200)]
contrib: Do not build microdns by default on macOS

libmicrodns does not work on macOS as bonjour is
used there, so it makes not much sense to build it
on macOS.

See https://github.com/videolabs/libmicrodns/issues/9

Signed-off-by: Rémi Denis-Courmont <remi@remlab.net>
5 years agotest: fix linking (with --disable-shared)
Rémi Denis-Courmont [Fri, 28 Oct 2016 18:59:35 +0000 (21:59 +0300)]
test: fix linking (with --disable-shared)

5 years agofix warning
Rémi Denis-Courmont [Fri, 28 Oct 2016 18:55:49 +0000 (21:55 +0300)]
fix warning

5 years agodemux/playlist/xspf: fix input-item uri creation
Filip Roséen [Thu, 13 Oct 2016 20:43:13 +0000 (22:43 +0200)]
demux/playlist/xspf: fix input-item uri creation

The previous implementation inaccurately treated "p_sys->psz_base" as
if it was referring to whatever directory (uri-wise) that contains the
playlist we are currently processing.

Given that this is not the case, it would not handle relative paths
correctly.

These changes make sure that we use ProcessMRL to properly handle the
paths found within the playlist (the function handles both absolute
and relative ones).

fixes #17506

Signed-off-by: Thomas Guillem <thomas@gllm.fr>
5 years agotest/url: add tests for invalid URLs
Filip Roséen [Fri, 28 Oct 2016 08:49:46 +0000 (10:49 +0200)]
test/url: add tests for invalid URLs

These added checks are there to make sure that common mistakes when
parsing the port-specification of an URL are avoided.

Signed-off-by: Thomas Guillem <thomas@gllm.fr>
5 years agotest/url: make it easier to check invalid URLs
Filip Roséen [Fri, 28 Oct 2016 08:49:45 +0000 (10:49 +0200)]
test/url: make it easier to check invalid URLs

The previous implementation, somewhat unconditionally, made
assumptions about the internal state of the result of `vlc_UrlParse`,
meaning that it was inherently difficult to check if invalid URLs was
correctly rejected.

These changes simply asserts that vlc_UrlParse failed if all of the
arguments (used to verify the result) are NULL or 0.

Signed-off-by: Thomas Guillem <thomas@gllm.fr>
5 years agotest/url: move test for empty port-specification
Filip Roséen [Fri, 28 Oct 2016 08:49:44 +0000 (10:49 +0200)]
test/url: move test for empty port-specification

According to RFC3986, the port specifier does not have to contain
digits following the colon. This means that "http://example.com:" is a
valid URI, and that the relevant test should not be within the
"Invalid URIs"-group.

Signed-off-by: Thomas Guillem <thomas@gllm.fr>
5 years agotext/url: fix port handling in vlc_UrlParse
Filip Roséen [Fri, 28 Oct 2016 12:46:10 +0000 (14:46 +0200)]
text/url: fix port handling in vlc_UrlParse

Differences compared to the previous implementation:

 - accept URLs with empty port-specification (RFC3986, 3.2.3).

 - reject port-specification with leading sign (RFC3986 only
   allows *DIGIT).

refs #17555

Signed-off-by: Thomas Guillem <thomas@gllm.fr>
5 years agodts_header: refactor
Thomas Guillem [Fri, 28 Oct 2016 12:47:13 +0000 (14:47 +0200)]
dts_header: refactor

Handle DTS magic sync code in only one place.

And rename b_dts_hd to b_substream. This boolean means that the dts frame is a
substream (extension of DTS-Core).

5 years agompeg/es: dts: use VLC_DTS_HEADER_SIZE for probe size
Thomas Guillem [Fri, 28 Oct 2016 10:04:59 +0000 (12:04 +0200)]
mpeg/es: dts: use VLC_DTS_HEADER_SIZE for probe size

5 years agompeg/es: fix dts probe in WAV
Thomas Guillem [Fri, 28 Oct 2016 10:00:22 +0000 (12:00 +0200)]
mpeg/es: fix dts probe in WAV

pi_samples is needed to check if the sync is followed by an other sync when the
WAV file has 0 padding.

5 years agotospdif: no S/PDIF header for DTS inside WAV
Thomas Guillem [Fri, 28 Oct 2016 09:15:08 +0000 (11:15 +0200)]
tospdif: no S/PDIF header for DTS inside WAV

If there is not enough room for it.

5 years agotospdif: fix buffer bundaries check
Thomas Guillem [Fri, 28 Oct 2016 08:51:01 +0000 (10:51 +0200)]
tospdif: fix buffer bundaries check

5 years agosmf: fix division by zero
Rémi Denis-Courmont [Fri, 28 Oct 2016 14:59:38 +0000 (17:59 +0300)]
smf: fix division by zero

5 years agoxa: fix divisions by zero
Rémi Denis-Courmont [Fri, 28 Oct 2016 14:11:55 +0000 (17:11 +0300)]
xa: fix divisions by zero

5 years agolua/intf/cli: make info command more versatile
Filip Roséen [Fri, 28 Oct 2016 13:53:50 +0000 (15:53 +0200)]
lua/intf/cli: make info command more versatile

Prior to this patch, the "info"-command could only be used to query
information related to the currently playing entity. These changes
allow the user to get information about other entities in the
playlist, based on the playlist-id.

fixes #17549

Signed-off-by: Pierre Ynard <linkfanel@yahoo.fr>
5 years agosmf: fix leak on invalid input
Rémi Denis-Courmont [Fri, 28 Oct 2016 13:39:28 +0000 (16:39 +0300)]
smf: fix leak on invalid input

5 years agovoc: fix division by zero
Rémi Denis-Courmont [Fri, 28 Oct 2016 13:15:55 +0000 (16:15 +0300)]
voc: fix division by zero

If buf[3] == 0xff, i_channels wraps to 0, and i_rate triggers SIGFPE.

5 years agomodules: remove useless parameters for static builds and fix them
Rémi Denis-Courmont [Fri, 28 Oct 2016 08:00:42 +0000 (11:00 +0300)]
modules: remove useless parameters for static builds and fix them

5 years agomodules: add --no-plugins-scan option to turn off directory scanning
Rémi Denis-Courmont [Fri, 28 Oct 2016 07:55:19 +0000 (10:55 +0300)]
modules: add --no-plugins-scan option to turn off directory scanning

With that options, plugins are *only* loaded from the cache. This
reduces the run time of libvlc_new() (about 2.5x on my system).

But new plugins won´t be picked up until the cache is regenerated.

5 years agomodules/bank: prevent null-pointer dereference in AllocatePluginFile
Filip Roséen [Fri, 28 Oct 2016 06:52:01 +0000 (08:52 +0200)]
modules/bank: prevent null-pointer dereference in AllocatePluginFile

Given that module_InitDynamic can fail and return a NULL pointer to
signal the error, we cannot unconditionally set data-members of the
referred to vlc_plugin_t.

These changes fixes the issue by introducing an explicit branch
related to initialization.

Signed-off-by: Rémi Denis-Courmont <remi@remlab.net>
5 years agoudp: fix comments
Rémi Denis-Courmont [Thu, 27 Oct 2016 20:57:12 +0000 (23:57 +0300)]
udp: fix comments

5 years agomodules: remove stray assertions
Rémi Denis-Courmont [Thu, 27 Oct 2016 20:07:40 +0000 (23:07 +0300)]
modules: remove stray assertions

These no longer make sense.

5 years agoFix indentation
Rémi Denis-Courmont [Thu, 27 Oct 2016 20:04:23 +0000 (23:04 +0300)]
Fix indentation

5 years agomodules: move modules count to plugin and simplify
Rémi Denis-Courmont [Thu, 27 Oct 2016 20:03:46 +0000 (23:03 +0300)]
modules: move modules count to plugin and simplify

5 years agomodules: fix potential NULL dereference
Rémi Denis-Courmont [Thu, 27 Oct 2016 19:57:40 +0000 (22:57 +0300)]
modules: fix potential NULL dereference

5 years agomodules: remove module_t.submodule and simplify
Rémi Denis-Courmont [Thu, 27 Oct 2016 19:35:57 +0000 (22:35 +0300)]
modules: remove module_t.submodule and simplify

5 years agocache: remove recursive function in save path
Rémi Denis-Courmont [Thu, 27 Oct 2016 19:25:20 +0000 (22:25 +0300)]
cache: remove recursive function in save path

With the removal of CacheMerge() (in ddf09a29), the relative order of
submodules within a plugin no longer has any significance. So there is
no need for this recursion trick anymore.

5 years agomodules: fix flawed logic in module_config_get()
Rémi Denis-Courmont [Thu, 27 Oct 2016 19:44:48 +0000 (22:44 +0300)]
modules: fix flawed logic in module_config_get()

5 years agomodules: inline CacheAdd() and run it only as needed
Rémi Denis-Courmont [Thu, 27 Oct 2016 18:58:01 +0000 (21:58 +0300)]
modules: inline CacheAdd() and run it only as needed

The per-directory plugins table is only used to save a new plugins
cache, in other words, in "cache reset" mode.

5 years agomodules: drop stale cache entries
Rémi Denis-Courmont [Thu, 27 Oct 2016 18:38:58 +0000 (21:38 +0300)]
modules: drop stale cache entries

There can only be one plugin file with a given path, so if the name
matches but the size or time does not, we know the entry is stale and
useless.

Also print an error if it happens.

5 years agomodules: allocate absolute path during cache loading
Rémi Denis-Courmont [Thu, 27 Oct 2016 18:30:44 +0000 (21:30 +0300)]
modules: allocate absolute path during cache loading

5 years agomodules: remove some stray code
Rémi Denis-Courmont [Thu, 27 Oct 2016 18:22:07 +0000 (21:22 +0300)]
modules: remove some stray code

5 years agoAndroid build fix
Rémi Denis-Courmont [Thu, 27 Oct 2016 18:41:25 +0000 (21:41 +0300)]
Android build fix

5 years agompg123: fix uninitialized read in DecodeBlock
Tristan Matthews [Thu, 27 Oct 2016 16:47:11 +0000 (12:47 -0400)]
mpg123: fix uninitialized read in DecodeBlock

Caught with valgrind.

5 years agomodules: load plugins for choice list on need basis
Rémi Denis-Courmont [Thu, 27 Oct 2016 16:59:06 +0000 (19:59 +0300)]
modules: load plugins for choice list on need basis

So far, they were loaded at start-up even if there was no request to
enumerate the choices.

5 years agoplugin: robustify loading cached plugin
Rémi Denis-Courmont [Thu, 27 Oct 2016 16:20:57 +0000 (19:20 +0300)]
plugin: robustify loading cached plugin

So far a cached plugin was loaded in memory, then the plugin
description was uselessly rebuilt from the loaded plugin, and then the
fuzzy "cache merge" was performed.

With this change, the cached plugin is loaded in memory, then the
plugin callbacks are matched by name. The description is not rebuilt
and the cache is not "merged".

5 years agomodule: store callback names rather than address
Rémi Denis-Courmont [Thu, 27 Oct 2016 16:03:34 +0000 (19:03 +0300)]
module: store callback names rather than address

Storing a relocatable pointer in the plugins cache made little sense.
In practice, it was only usable for comparison with NULL.

5 years agoplugin: match prototypes for callbacks as variable args
Rémi Denis-Courmont [Thu, 27 Oct 2016 12:15:13 +0000 (15:15 +0300)]
plugin: match prototypes for callbacks as variable args

Cast was missing, leading to mismatch.

5 years agoplugin: pass string identifier for callbacks
Rémi Denis-Courmont [Thu, 27 Oct 2016 12:01:36 +0000 (15:01 +0300)]
plugin: pass string identifier for callbacks

This would enable identifying unique callback functions within a plugin
even when the plugin is not loaded, and in particular within the
plugins cache file.

5 years agocache: factor common module saving
Rémi Denis-Courmont [Thu, 27 Oct 2016 15:44:53 +0000 (18:44 +0300)]
cache: factor common module saving

5 years agostream_filter: adf: require .adf extension
Tristan Matthews [Thu, 27 Oct 2016 05:19:30 +0000 (01:19 -0400)]
stream_filter: adf: require .adf extension

This should avoid some false positives.

5 years agourl: return an error if the port is not a number (fixes #17555)
Rémi Denis-Courmont [Thu, 27 Oct 2016 15:31:38 +0000 (18:31 +0300)]
url: return an error if the port is not a number (fixes #17555)

5 years agourl: test invalid port numbers
Rémi Denis-Courmont [Thu, 27 Oct 2016 15:31:29 +0000 (18:31 +0300)]
url: test invalid port numbers

5 years agocache: fix year 2038 problem and FILE_OFFSET_BITS dependency
Rémi Denis-Courmont [Thu, 27 Oct 2016 14:02:45 +0000 (17:02 +0300)]
cache: fix year 2038 problem and FILE_OFFSET_BITS dependency

5 years agocache: factor common module/submodule loading
Rémi Denis-Courmont [Thu, 27 Oct 2016 13:55:06 +0000 (16:55 +0300)]
cache: factor common module/submodule loading

5 years agocache: allow help string for submodules
Rémi Denis-Courmont [Thu, 27 Oct 2016 13:48:02 +0000 (16:48 +0300)]
cache: allow help string for submodules

This is the only remaining difference between modules and submodules.
I see no particular reasons not to support it; a submodule could
for instance provide a different URI scheme than the parent module.

5 years agocache: remove no-op
Rémi Denis-Courmont [Thu, 27 Oct 2016 13:44:36 +0000 (16:44 +0300)]
cache: remove no-op

5 years agomodules: remove OS/2 kludge
Rémi Denis-Courmont [Thu, 27 Oct 2016 13:05:39 +0000 (16:05 +0300)]
modules: remove OS/2 kludge

5 years agocontrib: tiff: use version 4.0.6
Steve Lhomme [Thu, 27 Oct 2016 06:28:10 +0000 (08:28 +0200)]
contrib: tiff: use version 4.0.6

Signed-off-by: Rémi Denis-Courmont <remi@remlab.net>
5 years agocontrib: libxml2: don't disable debug in debug builds
Steve Lhomme [Wed, 26 Oct 2016 15:40:43 +0000 (17:40 +0200)]
contrib: libxml2: don't disable debug in debug builds

Signed-off-by: Rémi Denis-Courmont <remi@remlab.net>
5 years agocontrib: glew: use the system package if possible
Steve Lhomme [Wed, 26 Oct 2016 15:40:04 +0000 (17:40 +0200)]
contrib: glew: use the system package if possible

Signed-off-by: Rémi Denis-Courmont <remi@remlab.net>
5 years agocontrib: goom: use the system package if possible
Steve Lhomme [Wed, 26 Oct 2016 15:40:03 +0000 (17:40 +0200)]
contrib: goom: use the system package if possible

Signed-off-by: Rémi Denis-Courmont <remi@remlab.net>
5 years agogettext: update to version 0.19.8
Rémi Denis-Courmont [Thu, 27 Oct 2016 11:18:30 +0000 (14:18 +0300)]
gettext: update to version 0.19.8

5 years agocontrib: zvbi: depend on png for building
Steve Lhomme [Wed, 26 Oct 2016 15:36:52 +0000 (17:36 +0200)]
contrib: zvbi: depend on png for building

Signed-off-by: Rémi Denis-Courmont <remi@remlab.net>
5 years agocontrib: soxr: use the proper cmake generator
Steve Lhomme [Wed, 26 Oct 2016 15:35:06 +0000 (17:35 +0200)]
contrib: soxr: use the proper cmake generator

Signed-off-by: Rémi Denis-Courmont <remi@remlab.net>
5 years agocontribs: fix cmake target on Windows
Steve Lhomme [Wed, 26 Oct 2016 15:35:05 +0000 (17:35 +0200)]
contribs: fix cmake target on Windows

On Windows cmake build for a Visual Studio target if it's installed, no matter
what the target we want to build. Reverting to MSys makefiles allow normal
autotools builds to be used

Signed-off-by: Rémi Denis-Courmont <remi@remlab.net>
5 years agoRevert "packetizer: mlp: flag discontinuity on timebase change"
Francois Cartegnie [Thu, 27 Oct 2016 11:06:57 +0000 (13:06 +0200)]
Revert "packetizer: mlp: flag discontinuity on timebase change"

This reverts commit 81703617662aa32a173d5758bf7327a8502c1541.

5 years agoRevert "packetizer: dts: notify discontinuities on timebase change"
Francois Cartegnie [Thu, 27 Oct 2016 11:06:41 +0000 (13:06 +0200)]
Revert "packetizer: dts: notify discontinuities on timebase change"

This reverts commit 4e18fe02108f263442ba19e7bb3ff557c5376556.

5 years agoRevert "packetizer: a52: flag discontinuity on timebase change"
Francois Cartegnie [Thu, 27 Oct 2016 11:06:25 +0000 (13:06 +0200)]
Revert "packetizer: a52: flag discontinuity on timebase change"

This reverts commit 5bff0f42104e21ff503d13b50b45660938af56f0.

5 years agoRevert "packetizer: mpeg4audio: flag discontinuity on timebase change"
Francois Cartegnie [Thu, 27 Oct 2016 11:06:13 +0000 (13:06 +0200)]
Revert "packetizer: mpeg4audio: flag discontinuity on timebase change"

This reverts commit ef6dd48f8ef753c87d445ec6853baf0b61b573ca.

5 years agoRevert "packetizer: mpegaudio: flag discontinuity on timebase change"
Francois Cartegnie [Thu, 27 Oct 2016 11:04:32 +0000 (13:04 +0200)]
Revert "packetizer: mpegaudio: flag discontinuity on timebase change"

This reverts commit ce02dd5c0defc8f15b93f8b6c6b986cfaadfa50e.

5 years agocontrib: use pkg from contribs before the user ones
Steve Lhomme [Wed, 26 Oct 2016 15:32:27 +0000 (17:32 +0200)]
contrib: use pkg from contribs before the user ones

If the user directories contain an older or otherwise inadequate
package version, contrib will rebuild a suitable version. If it is a
dependency of another contrib package, then pkg-config needs to look up
the contrib version before the user version.

This behaviour is already what happens for system packages in the
default pkg-config directories: they are processed after the
directories from the environment variable.

(Rewritten description)
Signed-off-by: Rémi Denis-Courmont <remi@remlab.net>
5 years agomodules: make module_Map() lock-less on fast path
Rémi Denis-Courmont [Thu, 27 Oct 2016 10:11:27 +0000 (13:11 +0300)]
modules: make module_Map() lock-less on fast path

No more locking if the module requested is already loaded.

5 years agomodules: move module handle and path to plugin structure
Rémi Denis-Courmont [Thu, 27 Oct 2016 07:45:13 +0000 (10:45 +0300)]
modules: move module handle and path to plugin structure

5 years agomodules: move text domain to plugin
Rémi Denis-Courmont [Thu, 27 Oct 2016 07:18:10 +0000 (10:18 +0300)]
modules: move text domain to plugin

Separate text domains for modules in the same library would not make
much sense, and it was never supported.

5 years agomodules: factor vlc_plugin_t creation
Rémi Denis-Courmont [Thu, 27 Oct 2016 07:12:49 +0000 (10:12 +0300)]
modules: factor vlc_plugin_t creation

5 years agomodules: move configuration items into vlc_plugin_t
Rémi Denis-Courmont [Wed, 26 Oct 2016 21:10:53 +0000 (00:10 +0300)]
modules: move configuration items into vlc_plugin_t

5 years agocache: reorder submodules and configuration
Rémi Denis-Courmont [Wed, 26 Oct 2016 19:56:03 +0000 (22:56 +0300)]
cache: reorder submodules and configuration

This will be useful for later changes.

5 years agocache: recompute items and bool items counters
Rémi Denis-Courmont [Wed, 26 Oct 2016 19:49:45 +0000 (22:49 +0300)]
cache: recompute items and bool items counters

Recomputing the values is cheap and ensures that they are correct.
Incorrect values could trigger buffer overflows in the configuration
code.

5 years agomodules: introduce vlc_plugin_t, remove module_cache_t
Rémi Denis-Courmont [Wed, 26 Oct 2016 16:22:55 +0000 (19:22 +0300)]
modules: introduce vlc_plugin_t, remove module_cache_t

This introduces a dedicated compound type for module containers
(i.e. plug-in shared libraries or statically linked module
descriptors), or plug-in. A plug-in can contain any number of
modules. The type describes plug-ins regardless of whence they came
from, libvlccore ("main"), static linking, dynamic linking or the
plug-ins cache.

Previously, plug-ins from the cache were described by module_cache_t,
only during the loading phase, while module_t was (ab)used to describe
loaded or cached plug-ins. Ultimately, that allows moving properties of
plug-ins out of the module structure where they do not really belong,
since there can be multiple modules per plug-ins.

5 years agocache: reorder to avoid forward declarations
Rémi Denis-Courmont [Wed, 26 Oct 2016 13:37:31 +0000 (16:37 +0300)]
cache: reorder to avoid forward declarations

5 years agomux: ts: reword stream selection
Francois Cartegnie [Mon, 24 Oct 2016 14:40:56 +0000 (16:40 +0200)]
mux: ts: reword stream selection

5 years agopacketizer: mpeg4video: fix unused vars warnings
Francois Cartegnie [Wed, 26 Oct 2016 17:10:42 +0000 (19:10 +0200)]
packetizer: mpeg4video: fix unused vars warnings