summaryrefslogtreecommitdiff
path: root/pjmedia
diff options
context:
space:
mode:
authorBenny Prijono <bennylp@teluu.com>2011-10-04 08:23:07 +0000
committerBenny Prijono <bennylp@teluu.com>2011-10-04 08:23:07 +0000
commit9dadde885bba819e5bdd2a51e219be669f02efd2 (patch)
treea92941f4b8cb304a16ab99bb89feb4b21fe12267 /pjmedia
parentcb646a2403e5e3bf84c2eb59c602f46fef11464e (diff)
Added pjsua_call_vid_stream_is_running() and pjmedia_vid_stream_is_running() API (closes #1379)
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@3786 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjmedia')
-rw-r--r--pjmedia/include/pjmedia/vid_stream.h11
-rw-r--r--pjmedia/src/pjmedia/vid_stream.c21
2 files changed, 32 insertions, 0 deletions
diff --git a/pjmedia/include/pjmedia/vid_stream.h b/pjmedia/include/pjmedia/vid_stream.h
index 83df1167..bdd84079 100644
--- a/pjmedia/include/pjmedia/vid_stream.h
+++ b/pjmedia/include/pjmedia/vid_stream.h
@@ -287,6 +287,17 @@ PJ_DECL(pj_status_t) pjmedia_vid_stream_start(pjmedia_vid_stream *stream);
/**
+ * Query if the stream is started on the specified direction.
+ *
+ * @param stream The video stream.
+ * @param dir The direction to be checked.
+ *
+ * @return PJ_TRUE if stream is started.
+ */
+PJ_DECL(pj_bool_t) pjmedia_vid_stream_is_running(pjmedia_vid_stream *stream,
+ pjmedia_dir dir);
+
+/**
* Pause the individual channel in the stream.
*
* @param stream The video channel.
diff --git a/pjmedia/src/pjmedia/vid_stream.c b/pjmedia/src/pjmedia/vid_stream.c
index dc28fc9a..7e60ebcf 100644
--- a/pjmedia/src/pjmedia/vid_stream.c
+++ b/pjmedia/src/pjmedia/vid_stream.c
@@ -1598,6 +1598,27 @@ PJ_DEF(pj_status_t) pjmedia_vid_stream_start(pjmedia_vid_stream *stream)
/*
+ * Check status.
+ */
+PJ_DEF(pj_bool_t) pjmedia_vid_stream_is_running(pjmedia_vid_stream *stream,
+ pjmedia_dir dir)
+{
+ pj_bool_t is_running = PJ_TRUE;
+
+ PJ_ASSERT_RETURN(stream, PJ_FALSE);
+
+ if (dir & PJMEDIA_DIR_ENCODING) {
+ is_running &= (stream->enc && !stream->enc->paused);
+ }
+
+ if (dir & PJMEDIA_DIR_DECODING) {
+ is_running &= (stream->dec && !stream->dec->paused);
+ }
+
+ return is_running;
+}
+
+/*
* Pause stream.
*/
PJ_DEF(pj_status_t) pjmedia_vid_stream_pause(pjmedia_vid_stream *stream,