Commit graph

3705 commits

Author SHA1 Message Date
Daniel Vilar
75bba9f0e0 Merge branch 'audio_src' into 'develop_rr_peite'
Added audio src
2018-06-26 14:09:43 +02:00
Daniel Vilar
43db3e4477 Clean code 2018-06-26 14:07:43 +02:00
Daniel Vilar
893c217212 Refactor get frame logic 2018-06-26 13:06:55 +02:00
Daniel Vilar
e5405a6657 Moved connection to ndi logic from sources to a common function 2018-06-25 10:38:45 +02:00
Sebastian Dröge
a9960f1fc0 Get rid of callback_guard! as unwinding through FFI is defined behaviour now and aborts 2018-06-24 14:56:11 +03:00
Daniel Vilar
2e9a0242af Working audio src 2018-06-20 10:23:19 +02:00
Daniel Vilar
e0a3fb393e Work in progress 2018-06-15 15:16:25 +02:00
Daniel Vilar
5302c67f97 First step to implement audiosrc 2018-06-12 14:40:17 +02:00
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