Currently, once you create a MediaElementAudioSourceNode all audio from the media element is sent to this node. But what if I'm done with this routing? Currently there's no way to break this connection. Waiting for GC to collect the media node and undoing the routing is a terrible way because you're not in control of when that happens.
There should be a way to break this connection, perhaps by adding a new detach (name TBD) method or allowing the user to set the mediaElement attribute to null. (I prefer a new method.)
The same issue applies to a MediaStreamAudioSourceNode.
Using HTMLMediaElement.captureStream(), feeding that to a MediaStreamAudioSourceNode, and setting HTMLMediaElement.muted to true replicates MediaElementAudioSourceNode, while being more flexible: disconnecting/reconnecting the HTMLMediaElement is possible.
In light of this, I'm closing this issue.