]>
git.sesse.net Git - vlc/log
Francois Cartegnie [Sun, 22 Feb 2015 15:13:18 +0000 (16:13 +0100)]
demux: ts: add DEMUX_SET_TIME
Francois Cartegnie [Mon, 16 Feb 2015 21:34:37 +0000 (22:34 +0100)]
demux: ts: rewrite, unifying by program
fixes #13967
* Recenters everything that depends on program: Time, timerolls, hacks...
* Removes PCR probing, programless timeroll handling
with a simplier fix (won't work with 2x26 hours recording, but..)
* Better probing of program duration (not based on inter PCR). More accurate,
at best by 1 frame length.
* Changes seek handling and bisects only on request (removes the whole file probing)
* No longer creates ES at preparse time
* Simplify/Unify dual program selection list and don't trust default program at first
* Many numerous other fixes
Francois Cartegnie [Fri, 6 Feb 2015 16:03:14 +0000 (17:03 +0100)]
demux: ts: Better missing PCR fixes
Moves the PCR fix from a global to program focused one.
Replaces the program PCR with a selected one instead of
sending PCR updates from all streams (applies to --no-trust-pcr)
Queues blocks until PCR appears. (will help fixing offsets)
Changes PCR probing time from 100ms (spec max) to 0.5s
(seen some streams with 0.4s inter-PCR)
Francois Cartegnie [Sun, 22 Feb 2015 10:19:59 +0000 (11:19 +0100)]
demux: ts: ProbePES: don't assume min sized packet
Francois Cartegnie [Sun, 22 Feb 2015 00:21:05 +0000 (01:21 +0100)]
demux: ts: prevent unwanted read at end of media
Truncated packets at the end
Francois Cartegnie [Sat, 21 Feb 2015 14:09:35 +0000 (15:09 +0100)]
demux: ts: add timescale conversion helpers
Jean-Baptiste Kempf [Sun, 22 Feb 2015 00:03:03 +0000 (01:03 +0100)]
Fix compilation with sout disabled
Rémi Denis-Courmont [Sat, 21 Feb 2015 17:21:39 +0000 (19:21 +0200)]
input: remove write-only demux-polled flag
Rémi Denis-Courmont [Sat, 21 Feb 2015 16:14:39 +0000 (18:14 +0200)]
input: tickless pause
Now we no longer update times and statistics in the control loop
(where it was kinda pointless). If there is no wake-up from the ES
output, then the input thread only needs to wait for control requests
- which means it can sleep without time-out.
In practice, that corresponds to the input thread being paused and
not buffering (buffering while paused is possible due to seek).
Rémi Denis-Courmont [Sat, 21 Feb 2015 14:57:32 +0000 (16:57 +0200)]
input: treat negative deadline as no deadline in ControlPop()
Rémi Denis-Courmont [Sat, 21 Feb 2015 14:54:03 +0000 (16:54 +0200)]
input: remove antilogy
Before the next patch, the deadline should always be zero or positive.
(Also note that deadlines, unlike time-outs are absolute timestamps.)
Rémi Denis-Courmont [Sat, 21 Feb 2015 18:18:30 +0000 (20:18 +0200)]
input: merge two level of loop for control requests
Rémi Denis-Courmont [Sat, 21 Feb 2015 15:35:59 +0000 (17:35 +0200)]
input: do not update timings & stats if paused
The values will typically not change while waiting for control requests
and not processing the demux and outputs. Even if the values do change
(e.g. due to a seek request), the demux needs to be called to recompute
the updated values: see demux_Control() calls in MainLoopStatistics().
Note that the intrinsic computational savings from this commit are
probably negligible. The interesting aspect is the removal of one
wake-up source within the input control loop. This commit does not
remove nor add any wake-up however.
Rémi Denis-Courmont [Sat, 21 Feb 2015 14:27:48 +0000 (16:27 +0200)]
input: cosmetic changes
Rémi Denis-Courmont [Sat, 21 Feb 2015 14:14:53 +0000 (16:14 +0200)]
input: merge "interface" and "statistics" updates
Rémi Denis-Courmont [Sat, 21 Feb 2015 10:23:42 +0000 (12:23 +0200)]
mux: remove return value from sout_mux_t.pf_delstream
This is always VLC_SUCCESS anyway.
Rémi Denis-Courmont [Sat, 21 Feb 2015 10:18:43 +0000 (12:18 +0200)]
sout: constify format parameter to sout_stream_t.pf_add
Rémi Denis-Courmont [Sat, 21 Feb 2015 10:14:08 +0000 (12:14 +0200)]
langfromtelx: remove plugin from build
This is pending fixing or removal decision.
Rémi Denis-Courmont [Sat, 21 Feb 2015 09:50:13 +0000 (11:50 +0200)]
setid: do not clobber format
Rémi Denis-Courmont [Sat, 21 Feb 2015 09:37:20 +0000 (11:37 +0200)]
mux: constify stream format
Rémi Denis-Courmont [Sat, 21 Feb 2015 09:31:52 +0000 (11:31 +0200)]
transcode: missing const
Rémi Denis-Courmont [Sat, 21 Feb 2015 09:23:09 +0000 (11:23 +0200)]
rtp sout: missing const
Rémi Denis-Courmont [Sat, 21 Feb 2015 09:15:14 +0000 (11:15 +0200)]
mpeg mux: missing const
Rémi Denis-Courmont [Sat, 21 Feb 2015 09:06:24 +0000 (11:06 +0200)]
sout_dummy: remove useless code
Rémi Denis-Courmont [Sat, 21 Feb 2015 09:05:12 +0000 (11:05 +0200)]
input_DecoderCreate: missing const
Rémi Denis-Courmont [Sat, 21 Feb 2015 08:53:14 +0000 (10:53 +0200)]
autodel: fix format copy
Rémi Denis-Courmont [Sat, 21 Feb 2015 08:49:10 +0000 (10:49 +0200)]
es_format: return an error if es_format_Copy() partially fails
Consistent with historical semantics, the destination format will
be incomplete but valid if the copy fails. It must be cleared with
es_format_Clean() even in case of error (as before).
Also add a few assertions against invalid formats.
Rémi Denis-Courmont [Sat, 21 Feb 2015 08:40:17 +0000 (10:40 +0200)]
es_format_t: make i_extra_languages unsigned
Rémi Denis-Courmont [Fri, 20 Feb 2015 22:34:29 +0000 (00:34 +0200)]
sout: voidify sout_stream_t.pf_del
This is always VLC_SUCCESS, or a forwarded value. Ultimately, the
value was (rightfully) ignored by the stream output core.
Rémi Denis-Courmont [Fri, 20 Feb 2015 22:01:23 +0000 (00:01 +0200)]
cycle: initial support for splitting stream output in time (refs #561)
Example:
#cycle{duration=20m,
dst=std{mux=ts,access=file,dst=sport.ts}, duration=5m},
dst=std{mux=ts,access=file,dst=weather.ts}, duration=5m}
Skips 20 minutes, then records 5 minutes to sport.ts, then 5 more
minutes to weather.ts and restarts.
"duration" specifies the duration of the previous phase
"offset" specifies the offset at which the previous phase ends
and the next phase begins
(mutually exclusive with duration)
"dst" specifies the stream output chain for the phase
(if missing, the phase is skipped/discarded)
Durations and offsets are so far expressed as an integer, optionally
followed by a unit: w=week, d=day, h=hour, m=minute, s=second. Second
is the default.
Currently only the decoding time stamp can be used as a reference, but
adding local or UTC clocks should be relatively easy.
ES synchronization and reference frames management is left for
further study.
Francois Cartegnie [Fri, 20 Feb 2015 16:25:35 +0000 (17:25 +0100)]
demux: ts: add buffer check before parsing PES
Francois Cartegnie [Fri, 20 Feb 2015 16:26:33 +0000 (17:26 +0100)]
demux: ts: add better EOF message
Francois Cartegnie [Wed, 18 Feb 2015 16:54:27 +0000 (17:54 +0100)]
demux: ts: Check PAT for duplicate programs (fix #13970)
refs issues/TS/dreambox.ts
Some Dreambox produced streams have patched PAT
setting all programs pid to the recorded's.
Reject that PAT and guess content from probing then.
Francois Cartegnie [Tue, 17 Feb 2015 14:34:29 +0000 (15:34 +0100)]
demux: ts: don't delay es creation if there's access control
Francois Cartegnie [Sun, 15 Feb 2015 19:01:26 +0000 (20:01 +0100)]
demux: ts: split PES header parsing
Francois Cartegnie [Wed, 18 Feb 2015 21:30:15 +0000 (22:30 +0100)]
demux: ts: fix pid loops boundary
Francois Cartegnie [Wed, 18 Feb 2015 17:44:45 +0000 (18:44 +0100)]
demux: ts: reject unknown probed streams
Francois Cartegnie [Fri, 20 Feb 2015 18:44:14 +0000 (19:44 +0100)]
demux: ts: delay sdt handling until es are created
refs #6175
If sdt appears prior pmt/es, the group from first
SET_GROUP_META call overrides default selection.
Thomas Guillem [Fri, 20 Feb 2015 16:27:40 +0000 (17:27 +0100)]
audiotrack: JNIThread is created/joined in Open/Close
Fix Start called after a Stop (When audio track changes).
- JNIThread won't kill itself anymore: In case of error, it will wait for the
Stop cmd.
- Handle AudioTrack exceptions: don't call audiotrack methods if an exception
occurred.
Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
Thomas Guillem [Fri, 20 Feb 2015 15:52:00 +0000 (16:52 +0100)]
audiotrack: fix audioTimestamp leak
Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
Steve Lhomme [Wed, 18 Feb 2015 16:12:33 +0000 (16:12 +0000)]
MKV: Don't allow Matroska Void/CRC32 elements fallback when looking for a level 1 element
Slightly better version with the right macros to access the semantic
context master.
Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
Thomas Guillem [Fri, 20 Feb 2015 13:22:00 +0000 (13:22 +0000)]
android_window: fix typo from "fix subtitles placement"
Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
Jean-Baptiste Kempf [Fri, 20 Feb 2015 14:26:18 +0000 (15:26 +0100)]
Contrib: delete the libdts.a symlink
It's useless for us and annoying on Windows
Jean-Baptiste Kempf [Fri, 20 Feb 2015 14:18:01 +0000 (15:18 +0100)]
Contribs: automatically remove ELF binaries from prebuilt on Win32
Thomas Guillem [Fri, 20 Feb 2015 09:00:17 +0000 (09:00 +0000)]
android_window: check subpicture i_order instead of comparing md5
Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
Vinson Lee [Fri, 20 Feb 2015 06:05:09 +0000 (06:05 +0000)]
rdp: Support FreeRDP-1.2.0-beta1-android9
Fix build errors.
CC access/librdp_plugin_la-rdp.lo
access/rdp.c: In function ‘Open’:
access/rdp.c:431:5: error: implicit declaration of function ‘freerdp_channels_global_init’ [-Werror=implicit-function-declaration]
freerdp_channels_global_init();
^
access/rdp.c: In function ‘Close’:
access/rdp.c:507:5: error: implicit declaration of function ‘freerdp_channels_global_uninit’ [-Werror=implicit-function-declaration]
freerdp_channels_global_uninit();
^
freerdp channels global functions were removed from FreeRDP repository
in commit
2a82684521dc8b23ae92e284e866227e5194a7bb .
commit
2a82684521dc8b23ae92e284e866227e5194a7bb
Author: Marc-André Moreau <marcandre.moreau@gmail.com>
Date: Wed Jun 11 16:27:31 2014 -0400
channels: cleanup unused freerdp channels global functions
Signed-off-by: Vinson Lee <vlee@freedesktop.org>
Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
Thomas Guillem [Fri, 20 Feb 2015 09:00:16 +0000 (09:00 +0000)]
vout: set an i_order to subpictures when they are rendered
This i_order can be used by vout display modules to easily compare subpictures.
That way, a module can bypass a subpicture rendering if it has been previously
rendered.
Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
Steve Lhomme [Fri, 20 Feb 2015 13:39:35 +0000 (14:39 +0100)]
MKV: do not read the whole Cluster data when seeking
Also pass the cluster to parse, because this interface change will be needed
for an upcoming patch.
Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
Steve Lhomme [Fri, 20 Feb 2015 13:40:01 +0000 (14:40 +0100)]
MKV: fix wrong EBML element checking before a cast
Fix a silly typo and loads Tags the first time we see them, during the
Preload phase.
Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
Thomas Guillem [Thu, 19 Feb 2015 17:27:57 +0000 (18:27 +0100)]
android_window: fix subtitles placement
Use the biggest size available between display and video size.
Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
Thomas Guillem [Fri, 20 Feb 2015 09:13:37 +0000 (10:13 +0100)]
audiotrack: increase audio latency
Queue more than one audio buffer at a time (limit of 1 second). TimeGet will
report a bigger delay, but the module will be more stable and more efficient.
AudioTrack delay is now calculated by JNIThread when a buffer is written.
Overall delay is calculated in TimeGet by adding AudioTrack delay and queued
delay.
Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
Rémi Denis-Courmont [Thu, 19 Feb 2015 22:36:39 +0000 (00:36 +0200)]
audioscrobbler: keep track of active input object
Fix callback leak.
Rémi Denis-Courmont [Thu, 19 Feb 2015 22:13:13 +0000 (00:13 +0200)]
growl: use input-current callback and simplify
Rémi Denis-Courmont [Thu, 19 Feb 2015 22:12:38 +0000 (00:12 +0200)]
notify: use input-current callback and simplify
Rémi Denis-Courmont [Thu, 19 Feb 2015 22:09:31 +0000 (00:09 +0200)]
vlc_list_children: use vlc_value_t.p_address, not .p_object
This was a remnant from the times of VLC_VAR_OBJECT.
Jonas Lundqvist [Thu, 19 Feb 2015 12:39:06 +0000 (12:39 +0000)]
playlist: Set the playlist input thread before triggering a callback
Close #13972
Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
Jérémy Carrier [Thu, 19 Feb 2015 16:03:28 +0000 (17:03 +0100)]
Contribs: Reduce git clone time by using --depth 1
Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
Jean-Baptiste Kempf [Thu, 19 Feb 2015 13:48:48 +0000 (14:48 +0100)]
Mpeg mux: fix compilation
Sébastien Toque [Thu, 19 Feb 2015 06:22:10 +0000 (07:22 +0100)]
tools: require protoc version 2.6.0 or higher
Signed-off-by: Rafaël Carré <funman@videolan.org>
Felix Paul Kühne [Wed, 18 Feb 2015 20:33:32 +0000 (21:33 +0100)]
ios build script: remove legacy configure flag
Jean-Baptiste Kempf [Wed, 18 Feb 2015 18:17:47 +0000 (19:17 +0100)]
Youtube: improve description parsing
Close #13973
Jean-Baptiste Kempf [Wed, 18 Feb 2015 18:11:21 +0000 (19:11 +0100)]
Screen: improve wording
Close #13971
Rémi Denis-Courmont [Wed, 18 Feb 2015 17:41:23 +0000 (19:41 +0200)]
DTV: add DVB-S2 stream support on Linux (fixes #12034)
Rémi Denis-Courmont [Wed, 18 Feb 2015 17:40:42 +0000 (19:40 +0200)]
DTV: add stream parameter for DVB-S2 (refs #12034)
Rémi Denis-Courmont [Wed, 18 Feb 2015 17:35:22 +0000 (19:35 +0200)]
DTV: DVB-T2 PLP ID is between 0 and 255
Rémi Denis-Courmont [Tue, 17 Feb 2015 21:10:16 +0000 (23:10 +0200)]
Mark unreachable code on GCC even if NDEBUG
This might suppress some warnings (and very slightly reduce code size)
when assertions are disabled. Not that I particularly like to create
VLC-specific macros.
David Fuhrmann [Tue, 17 Feb 2015 19:10:12 +0000 (20:10 +0100)]
macosx: fix float-on-top in combination with fullscreen
Rémi Denis-Courmont [Tue, 17 Feb 2015 18:42:57 +0000 (20:42 +0200)]
oss: initialize current device value at start
Jean-Baptiste Kempf [Tue, 17 Feb 2015 08:28:44 +0000 (09:28 +0100)]
MPEG mux: fix compilation
Close #13963
Jean-Baptiste Kempf [Mon, 16 Feb 2015 18:17:10 +0000 (19:17 +0100)]
Win32: reimplement tmpfile()
Because tmpfile() cannot be used if not admin on the machine on
Windows...
Close #13642
Rémi Denis-Courmont [Mon, 16 Feb 2015 17:51:39 +0000 (19:51 +0200)]
sout_standard: remove unused typedef
Rémi Denis-Courmont [Mon, 16 Feb 2015 17:33:28 +0000 (19:33 +0200)]
playlist: remove dead code and malloc(0)
Rémi Denis-Courmont [Mon, 16 Feb 2015 17:45:10 +0000 (19:45 +0200)]
sout_description: fix malloc usage
malloc(0) can return NULL. Don't use it to generate a non-NULL value
(NULL is the error code for sout_stream_t.pf_add).
Rémi Denis-Courmont [Mon, 16 Feb 2015 17:43:46 +0000 (19:43 +0200)]
sout_description: missing check in initialization
Rémi Denis-Courmont [Mon, 16 Feb 2015 17:25:03 +0000 (19:25 +0200)]
win32: remove non-standard empty struct
As far as I can tell, this is not allowed by the ISO C specification
(it is permitted in C++ though).
Jean-Baptiste Kempf [Sun, 15 Feb 2015 22:49:32 +0000 (23:49 +0100)]
Qt: fix always on top deactivation on Windows
See QTBUG-30359
Close #13646
Hannes Domani [Sun, 15 Feb 2015 18:19:44 +0000 (19:19 +0100)]
mux: ts: fix memory leak
Signed-off-by: Rémi Denis-Courmont <remi@remlab.net>
Hannes Domani [Sun, 15 Feb 2015 18:18:08 +0000 (19:18 +0100)]
x264: fix memory leak
Signed-off-by: Rémi Denis-Courmont <remi@remlab.net>
Jean-Baptiste Kempf [Sun, 15 Feb 2015 16:03:50 +0000 (17:03 +0100)]
Contribs: sort the packages in alphabetical order
David Fuhrmann [Sun, 15 Feb 2015 13:03:56 +0000 (14:03 +0100)]
macosx: Do not force-pause playback when resume dialog is shown
David Fuhrmann [Sun, 15 Feb 2015 10:54:18 +0000 (11:54 +0100)]
macosx: Hide prefs window if application is inactive
Makes sure the prefs window does not stay on top and hides
all other applications if VLC is inactive.
Jean-Baptiste Kempf [Fri, 13 Feb 2015 18:11:39 +0000 (19:11 +0100)]
Contrib: compile Qt native tools too
Jean-Baptiste Kempf [Thu, 12 Feb 2015 21:41:18 +0000 (22:41 +0100)]
Simple channel mixer: refuse 1 channel input
Rémi Denis-Courmont [Thu, 12 Feb 2015 21:05:25 +0000 (23:05 +0200)]
lua: attempt to clarify playlist documentation
Rémi Denis-Courmont [Thu, 12 Feb 2015 21:05:09 +0000 (23:05 +0200)]
lua: update example input item option
Rafaël Carré [Thu, 12 Feb 2015 20:58:32 +0000 (21:58 +0100)]
contrib: ssh2: explicitely depend on gcrypt
OpenSSL is the default if both exist
Jean-Baptiste Kempf [Thu, 12 Feb 2015 20:34:08 +0000 (21:34 +0100)]
DirectSound: always set the original_channels
Ref #13826
Felix Paul Kühne [Thu, 12 Feb 2015 19:47:15 +0000 (20:47 +0100)]
darwin aout modules: fix mono playback (refs #13826)
This matches the ALSA implementation now.
Felix Paul Kühne [Thu, 12 Feb 2015 15:04:47 +0000 (16:04 +0100)]
freetype: fix linking on Darwin
Rémi Denis-Courmont [Thu, 12 Feb 2015 19:00:37 +0000 (21:00 +0200)]
speexdsp: add speex alias
Rémi Denis-Courmont [Thu, 12 Feb 2015 18:54:58 +0000 (20:54 +0200)]
speexdsp: fix integer overflow (probably fixes #5781)
Rémi Denis-Courmont [Thu, 12 Feb 2015 17:14:29 +0000 (19:14 +0200)]
gui: fix .gitignore cat error
Jean-Baptiste Kempf [Thu, 12 Feb 2015 16:42:25 +0000 (17:42 +0100)]
Contrib: update gpg-error
Jonathan Calmels [Thu, 12 Feb 2015 15:32:00 +0000 (16:32 +0100)]
dash: fix invalid C++11 suffix literals
Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
Francois Cartegnie [Thu, 12 Feb 2015 10:17:22 +0000 (11:17 +0100)]
demux: ogg: check packets header size (fix #13875)
Rémi Denis-Courmont [Thu, 12 Feb 2015 06:37:57 +0000 (08:37 +0200)]
configure: move SOCKET_LIBS to Makefiles where needed
Rémi Denis-Courmont [Thu, 12 Feb 2015 06:36:46 +0000 (08:36 +0200)]
configure: move LIBM to Makefiles
Rémi Denis-Courmont [Thu, 12 Feb 2015 06:19:21 +0000 (08:19 +0200)]
configure: remove remove reference to nonexistent access_rtmp plugin
Rémi Denis-Courmont [Wed, 11 Feb 2015 16:44:41 +0000 (18:44 +0200)]
stream_out: remove Makefile recursion
Rémi Denis-Courmont [Wed, 11 Feb 2015 16:28:45 +0000 (18:28 +0200)]
access_output: remove Makefile recursion