Commit graph

3447 commits

Author SHA1 Message Date
Daniel Vilar
1ea558641e Get video caps from NDI stream 2018-06-12 13:41:48 +02:00
Daniel Vilar
24f2cd57ad Refactor NDI receiver logic 2018-06-12 13:39:49 +02:00
Daniel Vilar
3e9b1a85ca Use timestamp instead of timecode, some videos timecode is 0 2018-06-04 13:45:29 +02:00
Daniel Vilar
e8ee6fd806 Close NDI stream when closing gstreamer 2018-06-04 13:44:27 +02:00
Sebastian Dröge
754373ba6c Update to byte-slice-cast 0.2 2018-06-01 12:02:32 +03:00
Daniel Vilar
a89334a500 Updated README 2018-05-31 11:19:01 +02:00
Daniel Vilar
a1fc0efe3d Indent code correctly 2018-05-31 11:16:29 +02:00
Daniel Vilar
c744353583 Added ip parameter to connect to the stream 2018-05-31 11:14:11 +02:00
Daniel Vilar
385351e5ad Refactor start_pts 2018-05-30 12:55:54 +02:00
Thibault Saunier
25af5afb2b Move plugin-simpler::error code back to gst-plugin
Prepatory work to write element base class for decoders (which will be
outside of plugin-simple).
2018-05-13 13:53:18 +03:00
Sebastian Dröge
48ce43ce06 Update to muldiv 0.2 2018-05-11 10:37:34 +03:00
Sebastian Dröge
389e25ae03 Fix diff links in the CHANGELOG.md 2018-05-09 12:32:59 +03:00
Sebastian Dröge
57dc9451cc Update CHANGELOG.md for 0.2.1 2018-05-09 12:30:23 +03:00
Sebastian Dröge
3703999895 Fix memory leak in ElementClass::add_pad_template()
It's taking the pad template as transfer-floating, not transfer-full.
2018-05-09 12:00:55 +03:00
Sebastian Dröge
2c0e7a9192 Update for gobject-subclass API changes 2018-05-04 13:58:02 +02:00
Sebastian Dröge
88596f933f Update CHANGELOG.md for 0.2.0 2018-05-02 15:29:47 +03:00
Sebastian Dröge
318656ea9b Add api-bindings category to the crate 2018-05-02 14:12:39 +03:00
Sebastian Dröge
1f596d414d Use unsafe impl for the Instance trait impl 2018-05-02 13:48:03 +03:00
Sebastian Dröge
6803cb5fac Move gobject-subclass to its own repository 2018-05-01 17:55:27 +03:00
Sebastian Dröge
80793cd766 Move export/re-export cleanup 2018-05-01 17:43:52 +03:00
Sebastian Dröge
9559742e19 Clean up module exports/re-exports 2018-05-01 17:30:02 +03:00
Sebastian Dröge
51b21ef977 Cleanup up imports/macro_use 2018-05-01 17:25:49 +03:00
Sebastian Dröge
8bc3f12061 Run everything through rustfmt again 2018-05-01 17:16:12 +03:00
Dirk Van Haerenborgh
d74995ee7e remove Send+Sync requirement from object. Does not bode well with gtk 2018-05-01 17:16:07 +03:00
Dirk Van Haerenborgh
a401427a0c add Instance trait implementation for InstanceStruct 2018-05-01 17:11:18 +03:00
Dirk Van Haerenborgh
31a48c4baa Split out base object traits
This allows using this independent from GStreamer for subclassing e.g.
GIO or GTK GObjects.

Fixes https://github.com/sdroege/gst-plugin-rs/issues/28
Fixes https://github.com/sdroege/gst-plugin-rs/pull/32
2018-05-01 17:11:18 +03:00
Daniel Vilar
d667536ec6 Added pts, and offsets to gstreamer buffer 2018-04-30 10:18:17 +02:00
Daniel Vilar
bc8950303c Added field pts to buffer 2018-04-26 13:53:50 +02:00
Daniel Vilar
53c692fac5 Connect to the stream inidicated in pipeline stream-name property 2018-04-26 12:30:13 +02:00
Daniel Vilar
bf25388216 Improved logs 2018-04-25 12:42:41 +02:00
galicaster
45fcccbd31 Eurekagit statusgit status
First iteration copying memory.
2018-04-25 10:32:47 +02:00
galicaster
db5493d110 Clean code 2018-04-24 19:41:27 +02:00
Daniel Vilar
2d9feaa462 Martes 2018-04-24 14:08:06 +02:00
Daniel Vilar
d813fa5681 Try to add video data to a buffer 2018-04-23 14:12:41 +02:00
Daniel Vilar
ca4e498a0b Added NDI code 2018-04-23 13:42:38 +02:00
Daniel Vilar
491276bfbf Merge branch 'develop_rr_peite_review' into 'develop_rr_peite'
Develop Rr Peite Review
2018-04-17 10:05:45 +02:00
rubenrua
1377916b3b Add NdiInstance struct that implement Send
https://doc.rust-lang.org/book/second-edition/ch19-03-advanced-traits.html#the-newtype-pattern-to-implement-external-traits-on-external-types

