<?xml version="1.0" encoding="UTF-8" ?>
<class name="VideoStream" inherits="Resource" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd">
	<brief_description>
		Base resource for video streams.
	</brief_description>
	<description>
		Base resource type for all video streams. Classes that derive from [VideoStream] can all be used as resource types to play back videos in [VideoStreamPlayer].
	</description>
	<tutorials>
		<link title="Playing videos">$DOCS_URL/tutorials/animation/playing_videos.html</link>
		<link title="Runtime file loading and saving">$DOCS_URL/tutorials/io/runtime_file_loading_and_saving.html</link>
	</tutorials>
	<methods>
		<method name="_instantiate_playback" qualifiers="virtual required">
			<return type="VideoStreamPlayback" />
			<description>
				Called when the video starts playing, to initialize and return a subclass of [VideoStreamPlayback].
			</description>
		</method>
	</methods>
	<members>
		<member name="file" type="String" setter="set_file" getter="get_file" default="&quot;&quot;">
			The video file path or URI that this [VideoStream] resource handles.
			For [VideoStreamTheora], this filename should be an Ogg Theora video file with the [code].ogv[/code] extension.
		</member>
	</members>
</class>
