vlc.git
10 months agosout:rtp: fix misc variables/parameters that are mtime_t
Steve Lhomme [Wed, 13 Jun 2018 13:22:29 +0000 (15:22 +0200)]
sout:rtp: fix misc variables/parameters that are mtime_t

10 months agobridge: an mdate() is an mtime_t
Steve Lhomme [Wed, 13 Jun 2018 12:54:42 +0000 (14:54 +0200)]
bridge: an mdate() is an mtime_t

10 months agomux:ogg: the local i_time is an mtime_t
Steve Lhomme [Wed, 13 Jun 2018 08:31:09 +0000 (10:31 +0200)]
mux:ogg: the local i_time is an mtime_t

10 months agomux:ts: fix variables that are mtime_t
Steve Lhomme [Tue, 12 Jun 2018 12:56:20 +0000 (14:56 +0200)]
mux:ts: fix variables that are mtime_t

10 months agomux:ps: fix variables that are mtime_t
Steve Lhomme [Tue, 12 Jun 2018 12:54:31 +0000 (14:54 +0200)]
mux:ps: fix variables that are mtime_t

10 months agomux:mp4: the difference of mtime_t is an mtime_t
Steve Lhomme [Tue, 12 Jun 2018 11:07:35 +0000 (13:07 +0200)]
mux:mp4: the difference of mtime_t is an mtime_t

10 months agoqt: the points seek time is an mtime_t
Steve Lhomme [Tue, 12 Jun 2018 10:24:46 +0000 (12:24 +0200)]
qt: the points seek time is an mtime_t

10 months agohotkeys: the delay up/down are processed in mtime_t
Steve Lhomme [Tue, 12 Jun 2018 09:58:51 +0000 (11:58 +0200)]
hotkeys: the delay up/down are processed in mtime_t

And with 50ms inc/decrements

10 months agomux:mp4: the i_length_neg is an mtime_t
Steve Lhomme [Tue, 12 Jun 2018 11:42:38 +0000 (13:42 +0200)]
mux:mp4: the i_length_neg is an mtime_t

10 months agomux:mp4: the duration passed to mp4mux_GetMoovBox() is an mtime_t
Steve Lhomme [Mon, 11 Jun 2018 15:45:58 +0000 (17:45 +0200)]
mux:mp4: the duration passed to mp4mux_GetMoovBox() is an mtime_t

We then scale it to the movie and use it scaled.

10 months agomux:mp4: i_trex_default_length is an mtime_t
Steve Lhomme [Mon, 11 Jun 2018 15:47:08 +0000 (17:47 +0200)]
mux:mp4: i_trex_default_length is an mtime_t

10 months agomux:mp4: mp4mux_edit_t.i_read_duration is an mtime_t
Steve Lhomme [Mon, 11 Jun 2018 15:33:13 +0000 (17:33 +0200)]
mux:mp4: mp4mux_edit_t.i_read_duration is an mtime_t

10 months agomux:mp4: mp4mux_edit_t.i_duration is an mtime_t
Steve Lhomme [Mon, 11 Jun 2018 15:31:13 +0000 (17:31 +0200)]
mux:mp4: mp4mux_edit_t.i_duration is an mtime_t

10 months agodemux:adaptive: the min/max buffering are mtime_t so pass them down as such
Steve Lhomme [Mon, 11 Jun 2018 13:13:49 +0000 (15:13 +0200)]
demux:adaptive: the min/max buffering are mtime_t so pass them down as such

10 months agodemux:adaptive: doDemux is given an mtime_t
Steve Lhomme [Mon, 11 Jun 2018 13:11:08 +0000 (15:11 +0200)]
demux:adaptive: doDemux is given an mtime_t

10 months agodemux:adaptive: last_duration is an mtime_t
Steve Lhomme [Mon, 11 Jun 2018 13:04:14 +0000 (15:04 +0200)]
demux:adaptive: last_duration is an mtime_t

Converted using to the segment timescale SegmentTracker::getNextChunk().

10 months agodemux:asf: the preroll start is in mtime_t
Steve Lhomme [Thu, 7 Jun 2018 09:31:58 +0000 (11:31 +0200)]
demux:asf: the preroll start is in mtime_t

