Seungha Yang
e1a22402d3
tools: Make sure UTF-8 encoded command line arguments on Windows
...
On Windows, arguments passed in main() are system codepage
encoded and might not be valid UTF-8 string.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3828 >
2023-02-03 16:05:19 +00:00
Seungha Yang
c0a4f41525
pluginloader-win32: Prepend gstreamer-1.0-0.dll directory to PATH env for child process
...
Usually gst-plugin-scanner.exe will be located under libexec/gstreamer-1.0
or even somewhere user specified location via GST_PLUGIN_SCANNER
environment. So, in order for child process to be able to load
GStreamer DLLs, parent process will need to update PATH env
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3886 >
2023-02-03 14:25:21 +00:00
Jan Schmidt
138863b327
gsturi: Add API to order query strings
...
Add gst_uri_get_query_string_ordered() and gst_uri_to_string_with_keys() that
allow constructing the URI string with query arguments in a specific order.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3803 >
2023-02-02 11:02:47 +01:00
Thibault Saunier
3963396716
gstutils: Add a utility to create a stream-id without a pad
...
We already have functions to generate a stream-id from pads but in the
end those pads are not even used in most cases. This adds functions to
generate a stream-id even before creating the source pads for the
element that is going to use it. For example a demuxer that is properly
implements the GstStream/GstStreamCollection API will not have a Pad but
already needs to generate a stream-id.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3160 >
2023-02-01 22:26:33 +00:00
Seungha Yang
09d29cca5a
pluginloader-win32: Watch child process handle on connection
...
... so that parent can avoid waiting if child process got terminated
unexpectedly
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3863 >
2023-02-01 17:00:11 +00:00
Seungha Yang
464a8be3a4
pluginloader-win32: Check pipe state in child process
...
Retry if server is not ready for the connection
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3863 >
2023-02-01 17:00:11 +00:00
Seungha Yang
0df7cd852c
pluginloader-win32: Enhance debug log
...
Change log level to ERROR if it's unexpected, and print error reasons
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3863 >
2023-02-01 17:00:10 +00:00
Seungha Yang
f314884b7d
pluginloader-win32: Zero initialize overlapped struct before use
...
Helper child process might be spawned multiple times for some reason
then overlapped struct can hold garbage data. Always clear the struct.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3863 >
2023-02-01 17:00:10 +00:00
Thibault Saunier
35e2ecd48b
clocksync: Add "QoS" support
...
When ClockSync synchronizes the data stream on the clock, it should also
push `QoS` events if the user wants to do it as, as stated in [the QoS
design doc] "Elements that synchronize buffers on the pipeline clock
will usually measure the current QoS".
The logic has been replicated from `GstBaseSink`.
[the QoS design doc]: https://gstreamer.freedesktop.org/documentation/plugin-development/advanced/qos.html
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2225 >
2023-02-01 07:02:19 +00:00
Mathieu Duponchelle
4d240c27b7
BaseSrc: fix transfer annotation for fixate virtual method
...
The fixate virtual method has the same semantics as gst_caps_fixate(),
so the caps parameter must be marked as (transfer full).
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3830 >
2023-01-28 03:48:21 +00:00
Mathieu Duponchelle
c8298a2787
BaseSrc, PushSrc: add nullable annotations to virtual methods
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3806 >
2023-01-26 22:35:31 +00:00
Jan Alexander Steffens (heftig)
e3fa65abab
aggregator: Warn about the right segment's format
...
We were checking the head segment here, not the current segment.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/611 >
2023-01-26 10:39:08 +01:00
Jan Alexander Steffens (heftig)
08d4b0051a
aggregator: Always lock aggpad around update_time_level
...
`aggpad->segment` is protected by the `aggpad`'s object lock. We need to
take the lock before calling `update_time_level`.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/611 >
2023-01-26 10:39:08 +01:00
Daniel Ulery
befab7af72
filesink: Adds rb+ file mode
...
Adds rb+ file mode to filesink so that files can be pre-allocated. This
can be use to keep reduce fragmentation over time with splitmuxsink.
Fixes #955
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1532 >
2023-01-26 07:05:21 +00:00
Seungha Yang
621feb32e9
gst-plugin-scanner: Add support for Windows
...
Adding Win32 specific plugin loader implementation.
Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/11
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3512 >
2023-01-25 18:24:28 +00:00
Sebastian Dröge
bfaa02ab56
gst: Fix gst_type_find_peek() return value annotation
...
It's not possible to annotate a in-parameter for a return value array as
the array length. Both are assumed to have the same direction and the
current annotation causes the size parameter to be considered an out
parameter.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3787 >
2023-01-25 13:16:44 +00:00
Edward Hervey
21cad29bcd
multiqueue: Handle use-interleave latency live pipelines
...
Due to the dynamic nature of multiqueue, when `use-interleave` is used we can't
report a maximum tolerated latency (when queried) since it is calculated
dynamically.
When in such live pipelines, we need to make sure multiqueue can handle the
lowest global latency (provided by this event). Failure to do that would
result in not providing enough buffering for a realtime pipeline.
Fixes #1732
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3772 >
2023-01-24 19:42:49 +00:00
Thibault Saunier
095a5ba425
factory: Add "Timestamper" as new factory type
...
This will be used by elements that correct timestamps (like the
h264timestamper for example)
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3779 >
2023-01-24 16:31:40 +00:00
Tim-Philipp Müller
45aac1e938
base: bitwriter: drop use of GSlice
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3695 >
2023-01-24 15:25:06 +00:00
Tim-Philipp Müller
3dd12cb640
inputselector: drop use of GSlice
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3695 >
2023-01-24 15:25:06 +00:00
Tim-Philipp Müller
78a941e873
multiqueue: drop use of GSlice
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3695 >
2023-01-24 15:25:06 +00:00
Tim-Philipp Müller
fa55d8302b
queue2: drop use of GSlice
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3695 >
2023-01-24 15:25:06 +00:00
Tim-Philipp Müller
ed78e55bc7
tracers: drop use of GSlice
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3695 >
2023-01-24 15:25:06 +00:00
Tim-Philipp Müller
78149326c9
libs: base: drop use of GSlice
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3695 >
2023-01-24 15:25:06 +00:00
Tim-Philipp Müller
1919030363
baseparse: drop use of GSlice
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3695 >
2023-01-24 15:25:06 +00:00
Tim-Philipp Müller
ba6d952cd5
gstcheck: drop use of GSlice
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3695 >
2023-01-24 15:25:06 +00:00
Tim-Philipp Müller
bda6287075
controller: drop use of GSlice
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3695 >
2023-01-24 15:25:06 +00:00
Tim-Philipp Müller
c1baa37f74
tracerutils: drop use of GSlice
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3695 >
2023-01-24 15:25:06 +00:00
Tim-Philipp Müller
3261daa623
taskpool: drop use of GSlice
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3695 >
2023-01-24 15:25:06 +00:00
Tim-Philipp Müller
eeced74fce
segment: drop use of GSlice
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3695 >
2023-01-24 15:25:06 +00:00
Tim-Philipp Müller
19a6468a53
sample: drop use of GSlice
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3695 >
2023-01-24 15:25:06 +00:00
Tim-Philipp Müller
f343d01f10
query: drop use of GSlice
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3695 >
2023-01-24 15:25:06 +00:00
Tim-Philipp Müller
e190ff16cc
iterator: drop use of GSlice
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3695 >
2023-01-24 15:25:05 +00:00
Tim-Philipp Müller
6a0be7ea56
event: drop use of GSlice
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3695 >
2023-01-24 15:25:05 +00:00
Tim-Philipp Müller
dcc8830bb2
info: drop use of GSlice
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3695 >
2023-01-24 15:25:05 +00:00
Tim-Philipp Müller
2f88c68659
devicemonitor: drop use of GSlice
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3695 >
2023-01-24 15:25:05 +00:00
Tim-Philipp Müller
15c1b9ad45
datetime: drop use of GSlice
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3695 >
2023-01-24 15:25:05 +00:00
Tim-Philipp Müller
384c4f1bef
clockentry: drop use of GSlice
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3695 >
2023-01-24 15:25:05 +00:00
Tim-Philipp Müller
1c8bb3f8db
context: drop use of GSlice
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3695 >
2023-01-24 15:25:05 +00:00
Tim-Philipp Müller
267adee5b7
uri: drop use of GSlice
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3695 >
2023-01-24 15:25:05 +00:00
Tim-Philipp Müller
755f214a52
meta: drop use of GSlice
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3695 >
2023-01-24 15:25:05 +00:00
Tim-Philipp Müller
9dd70085f1
message: drop use of GSlice
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3695 >
2023-01-24 15:25:05 +00:00
Tim-Philipp Müller
976861a07a
gstvalue: drop use of GSlice
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3695 >
2023-01-24 15:25:05 +00:00
Tim-Philipp Müller
76c8a619f9
caps, capsfeatures: drop use of GSlice
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3695 >
2023-01-24 15:25:05 +00:00
Tim-Philipp Müller
7d58554f4c
bus, poll: drop use of GSlice
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3695 >
2023-01-24 15:25:05 +00:00
Tim-Philipp Müller
5a2d643f9b
bin: drop use of GSlice
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3695 >
2023-01-24 15:25:05 +00:00
Tim-Philipp Müller
aef5456140
taglist, tagsetter: drop use of GSlice
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3695 >
2023-01-24 15:25:05 +00:00
Tim-Philipp Müller
7d1675e42e
toc, tocsetter: drop use of GSlice
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3695 >
2023-01-24 15:25:05 +00:00
Tim-Philipp Müller
25f7fa1efc
allocator, buffer, bufferlist: drop use of GSlice
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3695 >
2023-01-24 15:25:05 +00:00
Tim-Philipp Müller
9e71898337
registrychunks: get rid of internal GST_REGISTRY_CHUNK_FLAG_MALLOC
...
Not actually needed.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3695 >
2023-01-24 15:25:05 +00:00