Loïc Branstett
f93de3ef23
stream/demux: move remaining callbacks to their respective ops struct
...
This commit moves the remaining callbacks of stream/demux: pf_read/
pf_block/pf_seek/pf_readdir and pf_demux into their operations table,
aiming at unifying all the callbacks under a unique place.
This is a follow-up to the introduction of typed controls callbacks
for stream and demux.
Like for the typed controls callbacks if no operation is provided
(ie, stream_t/demux_t.ops is NULL) by a module, the legacy pf_* will be
used instead as a fallback.
The commit doesn't migrate any of modules yet.
2023-03-24 10:51:36 +00:00
Alexandre Janniaux
ff415efe3e
access: remove hardcoded size
2022-06-23 19:16:00 +00:00
Lyndon Brown
f6dad0e9f1
Revert "core: remove pointless re-initialisation of `stream_t` attributes"
...
This reverts commit b10f5a02e1
.
as requested in follow-up discussion in !1104 .
2022-01-13 15:42:21 +00:00
Lyndon Brown
b10f5a02e1
core: remove pointless re-initialisation of `stream_t` attributes
2022-01-10 07:03:38 +00:00
Rémi Denis-Courmont
c1c7b3cf12
access: forcefully convert MRL to local file path
...
This functionally reverts e124481d14
.
Fixes #26115 .
2021-09-19 18:02:31 +00:00
Rémi Denis-Courmont
f617968196
input: absolute URLs do not necessarily have ://
...
This accepts a lone ':', which is not followed by two forward slashes
if the URL lacks a host part.
2021-09-19 18:02:31 +00:00
Rémi Denis-Courmont
cd66157245
input: remove no longer used get_path()
2021-09-16 19:32:34 +00:00
Rémi Denis-Courmont
e124481d14
access: use vlc_uri2path() directly
2021-09-16 19:32:34 +00:00
Hugo Beauzée-Luyssen
165ccf2cdf
input: Refcount attachments
...
Instead of performing a deep copy every time they are fetched
2020-11-18 12:20:59 +01:00
Rémi Denis-Courmont
07b7122857
objects: introduce vlc_object_delete()
...
Objects have one strong reference held by their "owner", and zero or
more weak references generated by vlc_object_hold() et al. This
provides a separate function to remove the strong reference than
vlc_object_release() to remove weak ones.
With this sole change, this is really only an annotation though.
2019-03-06 22:53:24 +02:00
Hugo Beauzée-Luyssen
ac316d119f
input: Add missing allocation error check
2019-02-11 16:06:49 +01:00
Steve Lhomme
5363279805
remove the $Id$ in the source code
2019-01-17 12:21:18 +01:00
Thomas Guillem
b43a25889c
input: hide attachments controls
...
Since they are only used privately.
2018-09-04 16:38:03 +02:00
Thomas Guillem
6b96ade7dd
stream: replace input_thread_t by input_item_t
...
This will prevent all demuxers/access/streams to mess with the input_thread_t
state.
2018-07-20 17:23:03 +02:00
Thomas Guillem
d9d0ed3aa8
access: keep stream input in a private struct
2018-07-20 17:23:03 +02:00
Thomas Guillem
3b76777894
access: handle attachment:// with vlc_stream_AttachmentNew
2018-07-20 17:23:03 +02:00
Steve Lhomme
26fef56c52
core: make DEMUX/STREAM_GET_PTS_DELAY officially a vlc_tick_t
2018-07-06 10:48:19 +02:00
Rémi Denis-Courmont
fc7362222b
access: develop stream_FilterAutoNew() calls
...
Moves calls to stream_FilterAutoNew() out of stream_AccessNew().
No overall functional changes.
2018-04-16 18:08:07 +03:00
Rémi Denis-Courmont
23127b5ce3
access: privatize module pointer
2018-04-06 20:45:10 +03:00
Rémi Denis-Courmont
2a754eee03
access: restore "access" type name
2018-04-06 20:10:57 +03:00
Rémi Denis-Courmont
b5cac1b22b
access: do not create stream for directories
...
The access-wrapper stream is left over from the time when the cache was
built into the core. Now it only computes statistics, and serves no
purposes for directories. This anyway needs to be removed for
access_demux support.
2018-03-31 18:01:14 +03:00
Rémi Denis-Courmont
8f349c578d
access: create access before stream
2018-03-31 18:01:14 +03:00
Rémi Denis-Courmont
c3e02261e0
stream: remove no longer used STREAM_IS_DIRECTORY
2018-03-31 18:01:12 +03:00
Rémi Denis-Courmont
2ec4bfe7b1
stream: remove dummy pf_readdir callbacks
...
This was required for stream filters, but not for accesses. Now that
both are stream_t, this has become inconsistent.
So this just makes them optional also for stream filters.
2018-03-31 17:59:20 +03:00
Rémi Denis-Courmont
9c6cde9415
access: pass ES output to access_New()
2018-03-29 18:22:38 +03:00
Rémi Denis-Courmont
cb46a2200a
stats: vector locking
2017-12-12 20:36:01 +02:00
Rémi Denis-Courmont
db65409227
stats: factor packets counter code
2017-12-12 20:36:01 +02:00
Rémi Denis-Courmont
69faa87b8a
stats: factor sum and rate code
2017-12-12 20:36:01 +02:00
Rémi Denis-Courmont
a021209d08
input: allocate stats in separate structure
2017-12-12 20:36:01 +02:00
Rémi Denis-Courmont
91882d2da2
stats: allocate rate estimators in place
...
This simplifies the input code.
2017-12-11 22:01:17 +02:00
Rémi Denis-Courmont
d67fd22472
stats: simplify
2017-12-11 20:56:01 +02:00
Rémi Denis-Courmont
75f5ad27cd
stats: replace counters with simple integers
...
In case you wondered how to over-engineer the integer addition.
2017-12-11 20:56:00 +02:00
Thomas Guillem
c458178af2
input: move access_fsdir to input/item.c
2017-09-20 16:56:59 +02:00
Rémi Denis-Courmont
c366376455
Split out vlc_filenamecmp()
...
(easier to test separately)
2017-07-23 11:49:35 +03:00
Rémi Denis-Courmont
e4ba64d291
Remove access_t
2017-07-23 08:55:40 +03:00
Rémi Denis-Courmont
12dee8802a
input: probe stream filters in stream_AccessNew()
...
This probes stream filters not only for the input thread stream (as
before), but also for custom vlc_stream_NewURL() callers.
2017-07-23 08:55:40 +03:00
Rémi Denis-Courmont
15769b48c4
input: add explicit input_item_node_RemoveNode()
...
This is rarely used (only once in the whole code base).
2017-05-18 21:46:31 +03:00
Rémi Denis-Courmont
c223268f6e
Use TAB_APPEND instead of INSERT_ELEM where applicable
2017-05-18 21:21:13 +03:00
Rémi Denis-Courmont
c0d5d15812
stream: removed unused control argument
2017-04-18 21:54:09 +03:00
Thomas Guillem
d360b527f0
access: fix typo
...
strcasecmp should replace strcoll if HAVE_STRCOLL is not defined.
2017-03-15 10:49:01 +01:00
Thomas Guillem
df8468293c
directory: fix compare between digit and nondigit
...
strcoll should be used if a or b are nondigit.
2017-03-10 18:48:35 +01:00
Rémi Denis-Courmont
40b946f215
directory: reconcile numerical and alphabetical sorting
2017-02-18 10:31:54 +02:00
Rémi Denis-Courmont
9b1ac09c99
input: remove input_item_node_t.pf_compar
2016-11-21 21:33:43 +02:00
Rémi Denis-Courmont
ad4a50d394
input: remove indirection from input to input private data
...
Put the input thread (public) within the private data, like we already
do for some other core-allocated objects. This removes one layer of
indirection for almost all internal input values.
input_thread_t.p no longer exists. Use input_priv() instead.
2016-11-05 10:44:55 +02:00
Thomas Guillem
b0f06e8f62
access: fix string leak in case of redirect
2016-09-01 16:11:38 +02:00
Filip Roséen
060fa61272
input/access: remove trailing whitespace
...
Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
2016-08-02 15:38:23 +02:00
Rémi Denis-Courmont
94b7183f51
stream_access: simplify
...
(only reason it is not removed is input stats at this point)
2016-07-21 22:27:00 +03:00
Rémi Denis-Courmont
38be0d228c
stream: merge access_t and stream_t
...
They were mostly identical, with just a few extra fields in access_t.
Merging them will allow removing the dummy stream_Access layer.
2016-07-21 22:27:00 +03:00
Rémi Denis-Courmont
6a3c9b1d4a
prefetch: add support for block-based accesses
...
This still requires memory copying, but at least it does not introduce
timing issues.
2016-07-21 22:27:00 +03:00
Rémi Denis-Courmont
312d198438
stream: stream_ -> vlc_stream_
2016-07-21 22:26:57 +03:00