10 months agotest: input: Assign packetizer to the owner
Hugo Beauzée-Luyssen [Thu, 14 Jun 2018 11:26:02 +0000 (13:26 +0200)]
test: input: Assign packetizer to the owner

10 months agoQt: Fix building with Qt < 5.7 after 691c674bfff
Martin Storsjö [Thu, 14 Jun 2018 09:09:03 +0000 (12:09 +0300)]
Qt: Fix building with Qt < 5.7 after 691c674bfff

The parent argument to QAction constructors were made optional
in Qt 5.7, but contribs still build Qt 5.6.

10 months agocontrib: Always use the -i.orig form for in-place sed edits
Martin Storsjö [Thu, 14 Jun 2018 08:06:11 +0000 (11:06 +0300)]
contrib: Always use the -i.orig form for in-place sed edits

The form when no backup is saved for in-place edits differs between
sed implementations; on macOS, the correct form is 'sed -i "" ...'
while it is 'sed -i ...' on Linux. This form of saving an .orig
file works the same on both.

This fixes cross compiling Qt with contribs from macOS.

10 months agocontrib: lua: Make sure to use the right AR tool for the target
Martin Storsjö [Thu, 14 Jun 2018 07:22:01 +0000 (10:22 +0300)]
contrib: lua: Make sure to use the right AR tool for the target

In many cases, the host AR tool just happens to work fine for e.g.
mingw cross builds, but clang targeting x86 mingw recently started
generating code that trips up GNU binutils ar, with cases like this:

