Commit graph

2259 commits

Author SHA1 Message Date
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
Daniel Vilar 8ce45f4f0d Refactor cargo clippy warnings 2018-09-18 13:12:04 +02:00
Daniel Vilar cf8b7db9bd Fix code style with cargo fmt 2018-09-18 11:53:12 +02:00
Daniel Vilar 6db4929e08 Rename ndilib to ndisys 2018-09-18 11:52:09 +02:00
Daniel Vilar c669a99043 Updated README 2018-09-12 12:10:03 +02:00
Daniel Vilar 47453f380d Merge branch 'develop_rr_peite' into 'master'
Gst NDI plugin
2018-09-12 09:58:28 +02:00
Daniel Vilar 45e2ef54fb Added .gitignore 2018-09-12 09:52:53 +02:00
Daniel Vilar 00992c1825 Deleted Cargo.lock 2018-09-12 09:52:16 +02:00
Daniel Vilar c92d63ee88 Refactor unsafe blocks 2018-09-12 09:44:46 +02:00
Daniel Vilar 1aaf429f9e Detect if NDI source closed the stream 2018-09-11 17:47:28 +02:00
Daniel Vilar 1cabad0092 Refactor logic to get initial timestamp 2018-09-11 15:20:47 +02:00
Daniel Vilar 79fc47b41f Updated gstreamer rust bindings to version 0.12 and gstreamer plugin to 0.3 2018-09-11 09:47:17 +02:00
Sebastian Dröge 046a0af6a1 Update versions to 0.4.0 2018-09-10 02:02:31 +03:00
Sebastian Dröge 1379e880a7 Update CHANGELOG.md for 0.3.0 2018-09-10 02:01:50 +03:00
Sebastian Dröge 5fd1f2bcbe Remove accidentally committed mixer module 2018-09-06 14:21:24 +03:00
Sebastian Dröge 17193e3308 Update num-rational to 0.2 2018-09-06 14:19:47 +03:00
Sebastian Dröge 5cac22d1c0 Switch gobject-subclass repository URI 2018-09-06 13:56:16 +03:00
Daniel Vilar 2864ef4d99 Updated README 2018-09-04 16:32:01 +02:00
Daniel Vilar 85d0c75f9b Fix error when creating new NDI receivers 2018-09-03 16:31:32 +02:00
Daniel Vilar aaaa593a72 Refactor timestamp and pts logic 2018-09-03 15:43:09 +02:00
Daniel Vilar 4338068b3c Use same start_pts for audio and video in the same ndi receiver 2018-08-20 16:59:12 +02:00
Daniel Vilar 3b4ae6c00e Indent and clean warnings 2018-08-20 12:14:54 +02:00
Daniel Vilar 07a8b8a274 Refactor logic to use multiple streams in the same pipeline
Now it's possible to connect to N streams in the same pipeline. Each new connection will create a new NDI receiver except if it's a empty slot in the receiver.

Each receiver has two slots one to connect to audio and other to connect to video to the same stream.
2018-08-20 11:09:43 +02:00
Daniel Vilar ba45931830 Add audio to the pipeline even if the stream source it's already in use for video
FIXME: Whith this commit it's possible to add more streams for the same source if the pipeline has an audio source for that source.
2018-08-14 16:47:58 +02:00
Daniel Vilar 8bf4f8f935 Fix to use multiple NDI streams in the same pipeline
It's not possible to connect to the same stream twice. For example to audio and video from the same stream.
2018-08-14 15:45:13 +02:00
Sebastian Dröge 5e55ed6b6c Add support for subclassing GstAggregator and GstAggregatorPad 2018-08-01 19:13:42 +03:00
Sebastian Dröge bf63a823cd Use from_glib_borrow() for more vfunc parameters 2018-07-30 12:24:12 +03:00
Sebastian Dröge d1f90d0fea Add support for implementing GstChildProxy 2018-07-30 12:20:56 +03:00
Sebastian Dröge 0826906704 Add support for subclassing ghost pads 2018-07-30 11:22:07 +03:00
Sebastian Dröge 484c5186cd Add support for subclassing pads 2018-07-30 11:15:29 +03:00
Sebastian Dröge dcb3683232 Run everything through latest rustfmt 2018-07-27 13:35:58 +03:00
Sebastian Dröge bdfc95e6e8 Get rid of send-cell dependency and fix reference cycles 2018-07-27 13:35:24 +03:00
Sebastian Dröge 6e33313b78 Make use of downcast_ref() to prevent some clones 2018-07-12 08:35:09 +03:00
Sebastian Dröge b3089ca047 Use ObjectExt::notify() instead of the gobject-subclass variant 2018-07-11 16:12:10 +03:00
Daniel Vilar 0baf7ee839 Calculate buffer duration from frame info 2018-07-03 10:02:15 +02:00
Daniel Vilar 98cd1bbc8a Added pipelines to README 2018-07-02 14:08:15 +02:00