The phrasing "run the media element's error handling code to signal a MediaError.MEDIA_ERR_DECODE error" is used in a few places.
The intention must be to treat this as a decode error in any other kind of resource, but this doesn't point out the section in HTML that actually does this.
Suggestion: Define that the equivalent of endOfStream("decode") be run.
This will also set readyState to "ended", which seems desirable to cause any further call to append() to fail. Possibly, the call where the decode error is caught should also throw, but a caller could tell that an error occurred by checking readyState, so it's not strictly necessary.