Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.freedesktop.org/gstreamer/gst-plugins-rs.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-12-18Update Cargo.lockgstreamer-1.22.80.9Sebastian Dröge
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1411>
2023-12-18threadshare: Fix a deadlock in used-socket notificationArun Raghavan
This manifests in a gst-launch-1.0 pipeline using ts-udpsrc, since notification of used-socket results in the property being read by the application, and the settings lock causes a deadlock. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1411>
2023-12-18threadshare: Fix a typo while loggingArun Raghavan
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1411>
2023-12-18webrtcsink: don't panic on failure to request pad from webrtcbinMathieu Duponchelle
webrtcbin will refuse pad requests for all sorts of reasons, and should be logging an error when doing so, simply post an error message and let the application deal with it, the reason for the refusal should hopefully be available in the logs to the user. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1411>
2023-12-18fallbacksrc: Fix timeout schedulingSeungha Yang
Other thread can schedule the timeout (e.g., unblock signal or active pad change) while state lock is released Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1411>
2023-12-18ndi: Don't mark private type as publicSebastian Dröge
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1411>
2023-12-18ndi: Remove wrong `Clone` impl on `RecvInstance`Sebastian Dröge
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1411>
2023-11-13net: aws: tests: use unicode escapes for unicode charactersgstreamer-1.22.7Tim-Philipp Müller
.. instead of putting actual multi-byte unicode characters into the source code which appears to make hotdoc unhappy. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1390>
2023-11-10Update Cargo.lockSebastian Dröge
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1387>
2023-11-10Update versions to 0.9.12Sebastian Dröge
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1387>
2023-11-10sccparse: Fix leading spaces between the tab and caption dataSebastian Dröge
CCExtractor is creating files like this. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1387>
2023-11-10Set sync=false in rsfilesink / s3sinkSebastian Dröge
BaseSink defaults to sync=true and that doesn't make much sense for these elements. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1387>
2023-11-10livesync: Remove the stop from outgoing segmentsJan Alexander Steffens (heftig)
Our buffer duplication can extend a segment indefinitely. Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/452 Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1387>
2023-11-10livesync: Keep existing buffer duration in some casesJan Alexander Steffens (heftig)
Resize a repeat buffer only if caps gave us a duration to use, or we consider its current duration unreasonable. In particular, for audio streams we should prefer reusing the buffer size upstream gave us, as we did before 6633cc4046aa1f5a. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1387>
2023-11-10livesync: Split fallback_duration into in_ and out_durationJan Alexander Steffens (heftig)
Make it independent of the `latency`; this was inconsistent anyway, where the default latency of zero got you a fallback duration of 100 ms and something else got you half the latency. Maintain a separate duration for the `in` and the `out` side so we change the duration of repeat buffers after a caps change, not just before. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1387>
2023-11-10livesync: display jitter when waiting on clockGuillaume Desmottes
We already log the result of the clock wait call so may as well log the returned jitter. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1387>
2023-11-10livesync: log new pending segmentsGuillaume Desmottes
The debug print of the event does not display details about the segment: Unqueueing Some(Event(Event { ptr: 0x7fa3e0002580, type: "segment", seqnum: Seqnum(479), structure: Some(GstEventSegment { segment: (GstSegment) ((GstSegment*) 0x7fa3e8001d00) }) })) Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1387>
2023-11-10livesync: example: Add identities single-segment=1Jan Alexander Steffens (heftig)
These let us change the runtime offset of the test buffers via pad offsets without pushing new segments into livesync, which is necessary to demo the late-threshold behavior. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1387>
2023-11-10livesync: Use fallback_duration for audio repeat buffers as wellJan Alexander Steffens (heftig)
Don't depend on upstream giving us sanely-sized buffers if we want to repeat. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1387>
2023-11-10livesync: Separate out_buffer duplicate status from GAP flagJan Alexander Steffens (heftig)
Otherwise we might get confused by upstream GAP buffers. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1387>
2023-11-10livesync: Handle flags and late buffer patching after queueingJan Alexander Steffens (heftig)
This makes the chain function almost independent of the output state. We still do the early discard check with `buffer_is_backwards` so we don't try to queue buffers we can't use, allowing us to fast-forward upstream without blocking on the src task. Don't accept `LateOverThreshold` buffers when we have `pending_caps` or a `pending_segment`. We need to apply these first before we can sensibly patch buffers from the new stream. Deduplicate most of the output buffer patching code into a new `patch_output_buffer` method. For: https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/450 Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1387>
2023-11-10livesync: Simplify num_duplicate countingJan Alexander Steffens (heftig)
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1387>
2023-11-10livesync: Move num_in counting to the src taskJan Alexander Steffens (heftig)
This is in preparation for moving more accept/discard logic to the src task, so we can only count `num_in` here. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1387>
2023-11-10livesync: Move a notify closer to the interesting state changeJan Alexander Steffens (heftig)
Move the `notify_all` to where we pop the buffer. We're moving within a single state lock so no change in behavior. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1387>
2023-11-10livesync: Replace an if-let with matchJan Alexander Steffens (heftig)
No change in behavior, yet. Separate commit to ease reviewing. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1387>
2023-11-10livesync: Clean up state handlingJan Alexander Steffens (heftig)
- Separate resetting state more cleanly, introducing `set_flushing`, `sink_reset` and `src_reset`. - Clear the queue early when we flush, in order to unblock waits on query responses. - Return an error when we fail to start, pause or stop the task. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1387>
2023-11-10livesync: Log a category error when we are missing the segmentJan Alexander Steffens (heftig)
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1387>
2023-11-10livesync: Improve audio duration fixupsJan Alexander Steffens (heftig)
- An entirely missing duration is now only logged at debug level instead of pretending the duration was zero and warning about it. - Silently fix up a duration difference up to one sample. - Error when we fail to calculate the duration; don't try to apply the `fallback_duration` to a non-video stream. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1387>
2023-11-10livesync: Simplify start_src_task and src_loopJan Alexander Steffens (heftig)
This should effect no change in behavior. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1387>
2023-11-10livesync: Rename activatemode methods to *_activatemodeJan Alexander Steffens (heftig)
This matches the other plugins. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1387>
2023-11-10aws: s3: Properly percent-decode GstS3UrlArun Raghavan
We previously only percent-decoded the first fragment. This doesn't necessarily harm anything, but for consistency we keep the structure un-encoded, and encode when converting to a string representation. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1387>
2023-11-10aws: s3sink: Fix handling of special characters in keyArun Raghavan
Properly URL-encode the string if needed, and add some tests for a couple of cases. Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/431 Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1387>
2023-11-10rtpav1depay: Don't push stale temporal delimiters downstreamSebastian Dröge
Only push them downstream once a complete OBU was assembled. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1387>
2023-11-10rtpav1depay: Skip unexpected leading fragmentsSebastian Dröge
If a packet is starting with a leading fragment but we do not expect to receive one, then skip over it to the next OBU. Not doing so would cause parsing of the middle of an OBU, which would most likely fail and cause unnecessary warning messages about a corrupted stream. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1387>
2023-11-10ndisrc: Assume input with more than 8 raw audio channels is unpositionedLieven Paulissen
gst_audio_channel_positions_from_mask() will otherwise print warnings all the time. Fixes #444 Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1387>
2023-11-10fmp4mux: specify the fragment duration unitStéphane Cerveau
The fragment duration is expressed in nanoseconds. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1387>
2023-11-10net/webrtcsink: don't miss ice candidatesFrançois Laignel
During `on_remote_description_set()` processing, current session is removed from the sessions `HashMap`. If an ice candidate is submitted to `handle_ice()` by that time, the session can't be found and the candidate is ignored. This commit wraps the Session in the sessions `HashMap` so an entry is kept while `on_remote_description_set()` is running. Incoming candidates received by `handle_ice()` will be processed immediately or enqueued and handled when the session is restored by `on_remote_description_set()`. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1387>
2023-11-10webrtcsrc: add turn-servers propertyMaksym Khomenko
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1387>
2023-11-10webrtcsrc: use @watch instead of @to-ownedMaksym Khomenko
@to-owned increases refcount of the element, which prevents the object from proper destruction, as the initial refcount with ElementFactory::make is larger than 1. Instead, use @watch to create a weak reference and unbind the closure automatically if the object gets destroyed Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1387>
2023-11-10webrtc: Fix paths in READMEPiotr Brzeziński
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1387>
2023-11-10net: webrtc/webrtchttp: Respect HTTP redirectsSean DuBois
Properly follow redirect URL. Before new request would be made, but with original URL again. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1387>
2023-11-10hlssink3: Various cleanupSeungha Yang
* Simplify state/playlist management * Fix a bug that segment is not deleted if location contains directory and playlist-root is unset * Split playlist update routine into two steps, adding segment to playlist and playlist write Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1387>
2023-11-10hlssink3: Don't remove uri from playlist if playlist-length is zeroSeungha Yang
Behave as documented in property description Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1387>
2023-11-10hlssink3: Don't remove old files if max-files is zeroSeungha Yang
Follow hlssink2 element's behavior Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1387>
2023-11-10hlssink3: Remove unused depsSeungha Yang
gstreamer-base dep is unused. And use gst::glib Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1387>
2023-11-10hlssink3: Use sprintf for segment name formattingSeungha Yang
The zero-padded naming requirement is unnecessary. Use simple sprintf instead Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1387>
2023-11-10hlssink3: Use Path API for getting file nameSeungha Yang
Current implementation does not support Windows path separator. Use Path API instead. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1387>
2023-09-27fmp4mux: Don't overflow negative composition offset calculationSebastian Dröge
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1338>
2023-09-20fallbackswitch: protect src pad stream lock using Condgstreamer-1.22.6Guillaume Desmottes
Should prevent stream and State deadlocks, see https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/202 Fix #202 Hopefully fix #192 as well. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1329>
2023-09-20fallbackswitch: prevent deadlocks in chain functionGuillaume Desmottes
Calling schedule_timeout() may result in handle_timeout() being called right away, which will need pad state locks which was still hold in chain(). Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1329>