Descripción general
En este documento se explica cómo insertar un reproductor de YouTube en una aplicación y se definen los parámetros disponibles en el reproductor incorporado de YouTube.
Anexar parámetros a la URL IFrame permite personalizar la experiencia de reproducción de una aplicación. Por ejemplo, es posible reproducir videos automáticamente con el parámetro autoplay
o hacer que un video se reproduzca repetidamente con el parámetro loop
. También puedes habilitar la API de JavaScript para el reproductor con el parámetro enablejsapi
.
En esta página se definen todos los parámetros admitidos en cualquier reproductor incorporado de YouTube. En la definición de cada parámetro se identifican los reproductores compatibles con el parámetro correspondiente.
Nota: Los reproductores insertados deben tener una ventana gráfica de al menos 200px por 200px. Si el reproductor muestra controles, debe tener el tamaño suficiente para mostrar los controles por complete, sin reducir la ventana gráfica por debajo del tamaño mínimo. Recomendamos que los reproductores de 16:9 tengan al menos 480 píxeles de ancho y 270 píxeles de alto.
Cómo insertar un reproductor de YouTube
Puedes usar cualquiera de los siguientes métodos para incorporar un reproductor de YouTube en tu aplicación e indicar los parámetros del reproductor. Ten en cuenta que en las instrucciones a continuación se demuestra cómo incorporar un reproductor que carga solamente un video. En la siguiente sección se explica cómo configurar un reproductor para cargar otros tipos de contenido, como listas de reproducción y resultados de búsqueda.
Incorporaciones IFrame con etiquetas <iframe>
Define una etiqueta <iframe>
en tu aplicación, en la cual la URL src
especifica el contenido que carga el reproductor y otros parámetros del reproductor que desees establecer. Los parámetros height
y width
de la etiqueta <iframe>
especifican la altura y el ancho del reproductor respectivamente.
Si optas por crear el elemento <iframe>
tú mismo en vez de utilizar la API del reproductor de IFrame, puedes adjuntar los parámetros del reproductor directamente al final de la URL. El formato de la URL es el siguiente:
http://www.youtube.com/embed/VIDEO_ID
La etiqueta <iframe>
que se muestra a continuación cargaría un reproductor de 640 x 360 px para reproducir el video de YouTube M7lc1UVf-VE
. Debido a que la URL establece el parámetro autoplay
en 1
, el video se reproduciría automáticamente luego de cargar el reproductor.
<iframe id="ytplayer" type="text/html" width="640" height="360" src="http://www.youtube.com/embed/M7lc1UVf-VE?autoplay=1&origin=http://example.com" frameborder="0"/>
Incorporaciones IFrame con la API del reproductor de IFrame
Sigue las instrucciones de la API del reproductor de IFrame para incorporar un reproductor de video en tu página web o aplicación luego de que finalice la carga del código JavaScript de la API del reproductor. El segundo parámetro del constructor del reproductor de video es un objeto que especifica las opciones del reproductor. Dentro de ese objeto, la propiedad playerVars
identifica los parámetros del reproductor.
El siguiente código HTML y JavaScript muestra un ejemplo simple donde se incorpora un reproductor de YouTube en el elemento de página cuyo valor id
es ytplayer
. La función onYouTubePlayerAPIReady()
que se especifica aquí se invoca automáticamente cuando se carga el código de la API del reproductor de IFrame. Este código no define ningún parámetro del reproductor ni tampoco otros controladores de eventos.
<div id="ytplayer"></div> <script> // Load the IFrame Player API code asynchronously. var tag = document.createElement('script'); tag.src = "https://www.youtube.com/player_api"; var firstScriptTag = document.getElementsByTagName('script')[0]; firstScriptTag.parentNode.insertBefore(tag, firstScriptTag); // Replace the 'ytplayer' element with an <iframe> and // YouTube player after the API code downloads. var player; function onYouTubePlayerAPIReady() { player = new YT.Player('ytplayer', { height: '360', width: '640', videoId: 'M7lc1UVf-VE' }); } </script>
Cómo seleccionar contenido para reproducir
Puedes configurar el reproductor que incorporaste para que reproduzca un video, una lista de reproducción, los videos subidos de un usuario o los resultados de búsqueda de una consulta en particular.
Estas opciones se explican en la siguiente lista:
-
Cómo cargar un video
Para las incorporaciones con IFrame, se especifica la identificación del video que quieres cargar en la URL
src
de IFrame.http://www.youtube.com/embed/VIDEO_ID
Si usas la API de datos de YouTube (v3), puedes construir estas URL de manera programática al recuperar los ID de video desde los resultados de la búsqueda, recursos de elementos de la lista de reproducción, recursos de video u otros recursos. Después de obtener un ID de video, reemplaza el texto
VIDEO_ID
de las URL anteriores con ese valor para crear la URL del reproductor. -
Cómo cargar una lista de reproducción
Establece el parámetro
listType
del reproductor enplaylist
. Establece también el parámetrolist
del reproductor en el ID de la lista de reproducción de YouTube que deseas cargar.http://www.youtube.com/embed?listType=playlist&list=PLAYLIST_ID
Ten en cuenta que es necesario anteponer las letras
PL
al ID de la lista de reproducción como se muestra en el siguiente ejemplo:http://www.youtube.com/embed?listType=playlist&list=PLC77007E23FF423C6
Si usas la API de datos de YouTube (v3), puedes construir estas URL de manera programática al recuperar los ID de la lista de reproducción desde los resultados de la búsqueda, recursos de canal o recursos de actividad. Después de obtener un ID de la lista de reproducción, reemplaza el texto
PLAYLIST_ID
de la URL anterior con ese valor. -
Cómo cargar los videos subidos de un usuario
Establece el parámetro del reproductor
listType
enuser_uploads
. Además, establece el parámetro del reproductorlist
en el nombre de usuario de YouTube que subió esos videos que quieres cargar.http://www.youtube.com/embed?listType=user_uploads&list=USERNAME
-
Cómo cargar los resultados de búsqueda de una consulta especificada
Establece el parámetro del reproductor
listType
ensearch
. Establece también el parámetro del reproductorlist
en el término de consulta cuyos resultados de búsqueda deseas que se carguen en el reproductor.http://www.youtube.com/embed?listType=search&list=QUERY
Parámetros
Todos los parámetros que aparecen a continuación son opcionales.
Parameters | |
---|---|
|
Valores: 0 o 1 . El valor predeterminado es 0 . Define si el video inicial se reproduce automáticamente o no cuando se carga el reproductor.
|
|
Valores: 1 . El valor predeterminado se basa en las preferencias del usuario. Si se establece en 1 , los subtítulos opcionales se muestran de forma predeterminada, aun si el usuario desactivó los subtítulos.
|
|
Este parámetro especifica el color que se utiliza en la barra de progreso del reproductor para destacar la cantidad de video ya vista por el usuario. Los valores válidos de este parámetro son red y white . De forma predeterminada, la barra de progreso del video utiliza el color rojo. Consulta el blog de la API de YouTube para obtener más información sobre las opciones de colores.Nota: Configurar el parámetro color en white desactiva la opción modestbranding .
|
|
Valores: 0 , 1 o 2 . El valor predeterminado es 1 . Este parámetro indica si se muestran o no los controles del reproductor de video. Para incorporaciones IFrame que cargan un reproductor Flash, también definen cuándo se muestran los controles en el reproductor, así como cuándo cargarán este último:
1 y 2 del parámetro proporcionen una experiencia de usuario idéntica, pero controls=2 proporciona una mejora del rendimiento sobre controls=1 para incorporaciones IFrame. Actualmente, los dos valores aún producen algunas diferencias visuales en el reproductor, como el tamaño de la fuente del título del video. Sin embargo, cuando la diferencia entre los dos valores es completamente evidente para el usuario, el valor predeterminado del parámetro puede cambiar de 1 a 2 .
|
|
Valores: 0 o 1 . El valor predeterminado es 0 . Establecer el valor en 1 desactiva los controles de teclado del reproductor. Los controles del teclado son los siguientes:
|
|
Valores: 0 o 1 . El valor predeterminado es 0 . Establecer este parámetro en 1 activa la API de JavaScript. Para obtener más información sobre la API de JavaScript y cómo usarla, consulta la documentación de la API de JavaScript.
|
|
Valores: un número entero positivo. Este parámetro especifica el tiempo, medido en segundos desde el inicio del video, en que el reproductor debe detener la reproducción del video. Ten en cuenta que el tiempo se mide desde el comienzo del video y no considerando el parámetro start del reproductor o el parámetro startSeconds , que se utiliza en las funciones de la API del reproductor de YouTube para cargar un video o ponerlo en cola.
|
|
Valores: 0 o 1 . El valor predeterminado es 1 , que hace que aparezca el botón de pantalla completa. Establecer este parámetro en 0 evita que se muestre el botón de pantalla completa. |
|
Configura el idioma de la interfaz del reproductor. El valor del parámetro es un código de idioma ISO 639-1 de dos letras, aunque también se pueden manejar correctamente otros códigos de entrada de idioma, como las etiquetas de idioma IETF (BCP 47). El idioma de la interfaz se usa para los tooltips en el reproductor y también afecta la pista de subtítulos predeterminada. Ten presente que YouTube podría seleccionar un idioma de pista de subtítulos diferente para un usuario en particular basándose en sus preferencias de idioma individuales y la disponibilidad de pistas de subtítulos. |
|
Valores: 1 o 3 . El valor predeterminado es 1 . El valor 1 permite que las anotaciones del video se muestren de forma predeterminada, mientras que el valor 3 permite que las anotaciones del video no se muestren de forma predeterminada.
|
|
El parámetro list , junto al parámetro listType , identifica el contenido que se cargará en el reproductor.
list y listType , no es necesario que la URL IFrame incorporada especifique un ID de video.
|
|
El parámetro listType , junto al parámetro list , identifica el contenido que se carga en el reproductor. Los valores del parámetro válidos son playlist , search y user_uploads .Si especificas los valores para los parámetros list y listType , no es necesario que la URL IFrame incorporada especifique un ID de video.
|
|
Valores: 0 o 1 . El valor predeterminado es 0 . Si solo hay un reproductor de video y se establece un valor de 1 , el reproductor reproduce el video inicial una y otra vez. En el caso de un reproductor de listas de reproducción (o reproductor personalizado), el reproductor reproduce la lista de reproducción completa y, a continuación, comienza nuevamente la reproducción del primer video.Nota: La compatibilidad de este parámetro es limitada en el reproductor AS3 y en las incorporaciones IFrame, que podrían cargar el reproductor AS3 o el reproductor HTML5. Actualmente, el parámetro loop solo funciona con el reproductor AS3 cuando se usa junto al parámetro playlist . Para reproducir en bucle un solo video, establece el valor de parámetro loop en 1 y establece el valor del parámetro playlist en el mismo ID de video que se especifica en la URL de la API del reproductor:http://www.youtube.com/v/VIDEO_ID?version=3&loop=1&playlist=VIDEO_ID |
|
Este parámetro te permite usar un reproductor de YouTube sin que se muestre un logotipo de YouTube. Establece el valor de parámetro en 1 para evitar que se muestre el logotipo de YouTube en la barra de control. Ten en cuenta que se seguirá mostrando una etiqueta pequeña de YouTube en la esquina superior derecha de un video en pausa cuando el cursor del mouse del usuario se desplace sobre el reproductor.
|
|
Este parámetro entrega una medida de seguridad adicional para la API de IFrame y es compatible solamente con las incorporaciones IFrame. Si estás usando la API de IFrame, lo que significa que configuras el valor del parámetro enablejsapi en 1 , siempre debes especificar tu dominio como el valor del parámetro origin .
|
|
El valor es una lista separada por comas de ID de videos para reproducir. Si especificas un valor, el primer video que se reproduce es aquel cuya identificación (VIDEO_ID ) está especificada en la ruta de acceso de la dirección URL. Los videos especificados en el parámetro playlist se reproducen después.
|
|
El parámetro controla si los videos se reproducen intercalados o en pantalla completa en un reproductor HTML5 en iOS. Los valores válidos son:
|
|
Valores: 0 o 1 . El valor predeterminado es 1 . Este parámetro indica si el reproductor debe mostrar videos relacionados al finalizar la reproducción del video inicial.
|
|
Valores: 0 o 1 . El valor predeterminado del parámetro es 1 . Si se establece el valor del parámetro en 0 , el reproductor no muestra información como el título del video o el usuario que lo subió antes de comenzar la reproducción.Si el reproductor está cargando una lista de reproducción y el valor del parámetro se establece explícitamente en 1 , el reproductor muestra imágenes en miniatura de los videos de la lista de reproducción cuando se carga. Ten en cuenta que esta función es compatible solo con el reproductor AS3 debido a que es el único reproductor que puede cargar una lista de reproducción.
|
|
Valores: un número entero positivo. Este parámetro permite que el reproductor inicie la reproducción del video en el número exacto de segundos proporcionados desde el comienzo del video. Ten en cuenta que, de forma similar a la función seekTo , el reproductor busca el fotograma más cercano al momento especificado. Esto significa que en algunas ocasiones la reproducción comienza justo antes del tiempo solicitado, con un margen de aproximadamente dos segundos.
|
Historial de revisión
October 14, 2014
-
The HTML5 player now supports the
cc_load_policy
,disablekb
,end
,fs
,list
, andlistType
parameters. The parameter descriptions have been updated accordingly.
July 18, 2014
-
The new
hl
parameter can be used to set the player's interface language. The interface language is used for tooltips in the player and also affects the default caption track. The selected caption track may also depend on the availability of caption tracks and user's individual language preferences.The parameter's value is an ISO 639-1 two-letter language code, though other language input codes, such as IETF language tags (BCP 47) may also be handled properly.
-
The definition of the
playsinline
parameter, which only affects HTML5 players on iOS, has been modified slightly. The definition now notes that setting the parameter value to1
causes inline playback only forUIWebViews
created with theallowsInlineMediaPlayback
property set toTRUE
.
January 28, 2014
-
The
playsinline
parameter controls whether videos play inline or fullscreen in an HTML5 player on iOS. Setting the value to1
causes inline playback. -
The Selecting content to play section has been updated to explain how to find YouTube video IDs and playlist IDs using the YouTube Data API (v3) rather than the older API version.
-
The
controls
parameter's definition has been updated to reflect the fact that the parameter value only affects the time that the Flash player actually loads in IFrame embeds. In addition, for IFrame embeds, the parameter value also determines when the controls display in the player. If you set the parameter's value to2
, then the controls display and the Flash player loads after the user initiates the video playback.
May 10, 2013
This update contains the following changes:
-
YouTube no longer identifies experimental API features and services. Instead, we now provide a list of YouTube APIs that are subject to the deprecation policy.
July 20, 2012
This update contains the following changes:
-
The definition of the
controls
parameter has been updated to reflect support for a parameter value of2
and to explain that, for AS3 players, the parameter value determines the time when the Flash player actually loads. If thecontrols
parameter is set to0
or1
, the Flash player loads immediately. If the parameter value is2
, the Flash player does not load until the video playback is initiated.
June 5, 2012
This update contains the following changes:
-
The HTML5 player now supports the
color
,modestbranding
, andrel
parameters, and the definitions for these parameters have been updated accordingly. -
The definition of the
showinfo
parameter has been updated to explain how that if the player is loading a playlist, and you explicitly set the parameter value to1
, then, upon loading, the player will also display thumbnail images for the videos in the playlist. Note that this functionality is only supported for the AS3 player since that is the only player that can load a playlist.
May 4, 2012
This update contains the following changes:
-
The
showinfo
parameter's definition has been updated to reflect the fact that the HTML5 player supports this parameter.
May 3, 2012
This update contains the following changes:
-
The new
end
parameter specifies the time, measured in seconds from the start of the video, when the player should stop playing a video. Note that the time when playback is stopped is measured from the beginning of the video and not from the value of either thestart
player parameter or thestartSeconds
parameter, which is used in YouTube Player API functions for loading or queueing a video.
March 29, 2012
This update contains the following changes:
-
The new Embedding a YouTube player section explains different ways to embed a YouTube player in your application. This section covers manual IFrame embeds, IFrame embeds that use the IFrame Player API, and AS3 and AS2 object embeds. This section incorporates information from the old Example usage section, which has been removed.
-
The new Selecting content to play section explains how to configure the player to load a video, a playlist, search results for a specified query, or uploaded videos for a specified user.
-
The new
list
andlistType
parameters let you specify the content that the player should load. You can specify a playlist, a search query, or a particular user's uploaded videos. -
The definitions of the
fs
andrel
parameters have been updated to more clearly explain the default parameter values for the AS3 player. -
The
border
,color1
,egm
,hd
, andshowsearch
parameters, which are all only supported for the deprecated AS2 Player API, have been moved to a new section named deprecated parameters only used in the AS2 Player API. -
The document no longer provides a way to filter the parameter list to only display parameters supported in either the AS3, AS2, or HTML5 player. Instead, each parameter definition has been updated to identify the players that support that parameter.
August 11, 2011
This update contains the following changes:
-
The new
theme
andcolor
parameters let you customize the appearance of the embedded player's player controls. See the YouTube API blog for more information.
June 8, 2011
This update contains the following changes:
-
The new
modestbranding
parameter lets you use a YouTube player that does not show a YouTube logo. As of this release, the parameter was only supported for the AS3 embedded player and for IFrame embeds that loaded the AS3 player. As of June 5, 2012, the HTML5 player also supported this parameter.
February 14, 2011
This update contains the following changes:
-
The documentation has been updated to note that the AS2 Player API has been deprecated. The deprecation of the AS2 Player API was actually announced on October 14, 2009.
February 3, 2011
This update contains the following changes:
-
The documentation has been updated to identify parameters supported in the HTML5 (IFrame) embedded player.
-
The document now displays all of the parameters supported in any of YouTube's embedded players (HTML5, AS3, AS2).
-
The following parameters are supported in the AS2 player but have been deprecated for the newer AS3 and HTML5 players:
border
,color1
,color2
,egm
,hd
, andshowsearch
.In addition, the
loop
parameter has limited support in the AS3 player and in IFrame embeds, which could load either an AS3 or HTML player. Currently, theloop
parameter only works in the AS3 player when used in conjunction with theplaylist
parameter. To loop a single video, set theloop
parameter to1
and set theplaylist
parameter value to the same video ID already specified in the Player API URL:http://www.youtube.com/v/VIDEO_ID?version=3&loop=1&playlist=VIDEO_ID
Similarly, the
controls
andplaylist
parameters are supported in the AS3 and HTML5 players but are not and will not be supported in the AS2 player.As noted above, IFrame embeds can load either an AS3 or HTML5 player. Though some parameters are not supported in both players, an IFrame embed that loads the AS3 player will support all parameters that work with that player and ignore all other parameters. Similarly, an IFrame embed that loads the HTML5 player will support all parameters that work with that player while ignoring all other parameters.
-
The parameter list has been updated to include the
autohide
parameter, which indicates whether the player's video controls will automatically hide after a video begins playing. -
The parameter list has been updated to include the
controls
parameter, which indicates whether the player's video controls will display at all. (Player controls do display by default.) -
The parameter list has been updated to include the
playlist
parameter, which specifies a comma-separated list of video IDs to play. -
The definition of the
fs
has been updated to note that the fullscreen option will not work if you load the YouTube player into another SWF. -
The example at the end of the document has been updated to use the embedded AS3 player instead of the embedded AS2 player. The parameters used in the example have also been updated to only include parameters that the AS3 player supports.
In addition, the instructions for constructing the URLs that contain player parameters have been updated to reflect the URL formats used by the AS3 and AS2 embedded and chromeless players as well as by the HTML5 player.