commit 4dc2ed2b18a4a9fc7d477ea029cedb24d0927d5b Author: Adrian Schröter Date: Sat Feb 10 20:04:14 2024 +0100 Sync from SUSE:ALP:Source:Standard:1.0 gstreamer-plugins-rs revision 5bc60ec144eba6d88887ff5fc11db885 diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..fecc750 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/_constraints b/_constraints new file mode 100644 index 0000000..5004887 --- /dev/null +++ b/_constraints @@ -0,0 +1,56 @@ + + + + 30 + + + + + i586 + + + + 27 + + + + + + aarch64 + + + + 27 + + + 16 + + + + + + s390x + + + + 23 + + + 12 + + + + + + riscv64 + + + + 23 + + + 10 + + + + diff --git a/_service b/_service new file mode 100644 index 0000000..229e98b --- /dev/null +++ b/_service @@ -0,0 +1,24 @@ + + + + https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs.git + gst-plugins-rs + 0.11.3 + refs/tags/0.11.3+fixup + git + + + + + *.tar + xz + + + gst-plugins-rs + true + + + + gst-plugins-rs + + diff --git a/cargo_config b/cargo_config new file mode 100644 index 0000000..1ecb983 --- /dev/null +++ b/cargo_config @@ -0,0 +1,29 @@ +[source.crates-io] +replace-with = "vendored-sources" + +[source."git+https://github.com/gtk-rs/gtk-rs-core?branch=0.18"] +git = "https://github.com/gtk-rs/gtk-rs-core" +branch = "0.18" +replace-with = "vendored-sources" + +[source."git+https://github.com/gtk-rs/gtk4-rs?branch=0.7"] +git = "https://github.com/gtk-rs/gtk4-rs" +branch = "0.7" +replace-with = "vendored-sources" + +[source."git+https://github.com/rust-av/ffv1.git?rev=2afb025a327173ce891954c052e804d0f880368a"] +git = "https://github.com/rust-av/ffv1.git" +rev = "2afb025a327173ce891954c052e804d0f880368a" +replace-with = "vendored-sources" + +[source."git+https://github.com/rust-av/flavors"] +git = "https://github.com/rust-av/flavors" +replace-with = "vendored-sources" + +[source."git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21"] +git = "https://gitlab.freedesktop.org/gstreamer/gstreamer-rs" +branch = "0.21" +replace-with = "vendored-sources" + +[source.vendored-sources] +directory = "vendor" diff --git a/gst-plugins-rs-0.11.3.obscpio b/gst-plugins-rs-0.11.3.obscpio new file mode 100644 index 0000000..b31766d --- /dev/null +++ b/gst-plugins-rs-0.11.3.obscpio @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c3b3c6a2b9a7c1ca987ed6d85192d7a3918cf5a93e01cf4fe4beb9d8f681904 +size 8611853 diff --git a/gst-plugins-rs.obsinfo b/gst-plugins-rs.obsinfo new file mode 100644 index 0000000..d830621 --- /dev/null +++ b/gst-plugins-rs.obsinfo @@ -0,0 +1,4 @@ +name: gst-plugins-rs +version: 0.11.3 +mtime: 1704366323 +commit: 5bba2f783632bb27687662017d703af2fb2fd4f1 diff --git a/gstreamer-plugins-rs.appdata.xml b/gstreamer-plugins-rs.appdata.xml new file mode 100644 index 0000000..fb89859 --- /dev/null +++ b/gstreamer-plugins-rs.appdata.xml @@ -0,0 +1,16 @@ + + + + gstreamer-plugins-rs + CC0 + GStreamer Plugins rust + Multimedia plugins written in rust + +

+ This addon includes several plugins that are written in Rust. +

+

+ The plugins build upon the GStreamer Rust bindings. +

