1 module libwasm.bindings.MediaStreamTrack; 2 3 import libwasm.types; 4 5 import memutils.ct: tuple; 6 import libwasm.bindings.EventHandler; 7 import libwasm.bindings.EventTarget; 8 import libwasm.bindings.MediaTrackConstraintSet; 9 import libwasm.bindings.MediaTrackSettings; 10 11 @safe: 12 nothrow: 13 14 alias ConstrainBoolean = SumType!(bool, ConstrainBooleanParameters); 15 alias ConstrainDOMString = SumType!(string, Sequence!(string), ConstrainDOMStringParameters); 16 alias ConstrainDouble = SumType!(double, ConstrainDoubleRange); 17 alias ConstrainLong = SumType!(int, ConstrainLongRange); 18 enum MediaSourceEnum { 19 camera, 20 screen, 21 application, 22 window, 23 browser, 24 microphone, 25 audioCapture, 26 other 27 } 28 struct MediaStreamTrack { 29 nothrow: 30 libwasm.bindings.EventTarget.EventTarget _parent; 31 alias _parent this; 32 this(Handle h) { 33 _parent = .EventTarget(h); 34 } 35 string kind()() { 36 return Object_Getter__string(this._parent, "kind"); 37 } 38 string id()() { 39 return Object_Getter__string(this._parent, "id"); 40 } 41 string label()() { 42 return Object_Getter__string(this._parent, "label"); 43 } 44 void enabled()(bool enabled) { 45 Object_Call_bool__void(this._parent, "enabled", enabled); 46 } 47 bool enabled()() { 48 return Object_Getter__bool(this._parent, "enabled"); 49 } 50 bool muted()() { 51 return Object_Getter__bool(this._parent, "muted"); 52 } 53 void onmute(T0)(scope auto ref Optional!(T0) onmute) if (isTOrPointer!(T0, EventHandlerNonNull)) { 54 Object_Call_EventHandler__void(this._parent, "onmute", !onmute.empty, onmute.front); 55 } 56 EventHandler onmute()() { 57 return Object_Getter__EventHandler(this._parent, "onmute"); 58 } 59 void onunmute(T0)(scope auto ref Optional!(T0) onunmute) if (isTOrPointer!(T0, EventHandlerNonNull)) { 60 Object_Call_EventHandler__void(this._parent, "onunmute", !onunmute.empty, onunmute.front); 61 } 62 EventHandler onunmute()() { 63 return Object_Getter__EventHandler(this._parent, "onunmute"); 64 } 65 MediaStreamTrackState readyState()() { 66 return Object_Getter__int(this._parent, "readyState"); 67 } 68 void onended(T0)(scope auto ref Optional!(T0) onended) if (isTOrPointer!(T0, EventHandlerNonNull)) { 69 Object_Call_EventHandler__void(this._parent, "onended", !onended.empty, onended.front); 70 } 71 EventHandler onended()() { 72 return Object_Getter__EventHandler(this._parent, "onended"); 73 } 74 auto clone()() { 75 return MediaStreamTrack(Object_Getter__Handle(this._parent, "clone")); 76 } 77 void stop()() { 78 Object_Call__void(this._parent, "stop"); 79 } 80 auto getConstraints()() { 81 return MediaTrackConstraints(Object_Getter__Handle(this._parent, "getConstraints")); 82 } 83 auto getSettings()() { 84 return MediaTrackSettings(Object_Getter__Handle(this._parent, "getSettings")); 85 } 86 auto applyConstraints()(scope ref MediaTrackConstraints constraints) { 87 return JsPromise!(void)(Object_Call_Handle__Handle(this._parent, "applyConstraints", constraints._parent)); 88 } 89 auto applyConstraints()() { 90 return JsPromise!(void)(Object_Getter__Handle(this._parent, "applyConstraints")); 91 } 92 void mutedChanged()(bool muted) { 93 Object_Call_bool__void(this._parent, "mutedChanged", muted); 94 } 95 } 96 enum MediaStreamTrackState { 97 live, 98 ended 99 } 100 struct MediaTrackConstraintSet { 101 nothrow: 102 JsHandle handle; 103 alias handle this; 104 this(Handle h) { 105 this.handle = JsHandle(h); 106 } 107 static auto create() { 108 return MediaTrackConstraintSet(libwasm_add__object()); 109 } 110 void width()(scope ref ConstrainLong width) { 111 Serialize_Object_VarArgCall!void(this.handle, "width", "SumType!(int,Handle)", tuple(libwasm.sumtype.match!(((int v) => 0),((ref width.Types[1] v) => 1))(width),tuple(libwasm.sumtype.match!(((int v) => v),((ref width.Types[1] v) => int.init))(width),libwasm.sumtype.match!(((int v) => Handle.init),((ref width.Types[1] v) => cast(Handle)v.handle))(width)))); 112 } 113 auto width()() { 114 return Object_Getter__Handle(this.handle, "width"); 115 } 116 void height()(scope ref ConstrainLong height) { 117 Serialize_Object_VarArgCall!void(this.handle, "height", "SumType!(int,Handle)", tuple(libwasm.sumtype.match!(((int v) => 0),((ref height.Types[1] v) => 1))(height),tuple(libwasm.sumtype.match!(((int v) => v),((ref height.Types[1] v) => int.init))(height),libwasm.sumtype.match!(((int v) => Handle.init),((ref height.Types[1] v) => cast(Handle)v.handle))(height)))); 118 } 119 auto height()() { 120 return Object_Getter__Handle(this.handle, "height"); 121 } 122 void frameRate()(scope ref ConstrainDouble frameRate) { 123 Serialize_Object_VarArgCall!void(this.handle, "frameRate", "SumType!(double,Handle)", tuple(libwasm.sumtype.match!(((double v) => 0),((ref frameRate.Types[1] v) => 1))(frameRate),tuple(libwasm.sumtype.match!(((double v) => v),((ref frameRate.Types[1] v) => double.init))(frameRate),libwasm.sumtype.match!(((double v) => Handle.init),((ref frameRate.Types[1] v) => cast(Handle)v.handle))(frameRate)))); 124 } 125 auto frameRate()() { 126 return Object_Getter__Handle(this.handle, "frameRate"); 127 } 128 void facingMode()(scope ref ConstrainDOMString facingMode) { 129 Serialize_Object_VarArgCall!void(this.handle, "facingMode", "SumType!(string,Handle,Handle)", tuple(libwasm.sumtype.match!(((string v) => 0),((ref facingMode.Types[1] v) => 1),((ref facingMode.Types[2] v) => 2))(facingMode),tuple(libwasm.sumtype.match!(((string v) => v),((ref facingMode.Types[1] v) => string.init),((ref facingMode.Types[2] v) => string.init))(facingMode),libwasm.sumtype.match!(((string v) => Handle.init),((ref facingMode.Types[1] v) => cast(Handle)v.handle),((ref facingMode.Types[2] v) => Handle.init))(facingMode),libwasm.sumtype.match!(((string v) => Handle.init),((ref facingMode.Types[1] v) => Handle.init),((ref facingMode.Types[2] v) => cast(Handle)v.handle))(facingMode)))); 130 } 131 auto facingMode()() { 132 return Object_Getter__Handle(this.handle, "facingMode"); 133 } 134 void mediaSource()(string mediaSource) { 135 Object_Call_string__void(this.handle, "mediaSource", mediaSource); 136 } 137 string mediaSource()() { 138 return Object_Getter__string(this.handle, "mediaSource"); 139 } 140 void browserWindow()(int browserWindow) { 141 Object_Call_int__void(this.handle, "browserWindow", browserWindow); 142 } 143 int browserWindow()() { 144 return Object_Getter__int(this.handle, "browserWindow"); 145 } 146 void scrollWithPage()(bool scrollWithPage) { 147 Object_Call_bool__void(this.handle, "scrollWithPage", scrollWithPage); 148 } 149 bool scrollWithPage()() { 150 return Object_Getter__bool(this.handle, "scrollWithPage"); 151 } 152 void deviceId()(scope ref ConstrainDOMString deviceId) { 153 Serialize_Object_VarArgCall!void(this.handle, "deviceId", "SumType!(string,Handle,Handle)", tuple(libwasm.sumtype.match!(((string v) => 0),((ref deviceId.Types[1] v) => 1),((ref deviceId.Types[2] v) => 2))(deviceId),tuple(libwasm.sumtype.match!(((string v) => v),((ref deviceId.Types[1] v) => string.init),((ref deviceId.Types[2] v) => string.init))(deviceId),libwasm.sumtype.match!(((string v) => Handle.init),((ref deviceId.Types[1] v) => cast(Handle)v.handle),((ref deviceId.Types[2] v) => Handle.init))(deviceId),libwasm.sumtype.match!(((string v) => Handle.init),((ref deviceId.Types[1] v) => Handle.init),((ref deviceId.Types[2] v) => cast(Handle)v.handle))(deviceId)))); 154 } 155 auto deviceId()() { 156 return Object_Getter__Handle(this.handle, "deviceId"); 157 } 158 void viewportOffsetX()(scope ref ConstrainLong viewportOffsetX) { 159 Serialize_Object_VarArgCall!void(this.handle, "viewportOffsetX", "SumType!(int,Handle)", tuple(libwasm.sumtype.match!(((int v) => 0),((ref viewportOffsetX.Types[1] v) => 1))(viewportOffsetX),tuple(libwasm.sumtype.match!(((int v) => v),((ref viewportOffsetX.Types[1] v) => int.init))(viewportOffsetX),libwasm.sumtype.match!(((int v) => Handle.init),((ref viewportOffsetX.Types[1] v) => cast(Handle)v.handle))(viewportOffsetX)))); 160 } 161 auto viewportOffsetX()() { 162 return Object_Getter__Handle(this.handle, "viewportOffsetX"); 163 } 164 void viewportOffsetY()(scope ref ConstrainLong viewportOffsetY) { 165 Serialize_Object_VarArgCall!void(this.handle, "viewportOffsetY", "SumType!(int,Handle)", tuple(libwasm.sumtype.match!(((int v) => 0),((ref viewportOffsetY.Types[1] v) => 1))(viewportOffsetY),tuple(libwasm.sumtype.match!(((int v) => v),((ref viewportOffsetY.Types[1] v) => int.init))(viewportOffsetY),libwasm.sumtype.match!(((int v) => Handle.init),((ref viewportOffsetY.Types[1] v) => cast(Handle)v.handle))(viewportOffsetY)))); 166 } 167 auto viewportOffsetY()() { 168 return Object_Getter__Handle(this.handle, "viewportOffsetY"); 169 } 170 void viewportWidth()(scope ref ConstrainLong viewportWidth) { 171 Serialize_Object_VarArgCall!void(this.handle, "viewportWidth", "SumType!(int,Handle)", tuple(libwasm.sumtype.match!(((int v) => 0),((ref viewportWidth.Types[1] v) => 1))(viewportWidth),tuple(libwasm.sumtype.match!(((int v) => v),((ref viewportWidth.Types[1] v) => int.init))(viewportWidth),libwasm.sumtype.match!(((int v) => Handle.init),((ref viewportWidth.Types[1] v) => cast(Handle)v.handle))(viewportWidth)))); 172 } 173 auto viewportWidth()() { 174 return Object_Getter__Handle(this.handle, "viewportWidth"); 175 } 176 void viewportHeight()(scope ref ConstrainLong viewportHeight) { 177 Serialize_Object_VarArgCall!void(this.handle, "viewportHeight", "SumType!(int,Handle)", tuple(libwasm.sumtype.match!(((int v) => 0),((ref viewportHeight.Types[1] v) => 1))(viewportHeight),tuple(libwasm.sumtype.match!(((int v) => v),((ref viewportHeight.Types[1] v) => int.init))(viewportHeight),libwasm.sumtype.match!(((int v) => Handle.init),((ref viewportHeight.Types[1] v) => cast(Handle)v.handle))(viewportHeight)))); 178 } 179 auto viewportHeight()() { 180 return Object_Getter__Handle(this.handle, "viewportHeight"); 181 } 182 void echoCancellation()(scope ref ConstrainBoolean echoCancellation) { 183 Serialize_Object_VarArgCall!void(this.handle, "echoCancellation", "SumType!(bool,Handle)", tuple(libwasm.sumtype.match!(((bool v) => 0),((ref echoCancellation.Types[1] v) => 1))(echoCancellation),tuple(libwasm.sumtype.match!(((bool v) => v),((ref echoCancellation.Types[1] v) => bool.init))(echoCancellation),libwasm.sumtype.match!(((bool v) => Handle.init),((ref echoCancellation.Types[1] v) => cast(Handle)v.handle))(echoCancellation)))); 184 } 185 auto echoCancellation()() { 186 return Object_Getter__Handle(this.handle, "echoCancellation"); 187 } 188 void noiseSuppression()(scope ref ConstrainBoolean noiseSuppression) { 189 Serialize_Object_VarArgCall!void(this.handle, "noiseSuppression", "SumType!(bool,Handle)", tuple(libwasm.sumtype.match!(((bool v) => 0),((ref noiseSuppression.Types[1] v) => 1))(noiseSuppression),tuple(libwasm.sumtype.match!(((bool v) => v),((ref noiseSuppression.Types[1] v) => bool.init))(noiseSuppression),libwasm.sumtype.match!(((bool v) => Handle.init),((ref noiseSuppression.Types[1] v) => cast(Handle)v.handle))(noiseSuppression)))); 190 } 191 auto noiseSuppression()() { 192 return Object_Getter__Handle(this.handle, "noiseSuppression"); 193 } 194 void autoGainControl()(scope ref ConstrainBoolean autoGainControl) { 195 Serialize_Object_VarArgCall!void(this.handle, "autoGainControl", "SumType!(bool,Handle)", tuple(libwasm.sumtype.match!(((bool v) => 0),((ref autoGainControl.Types[1] v) => 1))(autoGainControl),tuple(libwasm.sumtype.match!(((bool v) => v),((ref autoGainControl.Types[1] v) => bool.init))(autoGainControl),libwasm.sumtype.match!(((bool v) => Handle.init),((ref autoGainControl.Types[1] v) => cast(Handle)v.handle))(autoGainControl)))); 196 } 197 auto autoGainControl()() { 198 return Object_Getter__Handle(this.handle, "autoGainControl"); 199 } 200 void channelCount()(scope ref ConstrainLong channelCount) { 201 Serialize_Object_VarArgCall!void(this.handle, "channelCount", "SumType!(int,Handle)", tuple(libwasm.sumtype.match!(((int v) => 0),((ref channelCount.Types[1] v) => 1))(channelCount),tuple(libwasm.sumtype.match!(((int v) => v),((ref channelCount.Types[1] v) => int.init))(channelCount),libwasm.sumtype.match!(((int v) => Handle.init),((ref channelCount.Types[1] v) => cast(Handle)v.handle))(channelCount)))); 202 } 203 auto channelCount()() { 204 return Object_Getter__Handle(this.handle, "channelCount"); 205 } 206 } 207 struct MediaTrackConstraints { 208 nothrow: 209 libwasm.bindings.MediaStreamTrack.MediaTrackConstraintSet _parent; 210 alias _parent this; 211 this(Handle h) { 212 _parent = .MediaTrackConstraintSet(h); 213 } 214 static auto create() { 215 return MediaTrackConstraints(libwasm_add__object()); 216 } 217 void advanced()(scope ref Sequence!(MediaTrackConstraintSet) advanced) { 218 Object_Call_Handle__void(this._parent, "advanced", advanced.handle); 219 } 220 auto advanced()() { 221 return Sequence!(MediaTrackConstraintSet)(Object_Getter__Handle(this._parent, "advanced")); 222 } 223 } 224 enum VideoFacingModeEnum { 225 user, 226 environment, 227 left, 228 right 229 } 230 231