w3c / webcodecs

WebCodecs is a flexible web API for encoding and decoding audio and video.
https://w3c.github.io/webcodecs/
Other
975 stars 137 forks source link

VideoDecoder memory leak #593

Closed shaozj closed 1 year ago

shaozj commented 1 year ago

I created a github page to show the problem. It's forked form w3c/webcodecs. Directly visit the page is too slow because we need download videos in the page. It's better to download the code (https://github.com/shaozj/webcodecs), goto samples folder, then do node server.js. And do the steps below.

What steps will reproduce the problem? (1) open a video-decoder-memory-leak page, open chrome task manager (2) init 20 videodecoder and decode some frames then close all videoframes and decoders (3) repeat step2 multiple times (4) check the memory usage of the page (5) refresh page and check the memory usage of the page

What is the expected result? page memory released

What happens instead? page memory usage keep increase Close all videoframes and decoders can not release all memory. Even refresh the page can not release all memory.

Code is available here https://github.com/shaozj/webcodecs/tree/main/samples/video-decoder-memory-leak

chromuim bug: https://bugs.chromium.org/p/chromium/issues/detail?id=1376851

padenot commented 1 year ago

This issue tracker is for issues on the Web Codecs specification.

This sounds like an implementation bug, and you've already filed a bug on the browser vendor's issue tracker, there's not much we can do on a spec level here.

@dalecurtis, if you want to follow up on a possible Chromium issue.