Commit graph

22 commits

Author SHA1 Message Date
Sebastian Dröge 20bec35c68 Merge gst-plugin-threadshare into gst-plugin-rs 2018-11-05 13:40:43 +02:00
Sebastian Dröge 132986cf71 threadshare: Fix deprecation warnings and move to released versions of tokio 2018-11-05 13:36:47 +02:00
Sebastian Dröge 4e8c6fd293 threadshare: Change gobject-subclass repository URI 2018-11-05 13:36:47 +02:00
Sebastian Dröge 55f9b84008 threadshare: Drop support for multi-threaded runtime as it is consistently slower
And switch to the new built-in spawning support of CurrentThread
2018-11-05 13:36:47 +02:00
LEE Dongjun 20149c7293 threadshare: Rename udpsrc_benchmark.rs to benchmark.rs. 2018-11-05 13:36:47 +02:00
LEE Dongjun 6827b9509e threadshare: Add TcpClient elements and unit test. 2018-11-05 13:36:47 +02:00
Sebastian Dröge 987f78de42 threadshare: Move to tokio_threadpool and tokio_current_thread crates 2018-11-05 13:36:47 +02:00
Sebastian Dröge 23b25b210b threadshare: Update to rand 0.5 2018-11-05 13:36:47 +02:00
Sebastian Dröge 9adf663073 threadshare: Add property to udpsrc for allowing port/address reuse 2018-11-05 13:36:47 +02:00
Sebastian Dröge be0403ce24 threadshare: Switch to gobject-subclass 2018-11-05 13:36:47 +02:00
Sebastian Dröge 8f9a42f486 threadshare: Switch back to main tokio now that the CurrentThread PR is merged 2018-11-05 13:36:47 +02:00
Sebastian Dröge 2dfca38977 threadshare: Turn the single-threaded executor until no futures are left to be run before waiting
Otherwise in e.g. a pipeline like
  ts-udpsrc ! ts-queue ! fakesink
the first turn would only get a packet and queue it up, then we would
wait due to throttling and only then we would forward the packet from
the queue (but not poll the socket again), wait again due to throttling
and only then poll and get the next packet.

See https://github.com/tokio-rs/tokio/issues/310
2018-11-05 13:36:47 +02:00
Sebastian Dröge b56e1a9873 threadshare: Update udpsrc benchmark a bit 2018-11-05 13:36:47 +02:00
Sebastian Dröge 7939f95861 threadshare: Add very simple udpsrc/tonesrc benchmark application 2018-11-05 13:36:47 +02:00
Sebastian Dröge 30b2df753c threadshare: Set element flags correctly for sources and sinks
And let proxysink post EOS events
2018-11-05 13:36:20 +02:00
Sebastian Dröge ab22d81f12 threadshare: Integrate new tokio-timer into the IOContext 2018-11-05 13:36:20 +02:00
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 e269e51524 threadshare: Refactor 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 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