{"id":3750,"date":"2025-04-02T12:42:49","date_gmt":"2025-04-02T04:42:49","guid":{"rendered":"https:\/\/www.enablex.io\/developer\/?page_id=3750"},"modified":"2025-04-02T13:15:41","modified_gmt":"2025-04-02T05:15:41","slug":"enxstream","status":"publish","type":"page","link":"https:\/\/doc.smartflomeet.ttns.in\/developer\/video-api\/client-api\/react-native-toolkit\/enxstream\/","title":{"rendered":"Video API v1.9 React Native SDK \/ EnxStream Stream Handler"},"content":{"rendered":"\n<blockquote class=\"wp-block-quote\"><p>The EnxStream is a derived Class from EnxRtc. It handles all Media Stream related functions to initiate, configure and to transport streams to the Media Servers. It is also used for receiving stream end-points to be played.<\/p><\/blockquote>\n\n\n\n<p> References: <a href=\"#attributes\">Attributes<\/a> &#8211; <a href=\"#methods\">Methods<\/a> &#8211; <a href=\"#observers\">Observers<\/a><\/p>\n\n\n\n<a name=\"attributes\"><\/a>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2>Stream Meta Data Properties<\/h2>\n\n\n\n<ul><li><code>id<\/code> &#8211; Unique Stream ID<\/li><li><code>local<\/code> &#8211; Boolean. True for Local Stream; False for Remote Stream<\/li><li><code>room<\/code> &#8211; JSON Object. Room Into to which the Stream is associated<\/li><li><code>showing<\/code> &#8211; Boolean. Whether the stream is being played<\/li><li><code>audio<\/code> &#8211; Boolean. True if the stream has Audio Track<\/li><li><code>video<\/code> &#8211; Boolean. True if the stream has Video Track<\/li><li><code>screen<\/code> &#8211; Boolean. True if the stream has Screen Share<\/li><li><code>videoSize<\/code> &#8211; Size of Video Frame, defined as [minWidth, minHeight, maxWidth, maxHeight]<\/li><li><code>videoFrameRate<\/code> &#8211; Frame Rate of Video Stream, defined as [min, max]<\/li><li><code>desktopStreamId<\/code> &#8211; Chrome Media Source ID to be used for Screen Share<\/li><li><code>extensionId<\/code> &#8211; Extension ID to be used for Screen Share<\/li><li><code>audioMuted<\/code> &#8211; Boolean. True if Audio is muted<\/li><li><code>videoMuted<\/code> &#8211; Boolean. True if Video is muted<\/li><li><code>attributes<\/code> &#8211; videoFrameRate<\/li><\/ul>\n\n\n\n<a name=\"methods\"><\/a>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2>Methods<\/h2>\n\n\n\n<p>Given below a categorized listing of methods:   <\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p><strong>Stream Basics<\/strong><\/p>\n\n\n\n<ul><li><code>initStream()<\/code> &#8211; To initialize a Stream <\/li><\/ul>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p><strong>Stream Conrols<\/strong><\/p>\n\n\n\n<ul><li><a href=\"..\/advance-features\/#mute-unmute-audio\"><code>muteSelfAudio()<\/code><\/a> &#8211; To mute\/unmute audio of own published stream <\/li><li><a href=\"..\/advance-features\/#mute-unmute-audio\"><code>muteSelfVideo()<\/code><\/a> &#8211; To mute\/unmute video of own published stream <\/li><li><a href=\"..\/advance-features\/#switch-camera\"><code>switchCamera()<\/code><\/a> &#8211; To switch from rear to front Camera and vice-versa to change Stream Source <\/li><\/ul>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p><strong>Moderator Controls<\/strong><\/p>\n\n\n\n<ul><li><a href=\"..\/moderator-controls\/#hard-mute-unmute-participants\"><code>hardMuteAudio()<\/code><\/a> &#8211; To hard mute a parrticipant\u2019s audio <\/li><li><a href=\"..\/moderator-controls\/#hard-mute-unmute-participants\"><code>hardMuteVideo()<\/code><\/a> &#8211; To hard mute a parrticipant\u2019s video <\/li><li><a href=\"..\/moderator-controls\/#hard-mute-unmute-participants\"><code>hardUnmuteAudio()<\/code><\/a> &#8211; To lift restriction of audio hard-mute state of participant <\/li><li><a href=\"..\/moderator-controls\/#hard-mute-unmute-participants\"><code>hardUnmuteVideo()<\/code><\/a> &#8211; To lift restriction of video hard-mute state of participant <\/li><\/ul>\n\n\n\n<a name=\"observers\"><\/a>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2>Callbacks<\/h2>\n\n\n\n<p>Given below is a list of Callbacks categorized by their functions. <\/p>\n\n\n\n<p><strong>Streaming<\/strong><\/p>\n\n\n\n<ul><li><code>remoteStreamAudioMute<\/code> &#8211; Everyone is notified when when user\u2019s audio is muted <\/li><li><code>remoteStreamAudioUnMute<\/code> &#8211; Everyone is notified when when user\u2019s audio is unmuted <\/li><li><code>remoteStreamVideoMute<\/code> &#8211; Everyone is notified when when user\u2019s video is muted <\/li><li><code>remoteStreamVideoUnMute<\/code> &#8211; Everyone is notified when when user\u2019s video is unmuted  <\/li><li><code>audioEvent<\/code> &#8211; When any action is performed on Audio track of a Stream <\/li><li><code>videoEvent <\/code>&#8211; When any action is performed on Video track of a Stream <\/li><\/ul>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p><strong>Hard Mute Audio<\/strong><\/p>\n\n\n\n<ul><li><code>hardMutedAudio<\/code> &#8211; Moderator is acknowledged when User&#8217;s audio stream is hard-muted <\/li><li><code>hardUnmutedAudio<\/code> &#8211; Moderator is acknowledged when User&#8217;s audio stream is hard-unmuted <\/li><li><code>receivedHardMutedAudio<\/code> &#8211; Participant is notified that Moderator has hard-muted his audio  stream <\/li><li><code>receivedHardUnmutedAudio<\/code> &#8211; Participant is notified that Moderator has hard-unmuted his audio stream <\/li><\/ul>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p><strong>Hard Mute Video<\/strong><\/p>\n\n\n\n<ul><li><code>hardVideoMute<\/code> &#8211; Moderator is acknowledged when User&#8217;s video stream is hard-muted <\/li><li><code>hardVideoUnmute<\/code> &#8211; Moderator is acknowledged when User&#8217;s video stream is hard-unmuted <\/li><li><code>receivedhardMuteVideo<\/code> &#8211; Participant is notified that Moderator has hard-muted his video stream <\/li><li><code>receivedhardUnmuteVideo<\/code> &#8211; Participant is notified that Moderator has hard-unmuted his video stream <\/li><\/ul>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<hr class=\"wp-block-separator is-style-wide\"\/>\n\n\n\n<p><strong>Explore React Native SDK<\/strong><\/p>\n\n\n\n<ul><li> \u2190 <a href=\"..\/enxroom\/\">EnxRoom &#8211; Room Handler<\/a> <\/li><li> <a href=\"..\/basic-functions\/\">Basic Functions<\/a> \u2192 <\/li><li>\u2191 <a href=\"#top\">Top<\/a> <\/li><li>\u21b0 <a href=\"..\/\">TOC &#8211; React Native SDK<\/a><\/li><\/ul>\n","protected":false},"excerpt":{"rendered":"<p>The EnxStream is a derived Class from EnxRtc. It handles all Media Stream related functions to initiate, configure and to transport streams to the Media Servers. It is also used for receiving stream end-points to be played. References: Attributes &#8211; Methods &#8211; Observers Stream Meta Data Properties id &#8211; Unique Stream ID local &#8211; Boolean. True for Local Stream; False for Remote Stream room &#8211; JSON Object. Room Into to&hellip; <\/p>\n","protected":false},"author":1,"featured_media":0,"parent":3747,"menu_order":3,"comment_status":"closed","ping_status":"closed","template":"","meta":{"ub_ctt_via":""},"featured_image_src":null,"uagb_featured_image_src":{"full":false,"thumbnail":false,"medium":false,"medium_large":false,"large":false,"1536x1536":false,"2048x2048":false,"featured":false,"featured-large":false},"uagb_author_info":{"display_name":"vcxdevwpadmin","author_link":"https:\/\/doc.smartflomeet.ttns.in\/developer\/author\/vcxdevwpadmin\/"},"uagb_comment_info":0,"uagb_excerpt":"The EnxStream is a derived Class from EnxRtc. It handles all Media Stream related functions to initiate, configure and to transport streams to the Media Servers. It is also used for receiving stream end-points to be played. References: Attributes &#8211; Methods &#8211; Observers Stream Meta Data Properties id &#8211; Unique Stream ID local &#8211; Boolean.&hellip;","_links":{"self":[{"href":"https:\/\/doc.smartflomeet.ttns.in\/developer\/wp-json\/wp\/v2\/pages\/3750"}],"collection":[{"href":"https:\/\/doc.smartflomeet.ttns.in\/developer\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/doc.smartflomeet.ttns.in\/developer\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/doc.smartflomeet.ttns.in\/developer\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/doc.smartflomeet.ttns.in\/developer\/wp-json\/wp\/v2\/comments?post=3750"}],"version-history":[{"count":0,"href":"https:\/\/doc.smartflomeet.ttns.in\/developer\/wp-json\/wp\/v2\/pages\/3750\/revisions"}],"up":[{"embeddable":true,"href":"https:\/\/doc.smartflomeet.ttns.in\/developer\/wp-json\/wp\/v2\/pages\/3747"}],"wp:attachment":[{"href":"https:\/\/doc.smartflomeet.ttns.in\/developer\/wp-json\/wp\/v2\/media?parent=3750"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}