EncodedAudioChunk.webidl (1250B)
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/#encodedaudiochunk 8 */ 9 10 // [Serializable] is implemented without adding attribute here. 11 [Exposed=(Window,DedicatedWorker), Func="nsRFPService::ExposeWebCodecsAPI"] 12 interface EncodedAudioChunk { 13 [Throws] 14 constructor(EncodedAudioChunkInit init); 15 readonly attribute EncodedAudioChunkType 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 EncodedAudioChunkInit { 25 required EncodedAudioChunkType type; 26 required [EnforceRange] long long timestamp; // microseconds 27 [EnforceRange] unsigned long long duration; // microseconds 28 required AllowSharedBufferSource data; 29 sequence<ArrayBuffer> transfer = []; 30 }; 31 32 enum EncodedAudioChunkType { 33 "key", 34 "delta" 35 };