summaryrefslogtreecommitdiffstats
path: root/src/gsttools
diff options
context:
space:
mode:
authorArno Rehn <arno@arnorehn.de>2018-01-24 18:05:47 +0100
committerVaL Doroshchuk <valentyn.doroshchuk@qt.io>2019-06-28 13:18:57 +0000
commit421fa617369646eb99750c52a3b38fc3b3015ec6 (patch)
treed7f03fa560fcf278275173afe8f6e8e26550d4a8 /src/gsttools
parente54d80fbea87c2761427659da79cb3996cbd4a05 (diff)
QGstAppSrc: Don't send EOS for at-end sequential devices
Sequential devices such as network sockets may continuously stream data. Thus, the device being atEnd() or returning 0 for read() doesn't automatically mean that the stream is done. This fixes streaming live data over a device (e.g. socket or pipe). [ChangeLog][][GStreamer backend] Fix streaming data from sequential devices. Change-Id: I2fc834479cc6d52a806790ccb722bcfdea4723be Reviewed-by: VaL Doroshchuk <valentyn.doroshchuk@qt.io>
Diffstat (limited to 'src/gsttools')
-rw-r--r--src/gsttools/qgstappsrc.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/gsttools/qgstappsrc.cpp b/src/gsttools/qgstappsrc.cpp
index 823f95655..2d312862d 100644
--- a/src/gsttools/qgstappsrc.cpp
+++ b/src/gsttools/qgstappsrc.cpp
@@ -195,10 +195,10 @@ void QGstAppSrc::pushDataToAppSrc()
}
#endif
}
- } else {
+ } else if (!m_sequential) {
sendEOS();
}
- } else if (m_stream->atEnd()) {
+ } else if (m_stream->atEnd() && !m_sequential) {
sendEOS();
}
}