error[E0277]: the trait bound `*mut std::os::raw::c_void: std::marker::Send` is not satisfied in `ndisrc::State`
   --> src/ndisrc.rs:276:6
       |
       276 | impl ObjectImpl<BaseSrc> for NdiSrc {
           |      ^^^^^^^^^^^^^^^^^^^ `*mut std::os::raw::c_void` cannot be sent between threads safely
               |
                   = help: within `ndisrc::State`, the trait `std::marker::Send` is not implemented for `*mut std::os::raw::c_void`
                       = note: required because it appears within the type `std::option::Option<*mut std::os::raw::c_void>`
                           = note: required because it appears within the type `ndisrc::State`
                               = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Mutex<ndisrc::State>`
                                   = note: required because it appears within the type `ndisrc::NdiSrc`

error[E0277]: the trait bound `*mut std::os::raw::c_void: std::marker::Send` is not satisfied in `ndisrc::State`
   --> src/ndisrc.rs:405:6
       |
       405 | impl ElementImpl<BaseSrc> for NdiSrc {
           |      ^^^^^^^^^^^^^^^^^^^^ `*mut std::os::raw::c_void` cannot be sent between threads safely
               |
                   = help: within `ndisrc::State`, the trait `std::marker::Send` is not implemented for `*mut std::os::raw::c_void`
                       = note: required because it appears within the type `std::option::Option<*mut std::os::raw::c_void>`
                           = note: required because it appears within the type `ndisrc::State`
                               = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Mutex<ndisrc::State>`
                                   = note: required because it appears within the type `ndisrc::NdiSrc`

error[E0277]: the trait bound `*mut std::os::raw::c_void: std::marker::Send` is not satisfied in `ndisrc::State`
   --> src/ndisrc.rs:424:6
       |
       424 | impl BaseSrcImpl<BaseSrc> for NdiSrc {
           |      ^^^^^^^^^^^^^^^^^^^^ `*mut std::os::raw::c_void` cannot be sent between threads safely
               |
                   = help: within `ndisrc::State`, the trait `std::marker::Send` is not implemented for `*mut std::os::raw::c_void`
                       = note: required because it appears within the type `std::option::Option<*mut std::os::raw::c_void>`
                           = note: required because it appears within the type `ndisrc::State`
                               = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Mutex<ndisrc::State>`
                                   = note: required because it appears within the type `ndisrc::NdiSrc`

error: aborting due to 3 previous errors
2018-04-16 16:53:22 +00:00
rubenrua
892eb29c3b Add ndilib.rs 2018-04-16 16:42:33 +00:00
Daniel Vilar
c25ad01561 First try to insert NDI libraries 2018-04-13 12:06:15 +02:00
Daniel Vilar
2b09a48a5c Added videocaps and commented almost audiosrc related code 2018-04-12 17:52:21 +02:00
Daniel Vilar
227d750305 Added property stream-name 2018-04-12 17:17:59 +02:00
Daniel Vilar
b0f9b7fae9 Commented unused seek 2018-04-12 16:54:36 +02:00
rubenrua
2aed66ba0f Using deps cte version 2018-04-12 15:17:02 +02:00
rubenrua
a3067f0dd5 Add prerequisites.
See https://github.com/sdroege/gstreamer-rs#installation-linux
2018-04-12 15:14:59 +02:00
Daniel Vilar
8229082cc1 Added license 2018-04-10 18:50:44 +02:00
rubenrua
1d33719744 Using RUST enums
With repr
2018-04-10 18:49:34 +02:00
rubenrua
755fda63d3 Define remaining enums 2018-04-10 18:35:39 +02:00
rubenrua
98db99924e Execute rustfmt 2018-04-10 17:53:49 +02:00
rubenrua
20b6ae5ff6 Use Default Trait
The default values must be reviewed
2018-04-10 17:49:21 +02:00
rubenrua
8d99d47f81 Using correnct default values 2018-04-10 15:25:01 +02:00