summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/webrtc-encoded-transform/RTCPeerConnection-worker-transform.js
blob: 36e3949e4d584019a0d921858cc75ee7f6bd25c1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
onmessage = async (event) => {
  const readableStream = event.data.readableStream;
  const writableStream = event.data.writableStream;
  const insertError = event.data.insertError;

  try {
    await readableStream.pipeThrough(new TransformStream({
      transform: (chunk, controller) => {
        if (insertError) {
          controller.enqueue("This is not a valid frame");
        } else {
          controller.enqueue(chunk);
        }
      }
    })).pipeTo(writableStream);

    postMessage({success:true});
  } catch(e) {
    postMessage({success:false, error: e});
  }

}