Sebastian Dröge
7cd2945268
threadshare: Implement error handling for IO/data flow errors
...
Also create a proper stream id
2018-11-05 13:36:20 +02:00
Sebastian Dröge
212b00ef2f
threadshare: Move buffer handling into a separate function
2018-11-05 13:36:20 +02:00
Sebastian Dröge
613706d446
threadshare: Implement propert event/query handling
2018-11-05 13:36:20 +02:00
Sebastian Dröge
e269e51524
threadshare: Refactor
2018-11-05 13:36:20 +02:00
Sebastian Dröge
f53efc6e6f
threadshare: Implement throttling for the poll loop
2018-11-05 13:36:20 +02:00
Sebastian Dröge
6aa9f642ba
threadshare: Allow running completely single-threaded
2018-11-05 13:36:20 +02:00
Sebastian Dröge
b939607693
threadshare: Stop using reactor::Background and implement it ourselves for now
2018-11-05 13:36:20 +02:00
Sebastian Dröge
299c69185e
threadshare: WIP
2018-11-05 13:36:20 +02:00
Sebastian Dröge
0fe6fbc859
threadshare: Initial working version
2018-11-05 13:36:20 +02:00
Sebastian Dröge
1593c06595
threadshare: Initial commit
2018-11-05 13:36:20 +02:00
Thijs Vermeir
a8e16d4815
register plugin static in integration test
...
After a `cargo clean` the shared library is not yet present if the test is started with `cargo test`.
2018-11-04 20:24:20 +01:00
Thijs Vermeir
e4acf61af3
create plugin_register_static in plugin_define!
2018-11-04 20:24:20 +01:00
Thijs Vermeir
cee861f341
use BoolError for plugin registration
2018-11-04 20:24:20 +01:00
Sebastian Dröge
46f80da72e
First run lints, then tests
2018-11-04 18:52:31 +02:00
Sebastian Dröge
87f94ddcc8
Run gitlab-ci also with Rust 1.28
2018-11-04 18:52:25 +02:00
Sebastian Dröge
9a4aaa4e43
Point to the new repo location in README.md
2018-11-03 20:55:29 +02:00
Sebastian Dröge
712ea76d7d
Run everything through rustfmt again
2018-11-03 20:30:10 +02:00
Sebastian Dröge
97cc1c8458
Change all references from GitHub to freedesktop.org GitLab
2018-11-03 20:24:21 +02:00
Sebastian Dröge
ee3fc37f4c
Switch to parking_lot Mutex/Condvar for lower overhead
2018-11-01 12:45:57 +02:00
Arun Raghavan
25501233ec
Use FlowError instead of FlowReturn as error part of Result
...
This prevents the possibility of a Result that is an Err(Ok), which
would not be meaningful.
2018-10-29 19:15:38 +00:00
Arun Raghavan
20910b2415
Implement From instead of Into for FlowError -> FlowReturn
...
It is recommended to implement From as that is more flexible and
includes an implicit Into instance.
2018-10-28 12:07:19 +00:00
Arun Raghavan
c5c3726668
Update gitignore for Cargo.lock and vim files
2018-10-28 10:20:54 +00:00
Jordan Petridis
252b8498ff
CI: Add gitlab-ci config.
...
Similar to how ti was done for gstreamer-rs.
See [1] for more.
[1] https://github.com/sdroege/gstreamer-rs/pull/132
2018-10-15 16:26:28 +03:00
Sebastian Dröge
628f5099eb
Run everything through latest rustfmt
2018-10-11 13:49:48 +03:00
Sebastian Dröge
f2deb2264b
Fix various clippy warnings
2018-10-11 13:49:10 +03:00
Sebastian Dröge
162311d2f1
Remove travis cargo cache
2018-10-05 17:19:30 +03:00
rubenrua
227080e32d
Add comment about Newtek NDI times resolution
...
See: https://github.com/FFmpeg/FFmpeg/blob/master/libavdevice/libndi_newtek_common.h#L27
From NDI SDK Documentation:
This is the timecode of this frame in 100ns intervals. This is generally not used internally by the SDK, but is passed
through to applications who may interpret it as they wish. When sending data, a value of
NDIlib_send_timecode_synthesize can be specified (and should be the default), the operation of this value is
documented in the sending section of this documentation. NDIlib_send_timecode_synthesize will yield UTC
time in 100ns intervals since the Unix Time Epoch 1/1/1970 00:00. When interpreting this timecode a receiving
application may choose to localise the time of day based on time zone offset which can optionally be communicated by
the sender in connection metadata. Since timecode is stored in UTC within NDI, communicating timecode time of day for
non UTC time zones requires a translation
2018-09-27 10:18:54 +02:00
rubenrua
cb1ea2195f
Fix rust fmt
2018-09-25 16:04:00 +02:00
rubenrua
8a81ca526b
Use "cargo build --release" in README. Fix #4
...
Waiting for use a distro package.
2018-09-25 15:55:54 +02:00
Ruben Gonzalez
c93f7d41dc
Merge pull request #6 from sdroege/compare-factory-name
...
Compare element factory names to distinguish video source from audio …
2018-09-25 15:44:29 +02:00
Ruben Gonzalez
d1cec10925
Merge pull request #7 from teltek/travis
...
Add Travis
2018-09-25 15:19:28 +02:00
rubenrua
00df152210
Update travis with slomo GStreamer version
...
Copy from https://github.com/sdroege/gst-plugin-rs/blob/master/.travis.yml
2018-09-25 13:50:49 +02:00
Sebastian Dröge
a8c9d78bff
Compare element factory names to distinguish video source from audio source
...
We could also go via the glib::Type but that requires more steps unless
we also add a getter from the registered type to the audio/video source
modules.
2018-09-25 13:37:59 +03:00
rubenrua
1a4f146318
Add License and Acknowledgments
...
License: https://choosealicense.com/licenses/lgpl-3.0/
Thank you @sdroege for your work with GStreamer and with Rust.
2018-09-25 12:07:55 +02:00
Daniel Vilar
6ff3cb8e74
Merge pull request #3 from teltek/fix_ndi_audio
...
Fix audio interleave with NDIlib_util_audio_to_interleaved_16s_v2
2018-09-25 11:57:41 +02:00
rubenrua
b2ec1da345
Fix audio interleave with NDIlib_util_audio_to_interleaved_16s_v2
2018-09-25 11:52:41 +02:00
rubenrua
22c7240bad
Add debug info about latency
2018-09-24 18:15:33 +02:00
Ruben Gonzalez
f80a8ce18e
Merge pull request #2 from teltek/fix_latency
...
Fix latency
2018-09-24 17:47:09 +02:00
rubenrua
90b5fa8937
Fix video latency
2018-09-24 17:46:15 +02:00
Daniel Vilar
72bd822525
Added latency query
2018-09-24 15:46:36 +02:00
Daniel Vilar
86cdb6e5a2
Merge pull request #1 from teltek/fix_audio_offset
...
Fix ndiaudiosrc offset
2018-09-24 10:17:05 +02:00
rubenrua
c94727c872
Fix ndiaudiosrc offset
...
A buffer can also have one or both of a start and an end offset. These are media-type specific. For video buffers, the start offset will generally be the frame number. For audio buffers, it will be the number of samples produced so far. For compressed data, it could be the byte offset in a source or destination file. Likewise, the end offset will be the offset of the end of the buffer. These can only be meaningfully interpreted if you know the media type of the buffer (the preceding CAPS event). Either or both can be set to GST_BUFFER_OFFSET_NONE.
https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBuffer.html
2018-09-24 10:02:01 +02:00
rubenrua
533cc1148b
Update .gitignore with gitignore.io
2018-09-22 09:53:36 +02:00
rubenrua
56befc7f08
Delete packages not locale in trusty: libgstrtspserver-1.0-dev
2018-09-22 09:50:58 +02:00
Ruben Gonzalez
02f3b84bb3
Fix bug added with clippy refactor
2018-09-21 20:11:54 +02:00
rubenrua
d1ded51a96
Add dependencies
...
copy ndi lib from https://github.com/Palakis/obs-ndi/blob/master/CI/install-dependencies-xenial.sh
2018-09-21 18:00:07 +02:00
rubenrua
104509fb79
Add Travis CI
...
Thank you @greyblake for https://youtu.be/SNpJ3h8R4ks
2018-09-21 17:46:34 +02:00
Sebastian Dröge
a178945d80
Update travis to use GStreamer 1.14.3 binaries (including OpenGL library)
2018-09-21 18:37:12 +03:00
Daniel Vilar
440a353f93
Publish code in Github
2018-09-18 13:39:34 +02:00
Daniel Vilar
a41f33ae08
Clean comments
2018-09-18 13:25:24 +02:00