# iCouldPlay VTT voice annotations: separate speaker tags from visible names

Language: en
Canonical: [iCouldPlay VTT voice annotations: separate speaker tags from visible names](<https://allluckly.cn/en/guides/icouldplay-webvtt-voice-annotation-visible-name/>)
中文：[中文 HTML](<https://allluckly.cn/guides/icouldplay-webvtt-voice-annotation-visible-name/>)
English: [English HTML](<https://allluckly.cn/en/guides/icouldplay-webvtt-voice-annotation-visible-name/>)
Published: 2026-11-08T00:00:00+08:00
Modified: 2026-11-08T09:34:15+08:00
Author: Bison

Compare voice annotations and plain-text speaker prefixes for two fictional speakers without assuming automatic speech or visible-name rendering.

English translation of the [Chinese original](<https://allluckly.cn/guides/icouldplay-webvtt-voice-annotation-visible-name/>), translated on 2026-11-08. Original publication dates, attribution, code and version notes are retained.

A VTT speaker annotation need not display the name or generate that person’s voice. Use two original prompts and fictional names to distinguish source roles before observing iCouldPlay playback. Edit in an external plain-text tool and select captions through visible controls, without assuming speech synthesis, recognition or automatic speaker colours.

## Define the speakers and prompts

Use a self-made clip at least twelve seconds long, perhaps just red and blue cards without dialogue. Assign fictional Lin to Move the red card and Bo to Keep the blue card in external notes. These are practice prompts, not dialogue translations, and can be checked on silent footage. Preserve originals and use distinct filenames without real names/private conversations. Establish attribution before judging its display.

## Create a minimal voice-annotated file

Save this original sample as UTF-8 plain-text VTT, preserving brackets, spaces and closing tags. Lin and Bo annotate voices; timing lines still define intervals and cannot be replaced by names. Omit Markdown fences and additional style blocks to keep the comparison small.

```
WEBVTT

00:01.000 --> 00:04.000
<v Lin>Move the red card.</v>

00:06.000 --> 00:09.000
<v Bo>Keep the blue card.</v>
```

## Separate annotation from payload expectations

Under current [W3C WebVTT](<https://www.w3.org/TR/webvtt1/>), a voice span’s annotation names the voice and its internal text is payload. This differs from a cue identifier and does not require every player to prepend the name. Create annotation, payload and observed-screen columns, leaving the last pending. Styling semantics do not establish an app editing interface or automatic effects.

## Transcribe the actual display

Select the file and play from before one through beyond ten seconds. Record payload, names, raw tags or absence separately. A missing name is not automatically faulty because it is not a plain-text prefix. For raw tags, inspect syntax/support first. Silence is not a failure: no reading aloud is requested. If loading fails, preserve that outcome and check a known minimal VTT rather than report expected output as observed.

## Save an explicit-name control

Make a separately named copy with plain payloads Lin: Move the red card. and Bo: Keep the blue card., removing voice tags but keeping times. Replay it from the same position. Names are now explicit payload text rather than dependent on annotation rendering, subject to actual observation. Keep size, media and timing fixed. Similar-looking output does not make these source structures identical.

## Check whether attribution is understandable

At normal viewing size without consulting answers, check attribution to Lin and Bo rather than colour alone. Do not assume a later cue continues the previous speaker across a gap; keep each prefix with its payload. Colour alone may be unclear or theme-dependent. This assesses the self-made text, not recognition of real voices or universal audience comprehension.

## Inspect syntax and selection mistakes

For broken tags or misplaced names, inspect each source line for full-width brackets, missing spaces or rich-text formatting. Reopen the saved file before selecting the right copy; do not rename video to refresh captions. Identical outputs may mean unchanged selection or payload-only parsing, not equivalent files. Record the result and correct one error per preserved copy.

## Recheck selection and origin on reopening

Reopen the same video and identify annotation versus prefix copy before replaying both cues. Use loaded file and payload evidence when list labels are ambiguous. Restore production captions and archive experiments separately without a universal persistence promise. Record lost sidecar-path conditions as such, not vanished source annotations, and do not delete other production captions to simplify selection.

## Finish the source/display mapping

Keep both files, the three-column map, version and unsupported/untested cases. State source roles separately from actual rendering. The specification explains syntax without guaranteeing every WebVTT feature in every engine. No voice model, speaker recognition or exhaustive device test was used. Attribution should be traceable, with renewed checks after engine/media changes instead of a universal rendering rule.

## Related tutorials and sources

[Sound-information captions](<https://allluckly.cn/en/guides/icouldplay-non-dialogue-caption-cues/>), [VTT literal characters](<https://allluckly.cn/en/guides/icouldplay-webvtt-literal-character-escapes/>).

Checked on November 8, 2026 against the [official iCouldPlay App Store listing](<https://apps.apple.com/cn/app/id6755653178>) and [Apple public lookup](<https://itunes.apple.com/lookup?id=6755653178&country=cn>): version 1.1.1, requiring iOS / iPadOS 15.0 or later. The public 1.1.1 release notes list Kodi, OpenList / AList and S3-compatible storage, with improvements to source switching and captions after seeking. The tasks use this public scope and existing playback capabilities. Check controls in your installed version. Self-made samples, manual records and external file preparation are workflows, not newly promised automatic features. No physical-device or private-server test is claimed.

