diff --git a/MediaRecorder.bs b/MediaRecorder.bs
index c837f2de..228b252a 100644
--- a/MediaRecorder.bs
+++ b/MediaRecorder.bs
@@ -208,8 +208,8 @@ interface MediaRecorder : EventTarget {
runs the following steps:
- Set {{state}} to {{inactive}}.
- - Fire an error event named {{SecurityError}} at
- target.
+ - Fire an error event named error with a
+ {{SecurityError}} at target.
- Fire a blob event named
dataavailable at target with blob.
- Fire an event named stop at target.
@@ -222,8 +222,8 @@ interface MediaRecorder : EventTarget {
following steps:
- Set {{state}} to {{inactive}}.
- - Fire an error event named {{UnknownError}} at
- target.
+ - Fire an error event named error with an
+ {{UnknownError}} at target.
- Fire a blob event named
dataavailable at target with blob.
- Fire an event named stop at target.
@@ -286,7 +286,7 @@ interface MediaRecorder : EventTarget {
✘ |
✔ |
The minimum number of milliseconds of data
- to return in a single Blob. |
+ to return in a single {{Blob}}.
@@ -302,7 +302,7 @@ interface MediaRecorder : EventTarget {
task, using the DOM manipulation task source, that runs the following steps:
- Set {{state}} to {{inactive}} and stop gathering data.
- - Let blob be the Blob of collected data so far and
+
- Let blob be the {{Blob}} of collected data so far and
let target be the MediaRecorder context object, then
fire a blob event named
dataavailable at target with blob.
@@ -369,7 +369,7 @@ interface MediaRecorder : EventTarget {
(Note that blob will be empty if no data has been gathered
yet.)
- - Create a new Blob and gather subsequent data into it.
+ - Create a new {{Blob}} and gather subsequent data into it.
- return
undefined.
@@ -569,19 +569,30 @@ dictionary BlobEventInit {
# Error handling # {#error-handling}
## General principles ## {#error-handling-principles}
-This section is non-normative.
-
-The UA will throw a {{DOMException}} when the error can be detected at the time
-that the call is made. In all other cases the UA will fire an event named
-{{MediaRecorderErrorEvent}}. If recording has been started and not yet stopped
-when the error occurs, let blob be the {{Blob}} of collected data so
-far; after raising the error, the UA will fire a
-dataavailable event with blob; immediately after the UA will then
-fire an event named stop.
-The UA may set platform-specific limits, such as those for the minimum and
-maximum {{Blob}} size that it will support, or the number of
-{{MediaStreamTrack}}s it will record at once.
-It will signal a fatal error if these limits are exceeded.
+
+If at any moment the UA finds an error condition, the UA MUST queue a task,
+using the DOM manipulation task source, that runs the following steps:
+
+ - Set {{state}} to {{inactive}} and stop gathering data.
+
+ - Let blob be the {{Blob}} of collected data so far and
+ let target be the MediaRecorder context object
+
+ - Fire a blob event named
+ dataavailable at target with blob.
+
+ - Fire an event named stop at target
+
+ - Fire an error event named error with an {{UnknownError}} at
+ target.
+
+
+
+ The UA MAY set platform-specific limits, e.g. for the minimum and maximum
+ {{Blob}} size that it will support, or the number of {{MediaStreamTrack}}s it
+ will record at once. It will signal a fatal error if these limits are
+ exceeded.
+
## MediaRecorderErrorEvent ## {#errorevent-section}
diff --git a/MediaRecorder.html b/MediaRecorder.html
index f93d3c02..fa6af742 100644
--- a/MediaRecorder.html
+++ b/MediaRecorder.html
@@ -1183,7 +1183,7 @@
background-attachment: fixed;
}
-
+