Skip to content

Video Player

With the Tutorial AI multilingual video player, you have access to translations and captions for every language your video has been translated into. Viewers can switch languages directly inside the player, or you can pin a specific default language via URL parameter — so a single embed code ships localized content to every audience.

Tutorial AI multilingual player with language selector dropdown
  1. Create translations of your video using 1-Click Translation
  2. Copy the embed code — a single snippet that includes all language versions
  3. Paste anywhere — your website, help center, LMS, wiki, or any tool that accepts embeds
  4. Viewers choose their language from the selector in the player controls

The voiceover, captions, and video timing switch instantly when a viewer selects a different language. New translations added later to the source video automatically become selectable in every existing embed — no need to update the snippet on your pages.

Drop this snippet anywhere:

<iframe src="https://embed.videoscripter.ai/video/{video_id}" title="Video Title" loading="lazy" referrerpolicy="strict-origin-when-cross-origin" allow="fullscreen" allowfullscreen style="width: 100%; aspect-ratio: 3840/2160; border: 0;"></iframe>

Replace {video_id} with the ID from your published video’s embed code.

Append ?lang=<code> to play a specific language by default:

<iframe src="https://embed.videoscripter.ai/video/{video_id}?lang=de" title="Video Title" loading="lazy" allow="fullscreen" allowfullscreen style="width: 100%; aspect-ratio: 3840/2160; border: 0;"></iframe>
  • Use a 2-letter ISO 639-1 code (de, es, fr) or a longer locale code (en-US, pt-BR, zh-Hans) — both are accepted.
  • Matching is case-insensitivede, DE, de-de, and DE-DE are equivalent.
  • If the requested language isn’t published for this video, the player falls back through the priority order below.

See Supported Languages for the full list of codes Tutorial AI supports.

When the parameter is missing, the player picks a language from the viewer’s browser:

<iframe src="https://embed.videoscripter.ai/video/{video_id}" title="Video Title" loading="lazy" allow="fullscreen" allowfullscreen style="width: 100%; aspect-ratio: 3840/2160; border: 0;"></iframe>

This is the recommended default for embeds shipped to international audiences — every viewer lands on their own language without changes per market.

The player picks one translation from the list of published translations. Drafts and unpublished languages are invisible to the player. Priority order — first hit wins:

  1. ?lang= URL param — short or long code (de or de-DE), case-insensitive exact match. If that language is published, use it.
  2. Browser-preferred language(s) — read from navigator.languages. First an exact match (e.g. en-GBen-GB if published); if not found, fall back to the base language (e.g. en-GBen).
  3. The original — the translation flagged isOriginal for this video, if it has been published.
  4. English — if the original isn’t published, the player falls back to English.

The same priority order applies to the share page (the dedicated webpage created by Publish). Appending ?lang=de to a share-page URL behaves the same way as appending it to an embed URL.

Every translated version is automatically grouped with the source in a Virtual Translation Folder on the Videos dashboard. The player draws from that folder — adding a new language translation later, it automatically becomes selectable in any existing embed.

The multilingual player works in:

  • Help centers and knowledge bases (Zendesk, Freshdesk, Intercom)
  • Learning management systems (any LMS that supports embeds)
  • Websites and landing pages
  • Internal wikis (Confluence, Notion)
  • CMS platforms (WordPress, Webflow, HubSpot)