summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Dröge <sebastian@centricular.com>2016-08-26 15:48:36 +0300
committerSebastian Dröge <sebastian@centricular.com>2016-09-01 13:01:38 +0300
commit42f44f3fed2d86d45a47853847b466bccfacd619 (patch)
tree8c616e5c772550968ea86309acb7c99c6253322d
parentab536a68db84dd9543993ac0dff255b1885f8fee (diff)
downloadgstreamer-plugins-bad-42f44f3fed2d86d45a47853847b466bccfacd619.tar.gz
decklinkvideosink: Scale down scheduled frame times to milliseconds
Scale down to milliseconds, otherwise at least some hardware has problems scheduling the frames (or schedules them too slow) and we run out of available frames. https://bugzilla.gnome.org/show_bug.cgi?id=770282
-rw-r--r--sys/decklink/gstdecklinkvideosink.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/sys/decklink/gstdecklinkvideosink.cpp b/sys/decklink/gstdecklinkvideosink.cpp
index eebeff328..af9a63f23 100644
--- a/sys/decklink/gstdecklinkvideosink.cpp
+++ b/sys/decklink/gstdecklinkvideosink.cpp
@@ -528,8 +528,13 @@ gst_decklink_video_sink_prepare (GstBaseSink * bsink, GstBuffer * buffer)
" with duration %" GST_TIME_FORMAT, frame, GST_TIME_ARGS (running_time),
GST_TIME_ARGS (running_time_duration));
+ /* FIXME: Scale down to milliseconds, otherwise at least some hardware
+ * has problems scheduling the frames (or schedules them too slow) and we
+ * run out of available frames:
+ * https://bugzilla.gnome.org/show_bug.cgi?id=770282
+ */
ret = self->output->output->ScheduleVideoFrame (frame,
- running_time, running_time_duration, GST_SECOND);
+ running_time / GST_MSECOND, running_time_duration / GST_MSECOND, GST_MSECOND);
if (ret != S_OK) {
GST_ELEMENT_ERROR (self, STREAM, FAILED,
(NULL), ("Failed to schedule frame: 0x%08x", ret));