EncodedVideoChunk.webidl (1226B)
1 /* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ 2 /* This Source Code Form is subject to the terms of the Mozilla Public 3 * License, v. 2.0. If a copy of the MPL was not distributed with this file, 4 * You can obtain one at http://mozilla.org/MPL/2.0/. 5 * 6 * The origin of this IDL file is 7 * https://w3c.github.io/webcodecs/#encodedvideochunk 8 */ 9 10 // [Serializable] is implemented without adding attribute here. 11 [Exposed=(Window,DedicatedWorker), Func="nsRFPService::ExposeWebCodecsAPI"] 12 interface EncodedVideoChunk { 13 [Throws] 14 constructor(EncodedVideoChunkInit init); 15 readonly attribute EncodedVideoChunkType type; 16 readonly attribute long long timestamp; // microseconds 17 readonly attribute unsigned long long? duration; // microseconds 18 readonly attribute unsigned long byteLength; 19 20 [Throws] 21 undefined copyTo(AllowSharedBufferSource destination); 22 }; 23 24 dictionary EncodedVideoChunkInit { 25 required EncodedVideoChunkType type; 26 required [EnforceRange] long long timestamp; // microseconds 27 [EnforceRange] unsigned long long duration; // microseconds 28 required AllowSharedBufferSource data; 29 }; 30 31 enum EncodedVideoChunkType { 32 "key", 33 "delta", 34 };