# Video.js v10 — HTML API
> API reference for the player factory, store controllers, features, translation tools, and utilities. Bundled with `@videojs/html` v10.0.0-rc.3. Links are relative paths to files in this directory.
## Player
API reference for creating a player and reaching it and its container from your own code.
- [createPlayer](./html-create-player.md): Factory function that creates a typed player element and controller for HTML custom elements
- [PlayerController](./player-controller.md): Reactive controller for accessing player store state in HTML custom elements
## Store
API reference for reading and subscribing to player state: selectors and the store controllers.
- [createSelector](./create-selector.md): Create a type-safe selector for a store slice's state
- [StoreController](./store-controller.md): Reactive controller for subscribing to store state in HTML custom elements
- [SnapshotController](./snapshot-controller.md): Reactive controller for subscribing to a State container in HTML custom elements
- [SubscriptionController](./subscription-controller.md): Reactive controller that resolves a store and manages a derived subscription
## Features
API reference for the feature modules passed to createPlayer, which provide player capabilities and state.
- [Buffer](./feature-buffer.md): Buffered and seekable time range state for the player store
- [Controls](./feature-controls.md): User activity and controls visibility state for the player store
- [Error](./feature-error.md): Media error state and actions for the player store
- [Fullscreen](./feature-fullscreen.md): Fullscreen state and actions for the player store
- [Live](./feature-live.md): Live edge state for the player store
- [Metadata](./feature-metadata.md): Resolved title and poster values for the player store
- [Orientation lock](./feature-orientation-lock.md): Screen orientation locking while fullscreen is active
- [Picture-in-picture](./feature-pip.md): Picture-in-picture state and actions for the player store
- [Playback](./feature-playback.md): Play/pause state and actions for the player store
- [Playback rate](./feature-playback-rate.md): Playback speed state and actions for the player store
- [Quality](./feature-quality.md): Video rendition state and actions for the player store
- [Audio track](./feature-audio-track.md): Audio track state and actions for the player store
- [Remote Playback](./feature-remote-playback.md): Remote playback state and actions for the player store
- [Source](./feature-source.md): Media source state and actions for the player store
- [Stream type](./feature-stream-type.md): Stream delivery type (live / on-demand) state for the player store
- [Text tracks](./feature-text-tracks.md): Subtitles, captions, and chapter track state for the player store
- [Time](./feature-time.md): Playback position and duration state for the player store
- [Volume](./feature-volume.md): Volume level and mute state for the player store
## i18n
API reference for translating the player: the i18n elements, controller, and the phrase registry.
- [createI18n](./create-i18n.md): Factory that creates framework i18n helpers with custom loading options
- [media-i18n](./media-i18n.md): HTML custom element that resolves locale and supplies translations to descendants
- [media-text](./media-text.md): HTML custom element that renders a translated string by semantic key
- [Translation phrases](./translation-phrases.md): Semantic i18n keys, their English defaults, and the player UI that uses them
- [registerI18n](./register-i18n.md): Register or merge translation strings for a BCP 47 locale tag in the global i18n registry
- [getI18nTranslations](./get-i18n-translations.md): Read the merged translation map for a locale using BCP 47 parent-chain fallback
- [hasRegisteredLocale](./has-registered-locale.md): Check whether an exact locale tag exists in the global i18n registry
- [onI18nRegistryChange](./on-i18n-registry-change.md): Subscribe to global i18n registry mutations
- [createTranslator](./create-translator.md): Build a typed translator from a resolved translation map
- [I18nController](./i18n-controller.md): Reactive controller for consuming translator and locale values from an HTML i18n context
## Utils
Lower-level building blocks for custom components: the keyboard shortcut controller.
- [AriaKeyShortcutsController](./aria-key-shortcuts-controller.md): Reactive controller that exposes registered hotkey shortcut metadata
## Error codes
Reference for codes thrown when Video.js 8 APIs are used with the Video.js 10 package.
- [Error Codes](./error-codes.md): Error codes emitted by the video.js package and how to resolve them
- [VJS8_LEGACY_INIT](./vjs8-legacy-init.md): Legacy Video.js 8 player initialization error
- [VJS8_LEGACY_PLUGIN](./vjs8-legacy-plugin.md): Legacy Video.js 8 plugin registration error
- [VJS8_LEGACY_COMPONENT](./vjs8-legacy-component.md): Legacy Video.js 8 component registration error
- [VJS8_LEGACY_GET_PLAYER](./vjs8-legacy-get-player.md): Legacy Video.js 8 player lookup error
- [VJS8_LEGACY_OPTIONS](./vjs8-legacy-options.md): Legacy Video.js 8 global options error