* Thu Feb 29 2024 Antonio Larrosa - Update to version 0.12.2: * Fixed - rtpgccbwe: Don\'t reset PTS/DTS to None as otherwise rtpsession won\'t be able to generate valid RTCP. - webrtcsink: Fix usage with 1.22. * Added - janusvrwebrtcsink: Add secret-key property. - janusvrwebrtcsink: Allow for string room ids and add string-ids property. - textwrap: Don\'t split on all whitespaces, especially not on non-breaking whitespace.- Update to version 0.12.1: * Added - gtk4: Create a window for testing purposes when running in gst-launch-1.0 or if GST_GTK4_WINDOW=1 is set. - webrtcsink: Add msid property.- Update to version 0.12.0: * Changed - ndi: ndisrc passes received data downstream without an additional copy, if possible. - webrtc: Cleanups to webrtcsrc/sink default signalling protocol, JavaScript implementation and server implementation. - webrtc: whipwebrtcsink is renamed to whipclientsink and deprecate old whipsink. * Fixed - gtk4: Fix Windows build when using EGL. - gtk4: Fix ARGB pre-multiplication with GTK 4.14. This requires building with the gtk_v4_10 or even better gtk_v4_14 feature. - gtk4: Fix segfault if GTK3 is used in the same process. - gtk4: Always draw background behind the video frame and not only when borders have to be added to avoid glitches. - livekitwebrtcsink: Add high-quality layer for video streams. - webrtc: Fix potential hang and fd leak in signalling server. - webrtc: Fix closing of WebSockets. - webrtchttp: Allow setting None for audio/video caps for WHEP. * Added - New awss3putobjectsink that works similar to awss3sink but with a different upload strategy. - New hlscmafsink element for writing HLS streams with CMAF/ISOBMFF fragments. - New inter plugin with intersink / intersrc elements that allow to connect different pipelines in the same process. - New janusvrwebrtcsink element for the Janus VideoRoom API. - New rtspsrc2 element. - New whipserversrc element. - gtk4: New background-color property for setting the color of the background of the frame and the borders, if any. - gtk4: New scale-filter property for defining how to scale the frames. - livesync: Add support for image formats. - ndi: Closed Caption support in ndisrc / ndisink. - textwrap: Add support for gaps. - tracers: Optionally only show late buffers in buffer-lateness tracer. - webrtc: Add support for custom headers. - webrtcsink: New payloader-setup signal to configure payloader elements. - webrtcsrc: Support for navigation events. * Mon Jan 29 2024 Antonio Larrosa - Increase memory to 12G for s390x builds in _constraints (bsc#1218563). * Thu Jan 11 2024 Antonio Larrosa - Increase memory to 10G for s390x builds in _constraints (bsc#1218563). * Thu Jan 11 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 04 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 2023 Frederic Crozat - Update BuildRequires on cargo-c >= 0.9.21. * Thu Nov 16 2023 Bjørn Lie - Add arm to excluded arches. * Thu Nov 16 2023 Antonio Larrosa - Use xz format in the _service file since services in SLE SP6 don\'t support zstd. * Wed Nov 15 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 2023 Bjørn Lie - Add ix86 to excluded arches. * Fri Sep 22 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 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 05 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 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 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 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 2023 bjorn.lieAATTgmail.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 07 2023 Antonio Larrosa - Increase constraints so it doesn\'t fail to build for lack of disk space. * Mon Feb 27 2023 bjorn.lieAATTgmail.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 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 2023 Antonio Larrosa - Add BuildRequires: zstd so it build in SLE/Leap now that the sources are compressed with zstd * Tue Feb 14 2023 bjorn.lieAATTgmail.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 2023 bjorn.lieAATTgmail.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 2023 bjorn.lieAATTgmail.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 2022 bjorn.lieAATTgmail.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 2022 alarrosaAATTsuse.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