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
path: root/video
AgeCommit message (Collapse)Author
2020-07-26Update for removal of ObjectImpl::get_type_data()Sebastian Dröge
2020-07-10video/gif: Add description to Cargo.tomlSebastian Dröge
2020-07-10video/gif: Don't set NON_DROPPABLE flag on buffersSebastian Dröge
It doesn't make sense in this context and the flag only exists since 1.12.
2020-07-10video/dav1d/rav1e: Depend on gstreamer-video 1.12 for the 12 bit formatsSebastian Dröge
Can be made conditional if someone needs that.
2020-07-10Add LICENSE files to each individual crateSebastian Dröge
2020-07-01video/cdgdec: Box CdgInterpreter state to prevent GObject private size to ↵Sebastian Dröge
become too big Only 64k are allowed for the sum of all private instance structs in the class hierarchy, as well as for the public instance structs. The CdgInterpreter itself is huge and adding just another two integers to GstVideoDecoderPrivate in libgstvideo is causing the limit to be reached, so let's allocate it in a separate memory area.
2020-07-01Update for Element::post_message() signature changeSebastian Dröge
2020-06-30Fix compilation after flags cleanupSebastian Dröge
2020-06-30Update various dependenciesSebastian Dröge
2020-06-25Update for functions returning a Builder being renamed to builder() instead ↵Sebastian Dröge
of new() And new video event APIs.
2020-06-25event,message,query: update instantiationFrançois Laignel
See https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/532
2020-06-22Remove a few unused dependenciesSebastian Dröge
2020-06-22Update to use the new pad builders for safely setting pad functionsSebastian Dröge
Only two uses of unsafely setting the pad functions is left: - fallbacksrc for overriding the chain function of the proxy pad of a ghost pad - threadshare for overriding the pad functions after creationg, which probably needs some fixing at some point
2020-06-18flavors: Update num-rational dependency to 0.3Sebastian Dröge
2020-06-16Update for new_with_XXX/new_from_XXX function renamingSebastian Dröge
2020-06-11use new constructor namesGuillaume Desmottes
2020-06-10tttocea608: insert preambles in roll-up modeMathieu Duponchelle
I thought I could spare some bandwidth by letting renderers pick the base row, but it turns out this triggers some unwanted behaviours with compliant renderers. Instead, we now follow the protocol laid out in EIA/CEA-608-B, section B.8.1 Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/355>
2020-06-08video: Handle Result returned by VideoMeta::add()Sebastian Dröge
By simply unwrapping for now, which is still better silently having no VideoMeta.
2020-06-04closedcaption: implement cea608overlayMathieu Duponchelle
Useful complement to cea708overlay, that can only render native 708. The element isn't an aggregator, and simply parses and renders closed caption meta on its input video buffers. No property is exposed, the rendering is done using a monospace font, over a 32 x 15 grid with the font size fitted to fill as much of the viewport as possible. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/343>
2020-06-03tttocea608: fix pts incrementation in roll up modeMathieu Duponchelle
Simple operator mistake Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/351>
2020-05-30Remove now unneeded gobject_sys importsSebastian Dröge
2020-05-30tttocea608: add roll-up modesMathieu Duponchelle
In roll-up mode, the element expects input text without layout (eg new lines), and the characters it outputs are displayed immediately, without double-buffering as in pop-on mode. Once the last column is reached, the element simply outputs a carriage return and the text scrolls up, potentially splitting words with no hyphenation. The main advantage of this mode is its simplicity and the near-zero latency it introduces. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/347>
2020-05-15video/png: Add PNG encoder elementneithanmo
It can encode raw video formats like Gray8/16, RGB and RGBA and uses the PNG crate which is a decoding and encoding library in pure Rust
2020-05-13closedcaption/{scc,mcc}parse: Allow an optional UTF-8 BOM at the beginningSebastian Dröge
Some software is apparently writing an UTF-8 BOM at the beinning of the file.
2020-05-01cdgdec: fix test with gst masterGuillaume Desmottes
Test was relying on 'blocksize' property on the source which can only be used in push mode. This change in baseparse broke it: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/commit/e906197c622725e48b6250a71a922d45b006fb14 so ensure we are actually in push mode by using pushfilesrc.
2020-04-24Configure crate-type to cdylib/rlib consistently in Cargo.tomlSebastian Dröge
And not in the source code, it's a build decision.
2020-04-24Fix various new clippy warnings with clippy 1.43Sebastian Dröge
2020-04-23tttocea608: use mul_div_roundMathieu Duponchelle
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/314>
2020-04-23tttocea608: forward gaps from upstreamMathieu Duponchelle
taking our own latency into account Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/314>
2020-04-23tttocea608: protect State with a simple mutexMathieu Duponchelle
There was no reason to use AtomicRefcell in this context, aside from the dubious pleasure of panicing when attempting to borrow mutably while another mutable borrow was already held. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/314>
2020-04-23tttocea608: refactor to fit more scenariosMathieu Duponchelle
- Report a latency: By design, tttocea608 will output buffers in the "past" when receiving an input buffer: we want the second to last buffer in the buffer list that we output to have the same pts as the input buffer, as it contains the end_of_caption control code which determines when the current closed caption actually gets displayed in pop_on mode. The previous buffers have timestamps decreasing as a function of the framerate, for up to potentially 74 byte pairs (the breakdown is detailed in a comment). The element thus has to report a latency, at 30 frames per second it represents around 2.5 seconds. - Refactor timestamping: Stop using a frame duration, but rather base our timestamps on a scaled frame index. This is to avoid rounding errors, and allow for exactly one byte pair per buffer if the proper framerate is set on the closed caption branch, and the video branch has perfect timestamps, eg videorate. In practice, that one byte pair per frame requirement should only matter for line 21 encoding, but we have to think about this use case too. - Splice in erase_display_memory: When there is a gap between the end of a buffer and the start of the next one, we want to erase the display memory (this is unnecessary otherwise, as the end_of_caption control code will in effect ensure that the display is erased when the new caption is displayed). The previous implementation only supported this imperfectly, as it could cause timestamps to go backwards. - Output last erase_display_memory: The previous implementation was missing the final erase_display_memory on EOS - Output gaps - Write more tests Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/314>
2020-04-16flavors: remove git suffix from git depGuillaume Desmottes
Not needed and will make cargo deny sources list homogeneous.
2020-04-16fix LGPL-2.1+ license in Cargo.tomlGuillaume Desmottes
The proper SPDX name is LGPL-2.1-or-later, see https://spdx.org/licenses/
2020-04-15Update all versions to 0.6.0Mathieu Duponchelle
2020-04-14closedcaption: Convert bitfields to uint8_t for portability reasonsSebastian Dröge
Contrary to what one might believe, this actually reduces the size of the structs due to alignment constraints. On Linux x86-64 clang/gcc it reduces the size of the caption_frame_t struct from 7760 bytes to 6800 bytes, on Windows x86-64 MSVC from 11600 bytes to 6800 bytes. It also causes simpler and potentially faster assembly to be generated as the values can be directly accessed as uint8_t instead of having to extract the corresponding bits with bitwise operations. It also gives us the same ABI with clang/gcc and MSVC.
2020-04-14closedcaption: Update bindgen generated FFI bindings to latest versionSebastian Dröge
2020-04-14closedcaption: Port to combine 4Sebastian Dröge
2020-04-13closedcaption/mccparse: Refactor parser state handling a bitSebastian Dröge
To make it a bit less confusing. The name of the state previously was what was previously parsed, not what is expected now.
2020-04-13closedcaption/sccparse: Don't strictly require empty lines between each ↵Sebastian Dröge
caption line There is some broken software out there not inserting the empty lines and we don't really need them for proper parsing. Only require an empty line between header and the first caption line.
2020-04-06cdg: update image and cdg_renderer depsGuillaume Desmottes
2020-04-05Update all documentation to point to the updated repository nameArun Raghavan
Just gst-plugin-rs -> gst-plugins-rs
2020-04-05Rename flv directory as flavorsArun Raghavan
Follows the same convention as all the other plugins.
2020-04-05Drop gst-plugin- prefix in plugin directory nameArun Raghavan
2020-04-05Reorganise plugins into directories by functionArun Raghavan
This should start making navigating the tree a little easier to start with, and we can then move to allowing building specific groups of plugins as well. The plugins are moved into the following hierarchy: audio / gst-plugin-audiofx / gst-plugin-claxon / gst-plugin-csound / gst-plugin-lewton generic / gst-plugin-file / gst-plugin-sodium / gst-plugin-threadshare net / gst-plugin-reqwest / gst-plugin-rusoto utils / gst-plugin-fallbackswitch / gst-plugin-togglerecord video / gst-plugin-cdg / gst-plugin-closedcaption / gst-plugin-dav1d / gst-plugin-flv / gst-plugin-gif / gst-plugin-rav1e gst-plugin-tutorial gst-plugin-version-helper