+
+
diff --git a/gstreamer-plugins-rs.changes b/gstreamer-plugins-rs.changes new file mode 100644 index 0000000..352880e --- /dev/null +++ b/gstreamer-plugins-rs.changes @@ -0,0 +1,1434 @@ +------------------------------------------------------------------- +Mon Jan 29 10:22:55 UTC 2024 - Antonio Larrosa + +- Increase memory to 12G for s390x builds in _constraints + (bsc#1218563). + +------------------------------------------------------------------- +Thu Jan 11 12:56:06 UTC 2024 - Antonio Larrosa + +- Increase memory to 10G for s390x builds in _constraints + (bsc#1218563). + +------------------------------------------------------------------- +Thu Jan 11 11:32:07 UTC 2024 - Antonio Larrosa + +- Update both vendor files and include jsonwebtoken 9.2 in them. +- The ring crate only supports s390x since v0.17.0 and jsonwebtoken + 8 uses an older version, so we now patch livekit-api to use + jsonwebtoken 9(.2) which allows to build the package in s390x + (bsc#1218563). + +------------------------------------------------------------------- +Thu Jan 4 06:48:52 UTC 2024 - Antonio Larrosa + +- Update to version 0.11.3: + + Fixed + - ndi: Mark a private type as such and remove a wrong `Clone` + impl of internal types. + - uriplaylistbin: Fix a minor clippy warning. + - fallbacksrc: Fix error during badly timed timeout scheduling. + - webrtcsink: Fail gracefully if webrtcbin pads can't be + requested instead of panicking. + - threadshare: Fix deadlock in `ts-udpsrc` + `notify::used-socket` signal emission. + + Changed + - Update to AWS SDK 1.0. + - Update to windows-sys 0.52. + - Update to async-tungstenite 0.24. + - Update to bitstream-io 2.0. + - tttocea608: De-duplicate some functions. + - gtk4: Use async-channel instead of deprecated GLib main + context channel. + +------------------------------------------------------------------- +Wed Dec 27 13:55:40 UTC 2023 - Frederic Crozat + +- Update BuildRequires on cargo-c >= 0.9.21. + +------------------------------------------------------------------- +Thu Nov 16 12:11:54 UTC 2023 - Bjørn Lie + +- Add arm to excluded arches. + +------------------------------------------------------------------- +Thu Nov 16 10:57:33 UTC 2023 - Antonio Larrosa + +- Use xz format in the _service file since services in SLE SP6 + don't support zstd. + +------------------------------------------------------------------- +Wed Nov 15 11:01:48 UTC 2023 - Antonio Larrosa + +- Update to version 0.11.2: + + Fixed + - filesink / s3sink: Set sync=false to allow processing faster + than real-time. + - hlssink3: Various minor bugfixes and cleanups. + - livesync: Various minor bugfixes and cleanups that should + make the element work more reliable. + - s3sink: Fix handling of non-ASCII characters in URIs and + keys. + - sccparse: Parse SCC files that are incorrectly created by + CCExtractor. + - ndisrc: Assume > 8 channels are unpositioned. + - rtpav1depay: Skip unexpected leading fragments instead of + repeatedly warning + - about the stream possibly being corrupted. + - rtpav1depay: Don't push stale temporal delimiters downstream + but wait until a complete OBU is collected. + - whipwebrtcsink: Use correct URL during redirects. + - webrtcsink: Make sure to not miss any ICE candidates. + - webrtcsink: Fix deadlock when calling set-local-description. + - webrtcsrc: Fix reference cycles that prevented the element + from being freed. + - webrtcsrc: Define signaller property as CONSTRUCT_ONLY to + make it actually possible to set different signallers. + - webrtc: Update livekit signaller to livekit 0.2. + - meson: Various fixes to the meson-based build system. + + Added + - audiornnoise: Attach audio level meta to output buffers. + - hlssink3: Allow adding EXT-X-PROGRAM-DATE-TIME tag to the + manifest. + - webrtcsrc: Add turn-servers property. + + Changed + - aws/webrtc: Update to AWS SDK 0.57/0.35. +- The last update to 1.22.6 was actually a downgrade to the 0.9 + branch that upstream seems to tag following the gstreamer version + number but we should stick to the gstreamer-plugins-rs versioning + scheme. +- To see the changes between 0.10.11 and 0.11.2, please check: + https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/blob/main/CHANGELOG.md +- Add a vendor-for-dav1d-1.3.0.tar.zst vendor file specifically + for Tumbleweed where dav1d 1.3.0 is used and is not supported by + the dav1d crate used in 0.11.2 by default, so in this manually + created vendor file, the dav1d 0.10 crate is forced. + +------------------------------------------------------------------- +Tue Oct 24 15:06:02 UTC 2023 - Bjørn Lie + +- Add ix86 to excluded arches. + +------------------------------------------------------------------- +Fri Sep 22 14:29:14 UTC 2023 - Bjørn Lie + +- Update to version 1.22.6: + + fallbackswitch: locking/deadlock fixes + + onvifmetadataparse: Skip metadata frames with unrepresentable + UTC time + + transcriberbin: Configure audioresample in front of transcriber + + webrtcsink: + - Propagate GstContext messages + - Add support for d3d11 memory and qsvh264enc + - Fix TWCC extension adding + - Don't forget to setup encoders for discoveries + - NVIDIA V4L2 encoders always require NVMM memory + + meson: Fix handling of optional deps, and don't require + Python-3.8 +- Switch service to do the tag released with the other gstreamer + packages. Gstreamer-plugins-rs are now released at the same time + as the gstreamer main packages. +- Switch compression to zst both in service and tarball produced. + +------------------------------------------------------------------- +Tue Jul 25 11:34:26 UTC 2023 - Bjørn Lie + +- Update to version 0.10.11: + + fallbackswitch: + - Change the threshold for trailing buffers + - Fix pad health calculation and notifies + + fmp4mux: Fix draining in chunk mode if keyframes are too late + + webrtcsink: + - fix pipeline when input caps contain max-framerate + - Configure only 4 threads for x264enc + - Translate force-keyunit events to force-IDR action signal for + NVIDIA encoders + - Set config-interval=-1 and aggregate-mode=zero-latency on + rtph264pay and rtph265pay + - Set VP8/VP9 payloader based on payloader element factory name +- Update to version 0.10.10: + + webrtcsink: + - Avoid panic on unprepare from an async tokio context + - Use correct property types for nvvideoconvert + + webrtc/signalling: fix race condition in message ordering + + livesync: + - Wait for the end timestamp of the previous buffer before + looking at queue + - Improve EOS handling + + videofx: Minimize dependencies of the image crate + + togglerecord: + - Clip segment before calculating timestamp/duration + - Error out if main stream buffer has no valid running time + +------------------------------------------------------------------- +Wed Jul 5 10:49:41 UTC 2023 - Bjørn Lie + +- Update to version 0.10.9: + + Fixed: + - mp4mux/fmp4mux: Fix byte order in Opus extension box. + - webrtcsrc: Add twcc extension to the codec-preferences when + present. + - webrtcsink: Don't try using cudaconvert if it is not present. + - mccparse: Don't offset the first timecode to a zero PTS. + - Correctly use MPL as license specifier instead of MPL-2 for + plugins that compile with GStreamer < 1.20. + + Added: fallbackswitch: Add stop-on-eos property. +- Changes from version 0.10.8: + + Fixed: + - fmp4mux: + . Use updated start PTS when checking if a stream is filled + instead of a stale one. + . Fix various issues with stream gaps, especially in the + beginning. + . Fix waiting in live pipelines. + - uriplaylistbin: Prevent deadlocks during property + notifications. + - webrtcsink: Fix panics during twcc-stats callback and related + issues. + - awstranscriber: Handle stream disconts correctly. + - roundedcorners: Fix caps negotiation to not use I420 if a + border radius is configured. + - whipsink: Use the correct pad template to request pads from + the internal webrtcbin. + - fallbacksrc: Don't apply fallback audio caps to the main + stream. + - webrtcsrc: Fix caps handling during transceiver creation. + + Changed: rtpgccbwe: Improve packet handling. +- Changes from version 0.10.7: + + Fixed: + - ffv1dec: Drop rank until the implementation is + feature-complete. + - spotifyaudiosrc: Check cached credentials before use and fix + usage of credentials cache. + - tttocea608: Specify raw CEA608 field. + - gtk4paintablesink: Fix compilation on non-Linux UNIX systems. + - webrtcsrc: Don't set stun-server to the empty string if none + was set. + - webrtcsink: Abort statistics collection before stopping the + signaller. + - rtpgccbwe: Don't process empty lists. + + Changed: + - ndi: Update to libloading 0.8. + - aws: Update to AWS SDK 0.55/0.27. + - webrtcsink: Order pads by serial number. + - Update to async-tungstenite 0.22. + + Added: webrtcsink/webrtcsrc: Add request-encoded-filter signal + to add support for inserting custom filters between + encoder/payloader or depayloader/decoder. This allows + interacting with the "insertable streams" API from Chrome. +- Disable cargo audit service for now, something is not working + correctly in the service. +- Use %build_rustflags instead of the deprecated + %__default_rustflags macro. Requires at least cargo-packaging + 1.2.0+3. + +------------------------------------------------------------------- +Wed Apr 12 11:50:33 UTC 2023 - Bjørn Lie + +- Update to version 0.10.6: + + Fixed: + - webrtcsink: Fix max/min-bitrate property blurb/nick. + - uriplaylistbin: Add missing queues to example. + - tttocea608: + . Fix pushing of caps events that sometimes contained unfixed + caps. + . Fix disappearing text after special character in non-popon + mode. + - transcriberbin: + . Fix deadlock on construction. + . Fix initial bin setup. + - fallbacksrc: Handle incompatible downstream caps without + panicking. + - ndisrc: Fix copying of raw video frames with different + NDI/GStreamer strides. + - livesync: Correctly assume zero upstream latency if latency + query fails. + + Added: webrtcsink: Add ice-transport-policy property that + proxies the same webrtcbin property. +- Switch to cargo-packaging: Drop cargo and rust BuildRequires and + rustflags global. Add cargo-packaging BuildRequires and rustflags + macro where needed. Use autosetup macro. + +------------------------------------------------------------------- +Fri Mar 31 20:55:39 UTC 2023 - Bjørn Lie + +- Update to version 0.10.5: + + gtk4: Fix build with OpenGL support on macOS. + + threadshare: Fix symbol conflicts when statically linking the + plugin. +- Enable LTO as it works fine now (use FAT lto objects). + +------------------------------------------------------------------- +Thu Mar 16 08:50:57 UTC 2023 - Bjørn Lie + +- Update to version 0.10.4: + * Fixed: + - fmp4mux: + . Return a running time from AggregatorImpl::next_time() to + fix waiting in live pipelines. + . Fix hls_live example to set properties on the right + element. + - uriplaylistbin: Reset element when switching back to NULL + state. + - livesync: Handle variable framerates correctly in fallback + buffer duration calculation. + - meson: Fix GStreamer version feature detection. + * Added: webrtc: New webrtc element. + +------------------------------------------------------------------- +Thu Mar 09 19:19:14 UTC 2023 - bjorn.lie@gmail.com + +- Update to version 0.10.3: + * Added: + - tracers: `queue_levels` tracer now also supports printing the + `appsrc` levels. + - webrtc: `webrtcsink` can use `nvvidconv` if `nvvideoconvert` + does not exist on an NVIDIA platform. + * Fixed: + - gtk4: Set the sync point on the video frame after mapping it + as otherwise the frame might not be ready yet for further + usage. + - livesync: Correctly calculate the fallback buffer duration + from the video framerate. + - ndi: Handle caps changes correctly in `ndisinkcombiner`. + * Changed: webrtc: Minor cleanup. + +------------------------------------------------------------------- +Tue Mar 7 07:00:49 UTC 2023 - Antonio Larrosa + +- Increase constraints so it doesn't fail to build for lack of + disk space. + +------------------------------------------------------------------- +Mon Feb 27 15:10:02 UTC 2023 - bjorn.lie@gmail.com + +- Update to version 0.10.2: + * Fixed: + - hlssink3: Allow signal handlers to return `None` + - gtk4: + . Make GL context sharing more reliable in pipelines with + multiple `gtk4paintablesinks` + . Attach channel receiver to the main context from the + correct thread to make it possible to start the sink from a + different thread than the main thread without having + retrieved the paintable from the main thread before. + - fmp4mux/mp4mux: Ignore caps changes if only the framerate + changes. + * Changed: gtk4: Simplify and refactor GL context sharing. Apart + from being more reliable this reduces GL resource usage. +- Stop using git date and commitid in version, we are using + upstream released tags now. + +------------------------------------------------------------------- +Thu Feb 16 15:14:03 UTC 2023 - Antonio Larrosa + +- Disable the aws plugin in big endian architectures since it + requires the ring crate which doesn't support big endian systems + (see gh#briansmith/ring#1555). Fixes bsc#1208795 + +------------------------------------------------------------------- +Thu Feb 16 09:42:41 UTC 2023 - Antonio Larrosa + +- Add BuildRequires: zstd so it build in SLE/Leap now that the + sources are compressed with zstd + +------------------------------------------------------------------- +Tue Feb 14 18:15:43 UTC 2023 - bjorn.lie@gmail.com + +- Update to version 0.10.1+git20230213.9cd68ff: + * rtpav1pay: Fix calculation of Leb128 size size to work + correctly with streams from certain encoders. +- Changes from version 0.10.0: + * Fixed: + - audiornnoise: Use correct value range for the samples + - awss3sink: Treat stopping without EOS as an error for + multipart upload + - awss3hlssink: + . Fix the name of the hlssink child element + . Fix deadlock on EOS + - dav1d: Various fixes to improve performance, to handle + decoding errors more gracefully and to make sure all frames + are output in the end + - fmp4mux: Various fixes to fragment splitting behaviour, + output formatting and header generation + - gtk4: Various stability and rendering fixes + - meson: Various fixes and improvements to the meson-based + build system + - ndi: provide non-Linux/macOS UNIX fallback for the soname + - ndisrc: Use default channel mask for audio output to allow >2 + channels to work better + - rav1e: Correctly enable threading support + - rtpav1: Various fixes to the payloader and depayloader to + handle streams more correctly and to handle errors more + cleanly + - rtpav1depay: Set caps on the source pad + - spotify: fix "start a runtime from within a runtime" with + static link + - textahead: fix previous buffers + - textwrap: Don't panic on empty buffers + - tttocea608: Don't fail if a GAP event contains no duration + - webrtchttp: whipsink: construct TURN URL correctly + - webrtcsink: fix panic on pre-bwe request error + - whipsink: + . Send ICE candidates together with the offer + . Various cleanups and minor fixes + * Added: + - audiornnoise: Add voice detection threshold property + - awss3hlssink: Add stats property + - awss3sink: Add properties to set Content-Type and + Content-Disposition + - fmp4mux: + . Add 'offset-to-zero' property + . Add support for CMAF-style chunking, e.g. low-latency / LL + HLS and DASH + - fmp4mux/mp4mux: + . Add support for muxing Opus, VP8, VP9 and AV1 streams + . Make media/track timescales configurable + - gtk4: Support for rendering GL textures on X11/EGL, X11/GLX, + Wayland and macOS + - hlssink3: Allow generating i-frame-only playlist + - livesync: New element that alllows maintaining a contiguous + live stream without gaps from a potentially unstable source. + - mp4mux: New non-fragmented MP4 muxer element + - spotifyaudiosrc: Support configurable bitrate + - textahead: add settings to display previous buffers + - threadshare: Introduce new ts-audiotestsrc + - webrtcsink: Support nvv4l2vp9enc + - whepsource: Add a WebRTC WHEP source element + * Changed: + - audiofx: Derive from AudioFilter where possible + - dav1ddec: Lower rank to primary to allow usage of hardware + decoders with higher ranks + - fmp4mux: Only push fragment_offset if write-mfra is true to + reduce memory usage + - webrtcsink: + . Make the turn-server property a turn-servers list + . Move from async-std to tokio + +------------------------------------------------------------------- +Wed Jan 25 22:24:43 UTC 2023 - bjorn.lie@gmail.com + +- Update to version 0.9.8+git20230124.d9e9468: + * aws: Update to AWS SDK 0.53/0.23 + * dav1d: + - Don't flush the decoder when draining + - Don't treat any kind of bitstream error immediately as fatal + - Get rid of some unnecessary `unwrap()`s + - Only drain at most one decoded frame per input frame unless + the decoder requires more before accepting new data + - Remove unnecessary frame dropping loop + * Downgrade clap dependency to 4.0 + * gtk4: + - Asynchronously flush frames from GDK + - Keep `GstGLMemory` alive as long as it is used inside GDK + - Make no caps in the allocation query a non-error + - Only provide a buffer pool to upstream if it requested one + * livesync: fix late-threshold property min value + * meson: + - Only enable cargo features when options are enabled (bis) + - Update version to 0.9.8 + +------------------------------------------------------------------- +Fri Jan 13 15:12:47 UTC 2023 - bjorn.lie@gmail.com + +- Update to version 0.9.5+git20230111.df3b908: + * awss3hlssink: Add stats property. + * aws: + - Update to AWS SDK 0.52/0.22 + - Update to test-with 0.9 + * cargo_wrapper: + - Fix setting of PKG_CONFIG_PATH and CARGO_TARGET_DIR + - Handle windows paths for depfiles + - Write to log with line-buffering + * deny: + - Ignore duplicated base64 dependency for now + - Remove duplicated windows dependencies + - Update + * fmp4mux: + - Only push fragment_offset if write_mfra is true + - Remove obsolete comment + * gtk4: + - Add support for GL on macOS + - Don't error out when the main context channel does not exist + anymore when rendering + - Don't try to use GL mapped video frames as raw RGB memory + - Flush frames from the paintable when shutting down the sink + - Handle more GL context creation failures gracefully + - Propagate the GL display to the remainder of the pipeline + - Reduce number of unwraps during GL context creation and query + handling + - Release GStreamer GL context and display when going back to + NULL state + - Remove 'gst' from gtksink debug category name + - Remove 'gst' prefix from another debug category + - Rename a variable to make more sense + - Reset app context and display if GL context creation fails + - Update dependencies to releases + - Use `glib::ThreadGuard` instead of the fragile crate + - Use GL implicitly without the gst_gl feature on macOS + * meson: + - Add an option to build examples + - Add options for all plugins + - Disable webp plugin on Windows and macOS + - Do not serialize env, use env: kwarg + - Enable gstreamer-gl-1.0 features in gtk4 plugin + - Fix pkgconfig detection when specified in machine file + - Handle windows path separator correctly + - Only enable cargo features when options are enabled + - Require gstreamer-gl-1.0 for gtkpaintablesink + - Require tomllib / tomli python modules explicitly + * rav1e: Enable threading support + * Revert "Revert "rav1e: Update to rav1e 0.6"" + * rtpav1depay: Implement srcpad set_caps + * textahead: fix previous buffers + * Update Cargo.lock + * video/gtk4: Fix typo in info logs + * webrtcsink: fix panic on pre-bwe request error +- Pass sodium=enabled instead of sodium=system to meson following + upstream changes. + +------------------------------------------------------------------- +Fri Dec 23 17:42:20 UTC 2022 - bjorn.lie@gmail.com + +- Update to version 0.9.3+git20221216.b701003: + * Add a WebRTC WHEP source element + * Add livesync plugin + * audiornnoise: + - Add debug output for voice activity to help you choose a + threshold + - Add voice detection threshold + - Use correct value range for the samples + * aws: + - s3sink: Treat stopping without EOS as an error for multipart + upload + - Update to env_logger 0.10 for the tests + * ci: Disable gst-build job for now + * dav1ddec: Lower rank to primary + * deny: + - Remove another dependency that is not duplicated anymore + - Remove dependencies that are not duplicated anymore + - Update + * Fix various new clippy warnings + * fmp4mux: + - Crank clock for the first fragment in more tests + - For video with N/1001 framerates use N as timescale + - Handle EOS correctly if it happens before a fragment start + time was determined + - Re-work buffer dequeueing and calculations of timestamps + - Skip gap buffers earlier to consider them for the sample + durations and fragment start durations + * gif: Update to gif 0.12 + * gst-plugin-mp4: Add new MP4 plugin with a non-fragmented MP4 + muxer + * gtk4: + - Deactivate application GL context again after `fill_info()` + - Deactivate the context if we fail to fill_info + - example: Use a bin with a `videoconvert` in the non-GL case + - Make GL support fully optional + - Only require GTK 4.6 if GL support is enabled + * livesync: + - Add missing version to the gst-plugin-gtk4 / + gst-plugin-version-helper dependencies + - Fix version + - Use release versions of the GLib/GStreamer bindings + * meson: Fix build of static plugins + * mp4: + - Add ONVIF non-fragmented MP4 muxer + - Add version to gst-plugin-version-helper dependency + - Remove unneeded cast in tests + - Update to url 2 + * mp4mux: + - Adjust durations and possibly stream start time on + encountering a gap buffer + - Don't write empty chunks at the end if the last buffer of a + stream started a new chunk and happened to be a from a gap + event + - Don't write gap edit lists if their duration would be zero + - Factor out running time to UTC time calculation into a + function + - Fix edit list shift for streams with initial DTS smaller + earliest PTS but initial DTS positive + - For video with N/1001 framerates use N as timescale + - Remove unnecessary error case of negative PTS when doing the + ONVIF UTC time calculations + - Skip gap buffers instead of writing empty samples + * mux/{mp4, fmp4}: Hard depend on feature v1_18 + * ndisrc: + - Use actual number of channels in positions_from_mask + - Use default channel mask for audio output + * net/ndi: fix build with --no-default-features + * net: Update to async-tungstenite 0.19 + * Provide explicit type to `Iterator::sum()` calls to avoid + ambiguity + * spotify: fix "start a runtime from within a runtime" with + static link + * textahead: add settings to display previous buffers + * textwrap: Don't panic on empty buffers + * threadshare: Update to concurrent-queue 2 + * tttocea608: Don't fail if a gap event contains no duration + * Update Cargo.lock + * video/gtk4: + - Implement support for GLTextures when possible. + - Rename Object types and struct to something simpler + - Restrict visibility of struct related to the Frame + * webrtchttp: + - Do not block webrtcbin signal handlers for sending candidates + - Do not import element_imp_error + - Don't use let-else for now + - Drop unused dependencies + - Factor out the common bits for WHIP and WHEP + - Fix documentation JSON + - Fix formatting + - Fix missing import for docs build + - Implement timeout for waiting on futures + - Remove unnecessary clippy warning override + - Use a proper Rust type name for ICE transport policy + - Use tokio runtime for spawning thread used for candidate + offer + - whipsink: + . Add candidates when sending the offer + . Construct TURN URL correctly + . Miscellaneous clean up + * webrtc/README: update command to run the signalling server + * webrtcsink: Support nvv4l2vp9enc + * whipsink: Handle offer creation errors more gracefully + +------------------------------------------------------------------- +Thu Nov 17 16:19:32 UTC 2022 - alarrosa@suse.com + +- Update to version 0.9+git20221113.274e57a: + * Update Cargo.lock + * Update versions to 0.9.1 + * closedcaption: Update for deprecated chrono functions + * version-helper: Update for deprecated chrono functions + * Update Cargo.lock + * webrtc: README: fix couple of links + * webrtcsink: improve debug + * ci: add trigger job and only run documentation job post-merge + * ci: add integration stage and move documentation job to that + * ts/udpsink: handle items in the PadSinkHandler + * ts: introduce ts-audiotestsrc + * ts/standalone: add new Sinks + * ts/standalone: move current sink under task_sink + * deny: Update + * Add missing `doc` features to WebRTC plugins + * fmp4mux: Make media/trak timescales configurable + * ci: Update to cargo-c 0.9.14 + * meson: optionalize pango dependency used by net/onvif + * ndi: provide Unix fallback after 3fe9e4a207f8 + * fmp4mux: Don't allow VP9 for CMAF + * fmp4mux: Add initial Opus support + * docs: Remove some stale entries of renamed elements + * aws: Skip s3 test on Windows until we figure out why it times + out + * Fix various new clippy warnings + * fmp4mux: For VP9, write resolution into the tkhd and include a + stss box to signal that not all frames are sync samples + * webrtc: Update to human_bytes 0.4 + * aws: Update to aws 0.21/0.51 + * fmp4mux: Remove unused uuid dependency + * Update Cargo.lock + * fmp4mux: Clip negative PTS to zero/last PTS instead of erroring + out + * fmp4mux: Send force-keyunit events for now if the ideal + position has already passed + * fmp4mux: Add debug log when writing the mfra box + * fmp4mux: Reset timing infos to None if a stream only contained + gap events for a whole fragment + * fmp4mux: If a stream is longer than the main stream at EOS, + simply include all of its buffers in the last fragment + nonetheless + * whipsink: Add object to debug logs + * fmp4mux: don't require dts for predictive-only formats like vp9 + * aws: fix title in README + * deny: Update + * fmp4: add support for muxing VP9 streams in cmaf, dash and iso + fmp4 + * Add Cargo.lock + * Update to release versions of gtk-rs and gstreamer-rs + * Update versions to 0.9.0 + * Update to async-tungstenite 0.18 + * pngenc: Encode every frame individually + * ts/pad: use `gst::Pad` in handlers trait functions... + * ts/pad: don't pass self as ref in remaining handler traits + functions + * textwrap: Update to textwrap 0.16 + * Move from `imp.instance()` to `imp.obj()` + * Remove `&` for `obj` in log macros + * Update docs + * Add all missing plugins/elements to the README.md + * Fix GObject type names, GStreamer debug category names and + element factory names + * Add new mux subdirectory for container formats + * rtp: Move GCC bandwidth estimation element from webrtc to rtp + plugin + * Make GStreamer plugin/crate/library/directory names and + descriptions consistent + * Rename rtpav1 plugin to just rtp + * videocompare: Update README with reference + * Sort members in Cargo.toml and meson.build alphabetically and + the same in both files + * Various minor cleanups + * meson: Fix warning + * videocompare: Fix warning + * Take advantage of `Into>` args + * onvifmetadatacombiner: On timeout don't wait for metadata to + arrive anymore but output the current video frame + * onvifmetadatacombiner: Add a lot of trace debug output + * spotifyaudiosrc: convert to PushSrc + +------------------------------------------------------------------- +Fri Oct 21 06:18:44 UTC 2022 - bjorn.lie@gmail.com + +- Update to version 0.9.alpha.1+git20221020.5c89c3d: + * meson: add plugins list to summary + * fallbacksrc: Don't configure conversion elements for normal + stream + * webrtc: + - Rename and add to meson build the signalling server + - Enhance documentation + - Minor cleanup + - Rename signaller and protocol crates + - Update and unify rust-version and edition + - Uniformise GType names + - Port to new ElementBuilder API +- Add ppc ppc64 ppc64le s390 ExcludeArch: Current versions of + gstreamer-plugins-rs depends on rs-ring, and rs-ring does not yet + support building on these targets. + +------------------------------------------------------------------- +Mon Oct 10 15:17:09 UTC 2022 - bjorn.lie@gmail.com + +- Update to version 0.9.alpha.1+git20221010.b1b7070: + * Change *Impl trait methods to only take &self and not + Self::Type in addition + * fallbacksrc: + - Always restart the fallback stream on EOS and make sure to + EOS all streams if the main stream is EOS + - Retry fallback stream on errors too + * jsontovtt: + - Add timeout property + - Print object information to debug message + * Update for glib::Object::new() API changes + * update-version.sh: Also update version in meson.build + * Use `GFV::none_for_format` where applicable + +------------------------------------------------------------------- +Thu Oct 06 11:58:03 UTC 2022 - bjorn.lie@gmail.com + +- Update to version 0.9.alpha.1+git20221005.0b13bfe: + * Add missing Since markers to new plugins + * Add RTP de/payloader elements for AV1 + * Allow "unused_doc_comments" as we use hotdoc and not rustdoc + * awstranscriber: + - fix set_property for language-code + - only set vocabulary filter when vocabulary is set + * aws: Update to aws 0.48/0.18 + * build: Update versions to be 0.9.0-alpha.1 + * cargo: + - Sort members and default-members lists + - Update default-members list + * cea608tojson: Clip column number if it exceeds allowed value + * csound: Fix score-offset getter + * dav1ddec: Require dav1d 1.0.0 in meson + * dav1d: Update to dav1d 0.9 + * doc: Mark request::user-agent as doc show default + * docs: Remove cruft + * examples: Update to clap 4 + * fallbacksrc: + - Always restart the fallback stream on EOS and make sure to + EOS all streams if the main stream is EOS + - Implement support for fallback streams + - Retry fallback stream on errors too + * fallbackswitch: + - Fix lock order problem between state and stream lock + - Flush and deactivate pads before releasing them + - Make sure to flush/reset pads during pad (de)activation + - Port the example to GTK 4 + * Fixes for removal of SpecificFormattedValues ops on ref + * Fix missing pkgconfig requires + * fmp4mux: + - Drop GAP buffers before doing ONVIF UTC time re-timestamping + - Drop gap buffers before further processing + - Implement a better strategy for splitting fragments and + deciding which buffers go into which fragment + - Split huge drain function into separate functions + * Generate plugins documentation using hotdoc + * jitterbuffer: fix typo when calculating max_misorder_time + * jsontovtt: Don't push zero-duration cue data + * meson: + - Blacklist csound and threadshare plugins for gst-full + - Define gst_plugins with list of dependencies + - Fix deprecation warning + - Fix directory/plugin name mapping for new webrtchttp plugin + - Fix gstwebrtc/gstsdp subproject usage + - Fix usage of python3 variable which was renamed recently + - Import python module only once + - Use workspace Cargo.toml to find crates path + * net/onvif: update with new `gst::Signed` features + * onvif: + - Fix for `gst::meta::CustomMeta::register()` API change + - Rename onvif(de)pay to rtponvifmetadata(de)pay and include + the metadata specifier in the other element names too + * onvifmetadatacombiner: + - Do not classify as Muxer + - Drop gap metadata buffers + * onvifmetadataparse: + - Drop initial buffers if their UTC time would be negative + - Drop initial buffers until an UTC/running time mapping can be + established + - Handle negative running times in debug output + - Pass through other XML as is with the UTC times based on the + buffer PTSs + - Push buffers from a separate source pad task to guarantee + latency and generally improve correctness + - Refactor clock/condvar waiting + - Schedule EOS events after the last currently queued up frame + - Simplify some code + - Start source pad task on StreamStart if needed + * pngenc: Allow using deprecated compression levels + * rav1e: Pin `v_frame` dependency to version 0.2.5 for now + * rtpav1depay: Don't unnecessary map RTP payload a second time + * rtpav1pay: Don't push buffers downstream while holding mutexes + * rtpav1: + - Remove some unneeded lifetime annotations + - Reset state on FlushStop/Eos in all conditions and reset all + of the state + - Specify version helper dependency by path + - Use GStreamer types by namespace instead of importing dozens + of types directly into the scope + * s3sink: Dont set call_timeout,call_attempt_timeout is enough + with retry. + * s3sink, s3src: Max 1 (re)try when retry-duration < + request_timeout. + * text/json: + - hard depend on ser_de feature of gst crate + - use renamed gst feature 'serde' + * threadshare: disable tests that can't work on windows + * togglerecord: Port example to GTK 4 + * tracers: + - Fix documentation comment using gtk-doc style + - queue-levels: Update for `gst::TracerImpl` API changes + * ts: add feature to add counters for performance evaluation + * ts/executor: clear the reactor instead of closing it... + * ts-jitterbuffer: + - Declare `request-pt-map` signal + - extra robustness for Windows CI + - Fix latency type when getting property + * ts/scheduler: + - fix shutdown + - improve tasks / io & timers polling balance + * ts/standalone: multiple improvements + * ts/Task: don't drain sub tasks after state transition and + iteration + * ts/timers: multiple improvements + * Update for GLib ParamSpec builder API changes + * Update minimum supported Rust version to 1.63 + * update-version.sh: Also update version in meson.build + * uriplaylistbin: Port example from structopt to clap + * video/rspng: add missing doc feature gate + * whipsink: A GstBin implementation for WHIP +- Add python3-tomli and pkgconfig(gstreamer-webrtc-1.0) + BuildRequires: New dependencies. +- Pass default-library=shared and doc=disabled to meson, ensure we + build the shared lib as default and disable build of docs. + +------------------------------------------------------------------- +Mon Sep 12 21:23:10 UTC 2022 - Bjørn Lie + +- Update constraints for i586, bump to 22 G here too. + +------------------------------------------------------------------- +Mon Aug 29 23:16:32 UTC 2022 - bjorn.lie@gmail.com + +- Update to version 0.8.4+git20220824.052092cd: + * Add RaptorQ RTP FEC plugins + * audioloudnorm: Drain on segment event + * audio: Use gst_audio::AudioCapsBuilder in some plugins + * audio, video: Use AudioCapsBuilder::new_interleaved where + applicable + * aws: Document the s3hlssink element in README + * aws: s3sink: Add a deprecation warning for retry duration + properties + * aws: s3sink,s3src,transcriber: Add property to set temporary + credentials + * aws_transcriber: expose filtering related properties + * aws_transcriber: Fix regression with credentials mechanism + * aws: Update to aws 0.17/0.47 + * ci: Update image version + * ci: Update to cargo-c 0.9.11 + * deny: Update + * fallbackswitch: fix gap processing regression + * fallbackswitch: Remove unused libc dependency/feature + * Fix a couple of new 1.62 clippy warnings + * Fix build after glib SignalBuilder::param_types() API change + * Fix/silence a couple new clippy warnings + * fmp4mux: Add debug output for each fragment's start PTS + * fmp4mux: Consider invalid running times as zero and before + anything else + * fmp4mux: Dequeue as many buffers as are available in each + aggregate call + * fmp4mux: Dequeue the earliest buffer from any pad first instead + of dequeueing up to a whole fragment from the same pad + * fmp4mux: Ensure that DTS (or PTS for intra-only streams) are + monotonically increasing + * fmp4mux: Fix draining if there are no GOPs for a stream + * fmp4mux: Fix some clippy warnings + * fmp4mux: Fix usage of first_sample_flags/default_sample_flags + * fmp4mux: Handle PTS` + * hrtfrender: Switch back to hrtf 0.7 + * m3u8-rs: Depend on version exactly 3.0.0 + * mccparse/sccparse: Don't log gst::FlowError::Flushing or Eos as + error to the debug logs + * meson: + - Cleanup our meson integration + - Fix building when git isn't available + * net/onvif: implement ONVIF metadata processing elements + * onvifaggregator: + - always push current media buffer on timeout + - implement proper EOS support + - refactor to support duration-less media buffers + - Update for minor `PadTemplate` API changes + * rav1enc: + - Use `AtomicRefCell` instead of `Mutex` for the state + - Don't handle `NeedMoreData` as "soft" error + - Expose various new settings + - Include stream-format and alignment in the caps + - Put container sequence header into the caps + - Set mastering display info, content light level and HDR + related colorimetry + - Simplify code + - Support 8 bit grayscale input + - Switch from speed preset 5 to 6 as default + * README: Mention the colordetect element + * Re-license LGPL-2.1 plugins to MPL-2 + * Remove now unnecessary `Send+Sync` impls for element/etc + subclasses + * Rename `self_` variables to `imp` for consistency + * Replace `Foo::from_instance(foo)` with `foo.imp()` + * reqwest: Don't unnecessarily borrow dereferenced values + explicitly + * Revert + - "fallbackswitch: Forward custom downstream events from active + sinkpad" + - "Revert "uriplaylistbin: disable test deadlocking"" + - "uriplaylistbin: disable test deadlocking" + * rtponvifdepay: Set caps on the source pad + * rusoto: + - Add missing license file + - Export AwsTranscriberResultStability enum + - s3sink: Expose property to control all timeout/retry + durations + - s3sink: Implement timeout/retry for part uploads + - s3sink: Make remaining requests bounded in time + - s3sink, s3src: Retry on server errors + - s3src: Implement timeout and retries + - Update async-tungstenite dependency to 0.17 + - Update to crc 3 and rusoto 0.48 + * rustfmt.toml: Add file + * s3src: Consolidate stream reading into get object retries + * Simplify some code around event/query views + * spotifyaudiosrc: Update to librespot 0.4 + * textahead: `PadTemplate::caps()` returns a caps reference now + * textwrap: Update for textwrap 0.15 API changes + * threadshare: + - fix build on Windows + - Remove glib::SendUnique usage + - Use `into_glib_ptr()` instead of `into_ptr()` + * transcriberbin: + - Add caption-source property + - Don't notify signal inside lock + - Fix deadlock + - make audioqueue leaky + - Protect runtime "passthrough=false" change + * ts/examples: add rtp mode with jitter-buffer & trace stop + duration + * ts/jitterbuffer: + - don't wake up immediately... + - set jbuf delay when instantiating it + * ts: log max throttling when creating Context + * ts/rt/Task: + - awake the iteration loop when it needs to be aborted + - use light weight executor blocking on ack or join handle + * tttocea608: expose roll-up timeout property + * tutorial/sinesrc: Use pushsrc as direct superclass in the + glib::wrapper macro too + * Update for event/message/query view API changes + * Update license text in the README.md + * Update minimum supported GStreamer version to 1.14 + * Update minimum supported Rust version to 1.57 + * Update README.md with all the new plugins/elements + * Update to gst::_log_macro_ + * Update to m3u8-rs 4.0 + * Update to parking_lot 0.12 and hrtf 0.8 + * Update versions to 0.9.0 + * uridecodebin: stop using crossbeam_channel + * uriplaylistbin: + - add Status::ShuttingDown + - break reference cycle + - disable more tests + - disable more tests + - disable test deadlocking + - display invalid state when panicing + - fix deadlock when shutting down + - fix number of streaming items + - fix race when handling topology change + - handle waiting items no longer being set + - implement Debug on State + - remove pad probe when shutting down + - remove useless uridecodebin clone + - replace errored with Status enum + - skip missing_http test + - Update to more-asserts 0.3 + * Use SPDX license format in Cargo.toml + * videofx: Add colordetect video filter + +------------------------------------------------------------------- +Thu Jun 09 15:47:40 UTC 2022 - bjorn.lie@gmail.com + +- Update to version 0.8.4: + * audiofx: Update nnoiseless dependency to 0.4 + * awstranscribe: increase presisigned url duration to 5 mins from + 60s + * cea608tott: Don't zero-pad SRT indices but zero-pad hours to at + least two digits + * ci: cargo test --all-features too... + * ci: run tests with RUST_BACKTRACE + * closedcaption: Update to uuid 1.0 + * Correctly check for the `DISCONT` buffer flag to be set + * deny: Ignore duplicated wasi dependency + * fallbacksrc: + - Changing the URI of the video fallback is supported in NULL + state + - Disconnect signals on ReadyToNull + - Flush source before restarting on errors + * fallbackswitch: + - Add missing requires_private + - add support for buffers without pts + - export GEnum used in properties + - factor out handle_main_timed_item() + - properly handle GAP events + * generic/threadshare: fix for nightly build + * meson: + - Cleanup our meson integration + - Fix building when git isn't available + * rusoto: s3sink: + - Expose property to control all timeout/retry durations + - Implement timeout/retry for part uploads + - Make remaining requests bounded in time + - s3src: Retry on server errors + * rusoto: s3src: Implement timeout and retries + * rusoto: + - Update async-tungstenite dependency to 0.17 + - Update to crc 3 and rusoto 0.48 + * rustfmt.toml: Add file + * s3src: Consolidate stream reading into get object retries + * textwrap: Update for textwrap 0.15 API changes + * transcriberbin: + - Add caption-source property + - Don't notify signal inside lock + - Fix deadlock + - make audioqueue leaky + - Protect runtime "passthrough=false" change + * ts/examples: add rtp mode with jitter-buffer & trace stop + duration + * ts/jitterbuffer: don't wake up immediately... + * ts: log max throttling when creating Context + * ts/rt/Task: + - awake the iteration loop when it needs to be aborted + - use light weight executor blocking on ack or join handle + * Update Cargo.lock + * Update license text in the README.md + * Update to m3u8-rs 4.0 + * uridecodebin: stop using crossbeam_channel + * uriplaylistbin: + - add Status::ShuttingDown + - break reference cycle + - disable more tests + - disable test deadlocking + - display invalid state when panicing + - fix deadlock when shutting down + - fix number of streaming items + - fix race when handling topology change + - handle waiting items no longer being set + - implement Debug on State + - remove pad probe when shutting down + - remove useless uridecodebin clone + - replace errored with Status enum + - skip missing_http test + * Use SPDX license format in Cargo.toml + +------------------------------------------------------------------- +Wed Mar 23 08:59:08 UTC 2022 - Andreas Schwab + +- Update constraints for riscv64 + +------------------------------------------------------------------- +Mon Feb 28 12:39:44 UTC 2022 - bjorn.lie@gmail.com + +- Update to version 0.8.2: + * Update Cargo.lock + * ci: Use correct gstreamer-rs images template + * deny: Remove num-rational override + * dav1ddec: + - Use `AtomicRefCell` instead of `Mutex` for the state + - Fix compilation after some API changes + - Release input frames that immediately caused a decoding error + +------------------------------------------------------------------- +Fri Feb 04 20:27:29 UTC 2022 - bjorn.lie@gmail.com + +- Update to version 0.8.1: + * Update Cargo.lock + * Update versions to 0.8.1 + * cdg: update image and cdg_renderer + * gtk4: Attach main context receiver from the main context's + thread + * dav1ddec: Add 8/16 bit grayscale support + * rav1enc: Support 8 bit grayscale input + * dav1ddec: Require correct alignment and stream format when + running with GStreamer 1.20 + * rav1enc: Include stream-format and alignment in the caps + * dav1ddec: Clean up state tracking a bit +- Add automatic .changes generation to service, as upstream seems + to not want to make release notes or changelogs. + +------------------------------------------------------------------- +Wed Jan 19 14:17:20 UTC 2022 - Antonio Larrosa + +- Add a BuildRequires: pkgconfig(libwebp) to fix loading + libgstrswebp.so which was failing with an `undefined symbol: + WebPAnimDecoderDelete` error. + +------------------------------------------------------------------- +Tue Jan 18 09:04:54 UTC 2022 - Antonio Larrosa + +- Increase the disk constraint since i586 builds take ~15.6 GB, + s390x over 22 GB and other archs ~18.8 GB. + +------------------------------------------------------------------- +Mon Jan 17 16:22:51 UTC 2022 - Antonio Larrosa + +- Update to version 0.8.0: + * No changelog provided by upstream + +------------------------------------------------------------------- +Wed Nov 10 18:52:14 UTC 2021 - Bjørn Lie + +- Disable csound plugin for now, mask all macros, BuildRequires and + set option passed to meson to disabled (was auto), wait for + upstream to fix the issues identified. + +------------------------------------------------------------------- +Tue Nov 2 19:51:56 UTC 2021 - Bjørn Lie + +- Filter out pkgconfig(csound) Requires, add manual csound-devel + BuildRequires to devel package. csound-devel does not provide a + .pc file so the autogenerated Requires on pkconfig(csound) is + wrong. + +------------------------------------------------------------------- +Tue Nov 2 11:00:09 UTC 2021 - Bjørn Lie + +- Drop baselibs.conf, this is a new package, lets not build 32bit + unless we have to. + +------------------------------------------------------------------- +Sat Oct 16 10:54:15 UTC 2021 - Bjørn Lie + +- No longer disabled LTO, drop macro. + +------------------------------------------------------------------- +Sat Sep 4 23:21:39 UTC 2021 - Bjørn Lie + +- Update to version 0.7.2: +- Switch service to using an explicit released tag. +- Drop 0001-Fix-cast-to-f64-so-it-builds-in-i586.patch: Fixed + upstream. + +------------------------------------------------------------------- +Mon Apr 19 15:00:36 UTC 2021 - Antonio Larrosa + +- Update to 0.6.0+git20210412.c3fb55f +- Add patch to fix build in the i586 architecture + (Submitted in glfo#gstreamer/gst-plugins-rs#502): + * 0001-Fix-cast-to-f64-so-it-builds-in-i586.patch + +------------------------------------------------------------------- +Thu Dec 24 13:28:20 UTC 2020 - Bjørn Lie + +- Enable build of dav1d plugin, do this via: + + Disable LTO via macro. + + Add clang and pkgconfig(dav1d) BuildRequires. + + No longer pass dav1d=disabled to meson, nor remove dav1d from + cargo.toml via sed call. +- Add pkgconfig(libsodium) BuildRequires and pass sodium=system to + meson, do not use package internal version of sodium. +- Drop pkgconfig(gtk+-3.0) BuildRequires, not needed. +- Add pkgconfig(pango) BuildRequires: Mandatory, previously pulled + in by pkgconfig(gtk+-3.0), and add optional nasm BuildRequires. +- Drop gcc-c++ BuildRequires, no longer needed, nor used. +- Replace llvm-devel with llvm BuildRequires, this is sufficent. +- Do general cleanup of spec, make package ready for submit to TW. + Use normal meson macros. +- Add _constraints, ensure the build have enough harddisk space. + +------------------------------------------------------------------- +Tue Dec 1 11:28:33 UTC 2020 - Antonio Larrosa + +- Update to git version 0.6.0+git20201201.58786fa +- Use obs-service-cargo_vendor in the _service file and replace + vendor-cargo-config with cargo_config +- Enable the build of sodium and threadshare plugins +- Remove special Cargo.lock source file which is not needed anymore + +------------------------------------------------------------------- +Wed Oct 28 16:42:07 UTC 2020 - Antonio Larrosa + +- Fix version, since the initial release wasn't 1.18.0 but 0.6.0 +- Update to git version 0.6.0+git20201026.d16e7d1 + +------------------------------------------------------------------- +Sat Oct 24 12:59:22 UTC 2020 - Dominique Leuenberger + +- Use %_vpath_builddir instead of hardcoded 'build' directory name: + meson allows for the path to be changed. + +------------------------------------------------------------------- +Wed Sep 16 11:14:49 UTC 2020 - Antonio Larrosa + +- Initial release of gstreamer-plugins-rs 1.18.0 diff --git a/gstreamer-plugins-rs.spec b/gstreamer-plugins-rs.spec new file mode 100644 index 0000000..6e1356f --- /dev/null +++ b/gstreamer-plugins-rs.spec @@ -0,0 +1,202 @@ +# +# spec file for package gstreamer-plugins-rs +# +# Copyright (c) 2024 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +%global _lto_cflags %{_lto_cflags} -ffat-lto-objects +%define _name gst-plugins-rs +%define gst_branch 1.0 +# Disable csound for now, bring issue upstream +#%%global __requires_exclude pkgconfig\\(csound\\) + +%ifarch s390 s390x ppc ppc64 +%bcond_with aws +%else +%bcond_without aws +%endif + +%if %{?pkg_vcmp:%{pkg_vcmp dav1d-devel >= 1.3.0}}%{!?pkg_vcmp:0} +%define has_dav1d_1_3_0 1 +%endif + +Name: gstreamer-plugins-rs +Version: 0.11.3 +Release: 0 +Summary: GStreamer Streaming-Media Framework Plug-Ins +License: LGPL-2.1-or-later +Group: Productivity/Multimedia/Other +URL: https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs + +Source: %{_name}-%{version}.tar.xz +Source2: vendor.tar.zst +Source3: cargo_config +Source4: gstreamer-plugins-rs.appdata.xml +Source5: vendor-for-dav1d-1.3.0.tar.zst + +BuildRequires: cargo-c >= 0.9.21 +BuildRequires: cargo-packaging >= 1.2.0+3 +BuildRequires: clang +# Disable csound for now, bring issue upstream +#BuildRequires: csound-devel +BuildRequires: llvm +BuildRequires: git +BuildRequires: meson >= 0.60 +BuildRequires: nasm +BuildRequires: pkgconfig +BuildRequires: python3-tomli +BuildRequires: zstd +BuildRequires: pkgconfig(cairo) >= 1.10.0 +BuildRequires: pkgconfig(dav1d) +BuildRequires: pkgconfig(gstreamer-1.0) +BuildRequires: pkgconfig(gstreamer-base-1.0) +BuildRequires: pkgconfig(gstreamer-plugins-base-1.0) +BuildRequires: pkgconfig(gstreamer-webrtc-1.0) +BuildRequires: pkgconfig(gtk4) +BuildRequires: pkgconfig(libsodium) +BuildRequires: pkgconfig(libwebp) +BuildRequires: pkgconfig(openssl) +BuildRequires: pkgconfig(pango) +Requires: gstreamer +Requires: gstreamer-plugins-base +Enhances: gstreamer +ExcludeArch: ppc ppc64 ppc64le s390 %ix86 %arm + +%description +GStreamer is a streaming media framework based on graphs of filters +that operate on media data. Applications using this library can do +anything media-related, from real-time sound processing to playing +videos. Its plug-in-based architecture means that new data types or +processing capabilities can be added simply by installing new +plug-ins. + +This package provides various plugins written in Rust. + +%package devel +Summary: GStreamer Streaming-Media Framework Plug-Ins development files +Group: Development/Libraries/Other +Requires: %{name} = %{version} +#Requires: csound-devel + +%description devel +GStreamer is a streaming media framework based on graphs of filters +that operate on media data. Applications using this library can do +anything media-related, from real-time sound processing to playing +videos. Its plug-in-based architecture means that new data types or +processing capabilities can be added simply by installing new +plug-ins. + +This package contains the pkgconfig development files for the rust +plugins. + +%prep +%if 0%{?has_dav1d_1_3_0} +%autosetup -n %{_name}-%{version} -a5 -p1 + +sed -ie 's/^dav1d = "[0-9\.]*"/dav1d = "0.10"/' video/dav1d/Cargo.toml +%else +%autosetup -n %{_name}-%{version} -a2 -p1 +%endif + +%if %{?suse_version} < 1600 +sed -ie "s/meson_version : '>= 1.1'/meson_version : '>= 0.61.4'/" meson.build +sed -ie "s/\.enable_if.*//" meson.build +sed -ie "s/find_program('cargo-cbuild', version:'>=0.9.21'/find_program('cargo-cbuild', version:'>=0.9.15'/" meson.build +%endif + +mkdir -p .cargo +cp %{SOURCE3} .cargo/config + +sed -i -e 's/version = "8"/version = "9"/' vendor/livekit-api/Cargo.toml +sed -i -e "s/ab6a42a4752e822c794421fa4b939e7e9690e85541c5e0ae28a34f17fe8fd170/2c69748813bcb4e4f3d06343e05fb9f43a8ae623fbdbb340847fd536f1974aa9/" vendor/livekit-api/.cargo-checksum.json + +%build +# Disable csound for now, bring issue upstream +#export CSOUND_LIB_DIR=%%{_libdir} +export RUSTFLAGS="%{build_rustflags}" + +%meson \ + --default-library=shared \ + -Ddoc=disabled \ + -Ddav1d=auto \ + -Dsodium=enabled \ + -Dcsound=disabled \ +%if %{without aws} + -Daws=disabled \ +%endif + %{nil} +%meson_build + +%install +export RUSTFLAGS="%{build_rustflags}" +%meson_install +mkdir -p %{buildroot}%{_datadir}/appdata +cp %{SOURCE4} %{buildroot}%{_datadir}/appdata/ + +%files +%license LICENSE-APACHE LICENSE-LGPLv2 LICENSE-MIT +%doc README.md +%dir %{_libdir}/gstreamer-%{gst_branch} +%if %{with aws} +%{_libdir}/gstreamer-%{gst_branch}/libgstaws.so +%endif +%{_libdir}/gstreamer-%{gst_branch}/libgstcdg.so +%{_libdir}/gstreamer-%{gst_branch}/libgstclaxon.so +# Disable csound for now, bring issue upstream +#%%{_libdir}/gstreamer-%%{gst_branch}/libgstcsound.so +%{_libdir}/gstreamer-%{gst_branch}/libgstdav1d.so +%{_libdir}/gstreamer-%{gst_branch}/libgstfallbackswitch.so +%{_libdir}/gstreamer-%{gst_branch}/libgstffv1.so +%{_libdir}/gstreamer-%{gst_branch}/libgstfmp4.so +%{_libdir}/gstreamer-%{gst_branch}/libgstgif.so +%{_libdir}/gstreamer-%{gst_branch}/libgstgtk4.so +%{_libdir}/gstreamer-%{gst_branch}/libgsthlssink3.so +%{_libdir}/gstreamer-%{gst_branch}/libgsthsv.so +%{_libdir}/gstreamer-%{gst_branch}/libgstjson.so +%{_libdir}/gstreamer-%{gst_branch}/libgstlewton.so +%{_libdir}/gstreamer-%{gst_branch}/libgstlivesync.so +%{_libdir}/gstreamer-%{gst_branch}/libgstmp4.so +%{_libdir}/gstreamer-%{gst_branch}/libgstndi.so +%{_libdir}/gstreamer-%{gst_branch}/libgstraptorq.so +%{_libdir}/gstreamer-%{gst_branch}/libgstrav1e.so +%{_libdir}/gstreamer-%{gst_branch}/libgstregex.so +%{_libdir}/gstreamer-%{gst_branch}/libgstreqwest.so +%{_libdir}/gstreamer-%{gst_branch}/libgstrsaudiofx.so +%{_libdir}/gstreamer-%{gst_branch}/libgstrsclosedcaption.so +%{_libdir}/gstreamer-%{gst_branch}/libgstrsfile.so +%{_libdir}/gstreamer-%{gst_branch}/libgstrsflv.so +%{_libdir}/gstreamer-%{gst_branch}/libgstrsonvif.so +%{_libdir}/gstreamer-%{gst_branch}/libgstrspng.so +%{_libdir}/gstreamer-%{gst_branch}/libgstrsrtp.so +%{_libdir}/gstreamer-%{gst_branch}/libgstrstracers.so +%{_libdir}/gstreamer-%{gst_branch}/libgstrsvideofx.so +%{_libdir}/gstreamer-%{gst_branch}/libgstrswebp.so +%{_libdir}/gstreamer-%{gst_branch}/libgstrswebrtc.so +%{_libdir}/gstreamer-%{gst_branch}/libgstsodium.so +%{_libdir}/gstreamer-%{gst_branch}/libgstspotify.so +%{_libdir}/gstreamer-%{gst_branch}/libgsttextahead.so +%{_libdir}/gstreamer-%{gst_branch}/libgsttextwrap.so +%{_libdir}/gstreamer-%{gst_branch}/libgstthreadshare.so +%{_libdir}/gstreamer-%{gst_branch}/libgsttogglerecord.so +%{_libdir}/gstreamer-%{gst_branch}/libgsturiplaylistbin.so +%{_libdir}/gstreamer-%{gst_branch}/libgstwebrtchttp.so +%dir %{_datadir}/appdata +%{_datadir}/appdata/gstreamer-plugins-rs.appdata.xml +%{_bindir}/gst-webrtc-signalling-server + +%files devel +%{_libdir}/pkgconfig/*.pc + +%changelog diff --git a/vendor-for-dav1d-1.3.0.tar.zst b/vendor-for-dav1d-1.3.0.tar.zst new file mode 100644 index 0000000..e7ce6e1 --- /dev/null +++ b/vendor-for-dav1d-1.3.0.tar.zst @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d32de83357d3bd5098a78f40aecf783fd9d26fd0498da52e99fcce5c55a6adf4 +size 97354638 diff --git a/vendor.tar.zst b/vendor.tar.zst new file mode 100644 index 0000000..673c98f --- /dev/null +++ b/vendor.tar.zst @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1c78c356415e1012c7210541136850315312e16cc2604f65b647bf17db2780df +size 97370550