Skip to content

Commit

Permalink
expand docs to clarify common mimetypes
Browse files Browse the repository at this point in the history
  • Loading branch information
jadeddelta committed Feb 13, 2025
1 parent d258a29 commit 54a9014
Show file tree
Hide file tree
Showing 3 changed files with 6 additions and 3 deletions.
2 changes: 1 addition & 1 deletion docs/plugins/initialize-camera.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ button_label | string | 'Use this camera.' | The label for the select button.
include_audio | bool | false | Set to `true` to include an audio track in the recordings.
width | int | null | Request a specific width for the recording. This is not a guarantee that this width will be used, as it depends on the capabilities of the participant's device. Learn more about `MediaRecorder` constraints [here](https://developer.mozilla.org/en-US/docs/Web/API/Media_Streams_API/Constraints#requesting_a_specific_value_for_a_setting).
height | int | null | Request a specific height for the recording. This is not a guarantee that this height will be used, as it depends on the capabilities of the participant's device. Learn more about `MediaRecorder` constraints [here](https://developer.mozilla.org/en-US/docs/Web/API/Media_Streams_API/Constraints#requesting_a_specific_value_for_a_setting).
mime_type | string | null | Set this to use a specific [MIME type](https://developer.mozilla.org/en-US/docs/Web/API/MediaRecorder/mimeType) for the recording. Set the entire type, e.g., `'video/mp4; codecs="avc1.424028, mp4a.40.2"'`.
mime_type | string | null | Set this to use a specific [MIME type](https://developer.mozilla.org/en-US/docs/Web/API/MediaRecorder/mimeType) for the recording. Set the entire type, e.g., `'video/mp4; codecs="avc1.424028, mp4a.40.2"'`. When provided with the default value of `null`, jsPsych will search for a compatible container/codec combination, with [common types listed here](../reference/jspsych-pluginAPI.md#initializecamerarecorder). If none are found, jsPsych will default to `'video/webm'` as the MIME type.


## Data Generated
Expand Down
5 changes: 4 additions & 1 deletion docs/reference/jspsych-pluginAPI.md
Original file line number Diff line number Diff line change
Expand Up @@ -507,7 +507,10 @@ None.

#### Description

Generates a `MediaRecorder` object from provided `MediaStream` and stores this for access via [`getCameraRecorder()`](#getcamerarecorder). By default, `mimeType` is set to `"video/webm"`.
Generates a `MediaRecorder` object from provided `MediaStream` and stores this for access via [`getCameraRecorder()`](#getcamerarecorder). By default, `mimeType` is set to the first compatible container/codec combination found in a list of common types, or `"video/webm"` if no supported combination is found.

The common container/codec combinations that jsPsych checks for are `"video/webm;codecs=vp9,opus"`, `"video/webm;codecs=vp8,opus"`, `"video/mp4;codecs=avc1.42E01E,mp4a.40.2"`, `"video/mp4;codecs=h264,aac"`, and `"video/mp4;codecs=hevc,aac"`.

#### Example

```javascript
Expand Down
2 changes: 1 addition & 1 deletion packages/jspsych/src/modules/plugin-api/MediaAPI.ts
Original file line number Diff line number Diff line change
Expand Up @@ -303,7 +303,7 @@ export class MediaAPI {
"video/webm;codecs=vp9,opus",
"video/webm;codecs=vp8,opus",
// general
'video/mp4; codecs="avc1.42E01E, mp4a.40.2"',
"video/mp4;codecs=avc1.42E01E,mp4a.40.2",
// safari
"video/mp4;codecs=h264,aac",
"video/mp4;codecs=hevc,aac",
Expand Down

0 comments on commit 54a9014

Please sign in to comment.