# Image Choice (H5P.MultiMediaChoice)

A multiple-choice question whose answers are pictures.

- Each item of `options` holds its picture as sub-content under `media`, `{ "library": "H5P.Image", "params": { "file": { "path": "…" }, "alt": "…" } }`, and `correct`. The alternative text is what a screen reader reads as the answer: write it as the answer.
- `behaviour.questionType` `"single"` or `"multi"`, as for Multiple Choice; `behaviour.aspectRatio` fits pictures of different shapes.

## Example

```json
{
  "type": "H5P.MultiMediaChoice",
  "params": {
    "question": "Which picture shows a river delta?",
    "options": [
      { "media": { "library": "H5P.Image", "params": { "file": { "path": "delta.png" }, "alt": "A delta" } }, "correct": true },
      { "media": { "library": "H5P.Image", "params": { "file": { "path": "source.png" }, "alt": "A spring" } }, "correct": false }
    ]
  }
}
```

<!-- Generated by `h5p-author schema --markdown` from the pinned pack. Do not edit by hand. -->

## Fields of H5P.MultiMediaChoice 0.3

The example is `type` and `params` alone, and `params` holds the fields below. A source also names its own `title`, `language`, `license` and `authors`, all four required: the build refuses a source that leaves out any of them. The author's name and the licence are the user's: ask for what they have not given. For a name they skip, write the one you know them by, or "Unknown"; for a licence they skip, `U`.

- `media` group — Media
  - `type` sub-content: H5P.Image | H5P.Video | H5P.Audio — Type: Optional media to display above the question.
  - `disableImageZooming` boolean = false; only when type is "H5P.Image 1.1" — Disable image zooming
- `question` html: strong em sub sup h2 h3 pre code, required — Question
- `options` list 2–20 of, required — Available options
  - `media` sub-content: H5P.Image | H5P.Video | H5P.Audio, required — Media: Media to display as a choice.
  - `poster` image file, required; only when media is "H5P.Audio 1.5" — Poster image
  - `correct` boolean — Correct
- `overallFeedback` list 1+ of — Overall Feedback: Click the "Add range" button to add as many ranges as you need. Example: 0-20% Bad score, 21-91% Average Score, 91-100% Great Score!
  - `from` whole number 0–100 = 0 — Score Range
  - `to` whole number 0–100 = 100
  - `feedback` text — Feedback for defined score range
- `behaviour` group — Behavioural settings
  - `enableRetry` boolean = true — Enable "Retry" button
  - `enableSolutionsButton` boolean = true — Enable "Show Solution" button
  - `confirmCheckDialog` boolean = false — Show confirmation dialog on "Check"
  - `confirmRetryDialog` boolean = false — Show confirmation dialog on "Retry"
  - `singlePoint` boolean = false — Give one point for the whole question
  - `showSolutionsRequiresInput` boolean = true — Require answer before the solution can be viewed
  - `questionType` one of "auto" | "multi" | "single" = "auto" — Question Type: Select the look and behaviour of the question.
  - `aspectRatio` one of "auto" | "16to9" | "4to3" | "3to2" | "1to1" = "auto" — Aspect ratio: Select the aspect ratio of the alternatives
  - `maxAlternativesPerRow` one of "1" | "2" | "3" | "4" = "4" — Maximum alternatives per row: Set the maximum number of alternatives per row to ensure the questions look alright.
  - `passPercentage` whole number 0–100 = 100 — Pass percentage: This setting often won't have any effect. It is the percentage of the total score required for getting 1 point when one point for the entire task is enabled, and for getting result…

23 interface texts are left out: they come from the libraries' translations. `h5p-author schema H5P.MultiMediaChoice --all` lists them, for a source to set one.

<!-- End of the generated section. -->