ar: lcode.o: Unrecognized storage class 0 for .rdata symbol `__xmm@8000000000000
0008000000000000000'

Just consistently use the right AR tool for the target, just like
we do for RANLIB and STRIP.

10 months agoes_out: store ES's in a list
Rémi Denis-Courmont [Wed, 13 Jun 2018 18:45:59 +0000 (21:45 +0300)]
es_out: store ES's in a list

10 months agoes_out: store programs in a list
Rémi Denis-Courmont [Wed, 13 Jun 2018 17:38:16 +0000 (20:38 +0300)]
es_out: store programs in a list

10 months agoinput item: use vlc_list for per-category infos
Rémi Denis-Courmont [Sun, 10 Jun 2018 18:47:37 +0000 (21:47 +0300)]
input item: use vlc_list for per-category infos

10 months agoobjects: use vlc_list helpers
Rémi Denis-Courmont [Sun, 10 Jun 2018 17:37:06 +0000 (20:37 +0300)]
objects: use vlc_list helpers

10 months agotest: add tests for vlc_list
Rémi Denis-Courmont [Sun, 10 Jun 2018 19:32:09 +0000 (22:32 +0300)]
test: add tests for vlc_list

10 months agovlc_list: helpers for doubly linked lists
Rémi Denis-Courmont [Sun, 10 Jun 2018 17:36:06 +0000 (20:36 +0300)]
vlc_list: helpers for doubly linked lists

10 months agopacketizer: add MJPEG
Francois Cartegnie [Fri, 8 Jun 2018 18:06:05 +0000 (20:06 +0200)]
packetizer: add MJPEG

10 months agoQt: split logically renderer widget and improve
Francois Cartegnie [Sun, 10 Jun 2018 20:02:49 +0000 (22:02 +0200)]
Qt: split logically renderer widget and improve

10 months agopacketizer: mpeg4audio: fix discontinuity check
Francois Cartegnie [Tue, 12 Jun 2018 16:16:11 +0000 (18:16 +0200)]
packetizer: mpeg4audio: fix discontinuity check

triggering discontinuity on every packet with
some streams, depending on preroll

10 months agodemux: avformat: use guess_ar
Francois Cartegnie [Tue, 12 Jun 2018 15:22:22 +0000 (17:22 +0200)]
demux: avformat: use guess_ar

10 months agodemux: avformat: use guess rate instead of timebase
Francois Cartegnie [Tue, 12 Jun 2018 15:04:21 +0000 (17:04 +0200)]
demux: avformat: use guess rate instead of timebase

contains same code, and
packet time base can be != from the real rate (ex: flv)

10 months agonsis: Rework displayed file type
Hugo Beauzée-Luyssen [Tue, 12 Jun 2018 12:21:10 +0000 (14:21 +0200)]
nsis: Rework displayed file type

10 months agoRevert "nsis: Remove duplicated extension display"
Hugo Beauzée-Luyssen [Tue, 12 Jun 2018 09:53:10 +0000 (11:53 +0200)]
Revert "nsis: Remove duplicated extension display"

This reverts commit bf2ff7fe9034ea4effa7a61d0cc17aabc8248202.

10 months agoqt: protect against invalid Qsize
Erwan Tulou [Tue, 12 Jun 2018 08:48:52 +0000 (10:48 +0200)]
qt: protect against invalid Qsize

This partially reverts commit 5ea9b98e29b518dadfc10e710eaa18f2c42468e9.

10 months agohotkeys: fix crash when zooming
Erwan Tulou [Mon, 11 Jun 2018 11:24:32 +0000 (13:24 +0200)]
hotkeys: fix crash when zooming

10 months agoqt: remove dubious and non functional call
Erwan Tulou [Fri, 25 May 2018 10:37:21 +0000 (12:37 +0200)]
qt: remove dubious and non functional call

As no videoWidget is ever inserted into the stackWidgetsSizes QMap, a
default QSize is provided with width and height = -1. These uninitialized
values are then propagated and end up as a no op at some point.

Yet, on Wayland, this -1 default values can end up being transmitted to
the Wayland server, that treats them as invalid values (protocol error).
At least the Gnome server(mutter) does.

This fix simply removes the call.

10 months agodemux: mkv: fix more hvcC detection
Zhao Zhili [Mon, 11 Jun 2018 12:54:37 +0000 (20:54 +0800)]
demux: mkv: fix more hvcC detection

MKV files made by DivXMKVMux 9.8.12.1750 are broken too. FFmpeg
hevc_parse.c did the same thing to workaround the issue.

Signed-off-by: Francois Cartegnie <fcvlcdev@free.fr>
10 months agodemux: ts: fixed duration probing
Jeremy Vignelles [Thu, 24 May 2018 15:25:39 +0000 (17:25 +0200)]
demux: ts: fixed duration probing

Symptoms: I have a recorded .ts file that is around 15 seconds long for
testing.
VLC can play the stream fine, but the displayed duration is 10s.
When VLC reaches the end of the file, it seems to realize that there is
more data and increases the duration as the file plays.

Digging into ProbeEnd:
I digged into the code and found the ProbeEnd method.
It calls ProbeChunk, with output args (the pcr and a found boolean).

If pcr == -1, the previous chunk is taken, until PROBE_MAX is reached.

However, the i_pcr received from the ProbeChunk method is the pcr of the
last packet, and not the pcr of the last packet with a pcr.
It means that most of the time, the pcr is -1 and the previous chunk is
read, even though b_found is true.

What's the use of that condition? I removed it, please correct me if I'm
wrong.

The ProbeStart has the same suspicious condition, so I removed it too. I
also saw the suspicious `i_pos > 0` which is always false at the first
iteration.

Signed-off-by: Francois Cartegnie <fcvlcdev@free.fr>
10 months agovlm: vlm_New() needs a VLC instance
Rémi Denis-Courmont [Mon, 11 Jun 2018 17:51:04 +0000 (20:51 +0300)]
vlm: vlm_New() needs a VLC instance

Don't hide the fact.

10 months agoobjects: remove useless macro
Rémi Denis-Courmont [Mon, 11 Jun 2018 17:50:41 +0000 (20:50 +0300)]
objects: remove useless macro

10 months agoqt: fix subtitle open not selecting the current video folder
Pierre Lamot [Tue, 5 Jun 2018 09:30:13 +0000 (11:30 +0200)]
qt: fix subtitle open not selecting the current video folder

scheme was prunned

Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
10 months agoinfo: remove dead code
Rémi Denis-Courmont [Sun, 10 Jun 2018 17:52:32 +0000 (20:52 +0300)]
info: remove dead code

10 months agomacosx/nowplaying: make sure the album track number is exposed as number
Felix Paul Kühne [Sun, 10 Jun 2018 16:29:20 +0000 (18:29 +0200)]
macosx/nowplaying: make sure the album track number is exposed as number

10 months agomacosx: include actual Info.plist in pseudo target
Felix Paul Kühne [Sun, 10 Jun 2018 16:20:32 +0000 (18:20 +0200)]
macosx: include actual Info.plist in pseudo target

10 months agomacosx: modernize the remaining sheet dialogs
Felix Paul Kühne [Sun, 10 Jun 2018 16:04:32 +0000 (18:04 +0200)]
macosx: modernize the remaining sheet dialogs

10 months agomacosx: modernize xib file use for the main menu
Felix Paul Kühne [Sun, 10 Jun 2018 15:15:40 +0000 (17:15 +0200)]
macosx: modernize xib file use for the main menu

10 months agodeinterlace/win32: keep off filter owner private data
Rémi Denis-Courmont [Sun, 10 Jun 2018 14:49:20 +0000 (17:49 +0300)]
deinterlace/win32: keep off filter owner private data

10 months agofilter: fix copy-paste doc error
Rémi Denis-Courmont [Sun, 10 Jun 2018 15:12:15 +0000 (18:12 +0300)]
filter: fix copy-paste doc error

10 months agoes_out: remove es_out_t.p_sys
Rémi Denis-Courmont [Sun, 10 Jun 2018 14:42:36 +0000 (17:42 +0300)]
es_out: remove es_out_t.p_sys

10 months agobd: use single allocation for ES output
Rémi Denis-Courmont [Sun, 10 Jun 2018 14:27:44 +0000 (17:27 +0300)]
bd: use single allocation for ES output

And simplify accordingly.

10 months agodemux-run: use typed pointer for parent object
Rémi Denis-Courmont [Sun, 10 Jun 2018 13:49:53 +0000 (16:49 +0300)]
demux-run: use typed pointer for parent object

10 months agoes_out_timeshift: use single allocation for the ES output
Rémi Denis-Courmont [Sun, 10 Jun 2018 13:34:40 +0000 (16:34 +0300)]
es_out_timeshift: use single allocation for the ES output

10 months agoes_out: use single allocation for the ES output
Rémi Denis-Courmont [Sun, 10 Jun 2018 13:34:40 +0000 (16:34 +0300)]
es_out: use single allocation for the ES output

10 months agoes_out: use constant callback structures
Rémi Denis-Courmont [Sun, 10 Jun 2018 12:37:00 +0000 (15:37 +0300)]
es_out: use constant callback structures

10 months agofilter/win32: use constant callback structures
Rémi Denis-Courmont [Sun, 10 Jun 2018 12:37:00 +0000 (15:37 +0300)]
filter/win32: use constant callback structures

10 months agoci_filters: compilation fix
Felix Paul Kühne [Sun, 10 Jun 2018 12:52:36 +0000 (14:52 +0200)]
ci_filters: compilation fix

10 months agomacosx: upgrade accessibility code
Felix Paul Kühne [Sun, 10 Jun 2018 12:47:00 +0000 (14:47 +0200)]
macosx: upgrade accessibility code

10 months agomacosx/prefs: fix reset of textfields
Felix Paul Kühne [Sun, 10 Jun 2018 12:15:48 +0000 (14:15 +0200)]
macosx/prefs: fix reset of textfields

10 months agofilter: use constant callback structures
Rémi Denis-Courmont [Sun, 10 Jun 2018 12:37:00 +0000 (15:37 +0300)]
filter: use constant callback structures

10 months agosd: move callbacks to constant structure
Rémi Denis-Courmont [Sun, 10 Jun 2018 12:11:07 +0000 (15:11 +0300)]
sd: move callbacks to constant structure

10 months agomacosx: require SDK macOS 10.12.2 or later for compilation
Felix Paul Kühne [Sun, 10 Jun 2018 12:00:27 +0000 (14:00 +0200)]
macosx: require SDK macOS 10.12.2 or later for compilation

10 months agomacosx: remove legacy code for pre-Yosemite macOS versions
Felix Paul Kühne [Sun, 10 Jun 2018 11:53:36 +0000 (13:53 +0200)]
macosx: remove legacy code for pre-Yosemite macOS versions

10 months agomacosx: Silence warning about NSFontPanelModeMask
David Fuhrmann [Sun, 10 Jun 2018 11:47:28 +0000 (13:47 +0200)]
macosx: Silence warning about NSFontPanelModeMask

This should be able to be just replace the old NSUInteger, according
to docs.

10 months agomacosx: remove hack for macOS Mavericks
Felix Paul Kühne [Sun, 10 Jun 2018 09:55:32 +0000 (11:55 +0200)]
macosx: remove hack for macOS Mavericks

10 months agomacosx: split windows file to have one class per file
Felix Paul Kühne [Sun, 10 Jun 2018 09:36:51 +0000 (11:36 +0200)]
macosx: split windows file to have one class per file

10 months agomacosx/VLCDefaultValueSliderCell: don't access AppKit instance variables directly
Felix Paul Kühne [Sun, 10 Jun 2018 08:57:12 +0000 (10:57 +0200)]
macosx/VLCDefaultValueSliderCell: don't access AppKit instance variables directly

Access to those will be removed in a future update of macOS

10 months agomacosx/windows: don't access AppKit instance variables directly
Felix Paul Kühne [Sun, 10 Jun 2018 08:55:03 +0000 (10:55 +0200)]
macosx/windows: don't access AppKit instance variables directly

Access to those will be removed in a future update of macOS

10 months agomacosx: fix typo
Rémi Denis-Courmont [Sun, 10 Jun 2018 10:22:53 +0000 (13:22 +0300)]
macosx: fix typo

10 months agoinclude: remove vlc_list_t
Rémi Denis-Courmont [Sun, 10 Jun 2018 09:58:23 +0000 (12:58 +0300)]
include: remove vlc_list_t

10 months agovariables: use table of vlc_value_t for VLC_VAR_GETCHOICES
Rémi Denis-Courmont [Sun, 10 Jun 2018 09:59:47 +0000 (12:59 +0300)]
variables: use table of vlc_value_t for VLC_VAR_GETCHOICES

This simplifies the notation. No function differences.

10 months agohotkeys: separate immediate and string list handling
Rémi Denis-Courmont [Sun, 10 Jun 2018 09:07:30 +0000 (12:07 +0300)]
hotkeys: separate immediate and string list handling

10 months agohotkeys: remove tautology test
Rémi Denis-Courmont [Sun, 10 Jun 2018 09:04:40 +0000 (12:04 +0300)]
hotkeys: remove tautology test

10 months agohotkeys: simplify
Rémi Denis-Courmont [Sat, 9 Jun 2018 15:16:02 +0000 (18:16 +0300)]
hotkeys: simplify

10 months agohotkeys: appropriate var_FreeList()
Rémi Denis-Courmont [Sun, 10 Jun 2018 08:51:00 +0000 (11:51 +0300)]
hotkeys: appropriate var_FreeList()

10 months agoqt: small revector
Rémi Denis-Courmont [Sun, 10 Jun 2018 08:47:51 +0000 (11:47 +0300)]
qt: small revector

(no functional change)

10 months agovariables: inline var_FreeList() in simple loops
Rémi Denis-Courmont [Sun, 10 Jun 2018 08:36:33 +0000 (11:36 +0300)]
variables: inline var_FreeList() in simple loops

This works like config choices.

10 months agovariables: replace var_FreeList() with free()
Rémi Denis-Courmont [Sun, 10 Jun 2018 08:34:45 +0000 (11:34 +0300)]
variables: replace var_FreeList() with free()

...where applicable.

10 months agolib: simplify libvlc_get_track_description()
Rémi Denis-Courmont [Sun, 10 Jun 2018 08:11:57 +0000 (11:11 +0300)]
lib: simplify libvlc_get_track_description()

Also remove unnecessary strdup/free pairs for descriptions.

10 months agoncurses: fix memory leak
Rémi Denis-Courmont [Sun, 10 Jun 2018 08:04:42 +0000 (11:04 +0300)]
ncurses: fix memory leak

10 months agovariables: avoid vlc_list_t internally
Rémi Denis-Courmont [Sun, 10 Jun 2018 09:33:06 +0000 (12:33 +0300)]
variables: avoid vlc_list_t internally

This removes two unused type copies and one duplicated counter.
This also simplifies notations.

10 months agovariables: add count parameter for VLC_VAR_GETCHOICES
Rémi Denis-Courmont [Sun, 10 Jun 2018 07:58:43 +0000 (10:58 +0300)]
variables: add count parameter for VLC_VAR_GETCHOICES

10 months agovariables: use char *** for VLC_VAR_GETCHOICES texts
Rémi Denis-Courmont [Sat, 9 Jun 2018 14:41:54 +0000 (17:41 +0300)]
variables: use char *** for VLC_VAR_GETCHOICES texts

10 months agoobjects: simplify the vlc_list_children() debug function
Rémi Denis-Courmont [Sat, 9 Jun 2018 14:17:22 +0000 (17:17 +0300)]
objects: simplify the vlc_list_children() debug function

This removes vlc_list_release().

10 months agoRemove vlc_value_t.p_list
Rémi Denis-Courmont [Sat, 9 Jun 2018 13:39:27 +0000 (16:39 +0300)]
Remove vlc_value_t.p_list

10 months agovariables: use char ** for VLC_VAR_GETTEXT
Rémi Denis-Courmont [Sat, 9 Jun 2018 11:46:51 +0000 (14:46 +0300)]
variables: use char ** for VLC_VAR_GETTEXT

10 months agooldrc: fix leak
Rémi Denis-Courmont [Sat, 9 Jun 2018 13:29:41 +0000 (16:29 +0300)]
oldrc: fix leak

10 months agovariables: use const char * for VLC_VAR_SETTEXT
Rémi Denis-Courmont [Sat, 9 Jun 2018 11:46:51 +0000 (14:46 +0300)]
variables: use const char * for VLC_VAR_SETTEXT

10 months agohotkeys: don't query unused texts
Rémi Denis-Courmont [Sat, 9 Jun 2018 13:14:53 +0000 (16:14 +0300)]
hotkeys: don't query unused texts

10 months agogestures: don't query unused texts
Rémi Denis-Courmont [Sat, 9 Jun 2018 13:14:35 +0000 (16:14 +0300)]
gestures: don't query unused texts

10 months agovariables: pass vlc_list_t directly with VLC_VAR_GETCHOICES
Rémi Denis-Courmont [Sat, 9 Jun 2018 13:08:47 +0000 (16:08 +0300)]
variables: pass vlc_list_t directly with VLC_VAR_GETCHOICES

10 months agoncurses: missing const
Rémi Denis-Courmont [Sat, 9 Jun 2018 12:54:18 +0000 (15:54 +0300)]
ncurses: missing const

10 months agovariables: pass VLC_VAR_SETVALUE parameter by value
Rémi Denis-Courmont [Sat, 9 Jun 2018 11:46:51 +0000 (14:46 +0300)]
variables: pass VLC_VAR_SETVALUE parameter by value

10 months agovariables: use size_t for VLC_VAR_CHOICESCOUNT
Rémi Denis-Courmont [Sat, 9 Jun 2018 11:46:51 +0000 (14:46 +0300)]
variables: use size_t for VLC_VAR_CHOICESCOUNT

10 months agovariables: pass VLC_VAR_DELCHOICES parameter by value
Rémi Denis-Courmont [Sat, 9 Jun 2018 11:46:51 +0000 (14:46 +0300)]
variables: pass VLC_VAR_DELCHOICES parameter by value

10 months agovariables: pass VLC_VAR_ADDCHOICES parameters by value
Rémi Denis-Courmont [Sat, 9 Jun 2018 11:46:51 +0000 (14:46 +0300)]
variables: pass VLC_VAR_ADDCHOICES parameters by value

10 months agomodules: constify vlc_gettext()
Rémi Denis-Courmont [Sat, 9 Jun 2018 10:49:57 +0000 (13:49 +0300)]
modules: constify vlc_gettext()

The returned string is actually not modifiable. We have no obligations
to reproduce the deficient prototype of the standard gettext().

10 months agovariables: pass VLC_VAR_SETSTEP parameter by value
Rémi Denis-Courmont [Sat, 9 Jun 2018 10:34:11 +0000 (13:34 +0300)]
variables: pass VLC_VAR_SETSTEP parameter by value

10 months agovariables: pass VLC_VAR_SETMINMAX parameters by value
Rémi Denis-Courmont [Sat, 9 Jun 2018 10:34:11 +0000 (13:34 +0300)]
variables: pass VLC_VAR_SETMINMAX parameters by value

10 months agovariables: remove first useless VLC_VAR_CLEARCHOICES parameter
Rémi Denis-Courmont [Sat, 9 Jun 2018 10:31:58 +0000 (13:31 +0300)]
variables: remove first useless VLC_VAR_CLEARCHOICES parameter