files/en-us/web/media/index.md
Over the years, the web's ability to present, create, and manage audio, video, and other media has matured. There are now a large number of APIs, as well as HTML elements, DOM interfaces, and other features that make it possible to work with media in exciting and immersive ways. This article lists guides and references for various features you may use when incorporating media into your projects.
The Media guides are resources that help you understand, transform, and optimize media on the web, including audio, video, and images using modern web technologies.
The following HTML elements are used for including media on a page.
<audio> element is used to play audio. These can be used invisibly as a destination for more complex media, or with visible controls for user-controlled playback of audio files. Accessible from JavaScript as {{domxref("HTMLAudioElement")}} objects.<video> element is used to play video content. It can be used to present video files, or as a destination for streamed video content. <video> can also be used as a way to link media APIs with other HTML and DOM technologies, including {{HTMLElement("canvas")}} (for frame grabbing and manipulation), for example. It is accessible from JavaScript as {{domxref("HTMLVideoElement")}} objects.<track> element can be placed within an {{HTMLElement("audio")}} or {{HTMLElement("video")}} element to provide a reference to a WebVTT format subtitle or caption track to be used when playing the media. Accessible from JavaScript as {{domxref("HTMLTrackElement")}} objects.<source> element is used within an {{HTMLElement("audio")}} or {{HTMLElement("video")}} element to specify source media to present. Multiple sources can be used to provide the media in different formats, sizes, or resolutions. Accessible from JavaScript as {{domxref("HTMLSourceElement")}} objects.<audio> element, a media stream, or to disk.Related topics which may be of interest, since they can be used in tandem with media APIs in interesting ways.
alt attribute on {{HTMLElement("img")}} elements to captions to tagging media for screen readers.<canvas> element as the destination for video playback or camera capture so that you can capture and manipulate video frames.