Parâmetros do player incorporado do YouTube

Visão geral

Este documento explica como incorporar um player do YouTube em seu aplicativo e ainda define os parâmetros disponíveis nele.

Anexando parâmetros no URL do IFrame, você personaliza a experiência de reprodução em seu aplicativo. Por exemplo, é possível reproduzir vídeos de modo automático com o parâmetro autoplay ou de forma repetida com o parâmetro loop. Você também pode ativar a API JavaScript para o player com o parâmetro enablejsapi.

No momento, estão definidos nesta página todos os parâmetros aceitos em qualquer player incorporado do YouTube. A definição de cada parâmetro identifica os players que o aceitam.

Nota: É necessário que os players incorporados tenham uma Janela de visualização de pelo menos 200 px por 200 px. Se o player mostra controles, ele tem que ser grande o suficiente para exibir completamente os controles sem encolher a Janela visualização abaixo do tamanho mínimo. Recomendamos que players de 16:9 tenham pelo menos 480 pixels de largura e 270 pixels de altura.

Como incorporar um player do YouTube

Você pode usar qualquer método a seguir para incorporar um player do YouTube em seu aplicativo e especificar seus parâmetros. As instruções abaixo demonstram como incorporar um player que carregue um vídeo único. A seção a seguir explica como configurar seu player para carregar outros tipos de conteúdo, como playlists e resultados de pesquisas.

Incorporações do IFrame com tags <iframe>

Defina em seu aplicativo uma tag do <iframe> em que o URL src especifique o conteúdo que o player carregará, além de todos os outros parâmetros do player que deseje definir. Os parâmetros height e width da tag do <iframe> especificam as dimensões do player.

Ao criar o elemento <iframe> sem usar o IFrame Player API, você pode anexar os parâmetros do player diretamente no final do URL, cujo formato é:

http://www.youtube.com/embed/VIDEO_ID

A tag <iframe> abaixo carrega um player de 640 x 360 px que reproduz o vídeo M7lc1UVf-VE do YouTube. Já que o URL define o parâmetro autoplay como 1, o vídeo é reproduzido automaticamente assim que o player é carregado.

<iframe id="ytplayer" type="text/html" width="640" height="360"
  src="?url=http%3A%2F%2Fwww.youtube.com%2Fembed%2FM7lc1UVf-VE%3Fautoplay%3D1%26amp%3Borigin%3Dhttp%3A%2F%2Fexample.com"
  frameborder="0"/>

Incorporações do IFrame usando IFrame Player API

Siga as instruções da IFrame Player API para inserir um player de vídeo em sua página da Web ou em seu aplicativo após o carregamento do código de JavaScript da API do player. O segundo parâmetro no construtor do player de vídeo é um objeto que especifica as opções do player. Dentro desse objeto, a propriedade playerVars identifica parâmetros do player.

Os códigos HTML e JavaScript, abaixo, mostram um exemplo simples que insere um player do YouTube no elemento da página que tem um valor de id de ytplayer. A função onYouTubePlayerAPIReady() especificada aqui é chamada automaticamente quando o código da IFrame Player API é carregado. Este código não define parâmetros do player nem outros manipuladores 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>

Como selecionar conteúdo para reproduzir

É possível configurar seu player incorporado para carregar um vídeo, vídeos carregados pelo usuário ou resultados de pesquisa de determinada consulta.

A lista que segue explica essas opções:

  • Carregar um vídeo

    Para uma incorporação do IFrame, o ID do vídeo do YouTube para o vídeo que você deseja carregar é especificado no URL src do IFrame.

    http://www.youtube.com/embed/VIDEO_ID

    Se estiver usando a API de dados (v3) do YouTube, você pode construir esses URLs de forma programática com a recuperação dos IDs do vídeo de resultados de pesquisa, recursos de item de playlist, recursos de vídeo ou outros recursos. Depois de conseguir um ID do vídeo, substitua o texto VIDEO_ID nos URLs acima por esse valor para criar o URL do player.

  • Carregar uma playlist

    Configure o parâmetro listType do player como playlist. Além disso, defina o parâmetro list do player como o ID da playlist do YouTube que deseja carregar.

    http://www.youtube.com/embed?listType=playlist&list=PLAYLIST_ID

    É necessário adicionar as letras PL no início do ID da playlist, conforme mostrado no exemplo a seguir:

    http://www.youtube.com/embed?listType=playlist&list=PLC77007E23FF423C6

    Se estiver usando a API de dados (v3) do YouTube, você pode construir esses URLs de forma programática com a recuperação dos IDs da playlist de resultados de pesquisa, recursos do canal ou recursos de atividade. Depois de recuperar um ID da playlist, substitua o texto PLAYLIST_ID no URL acima por esse valor.

  • Carregar vídeos enviados por um usuário

    Defina o parâmetro listType do player como user_uploads. Defina também o parâmetro list do player como o nome de usuário do YouTube cujos vídeos enviados você deseja carregar.

    http://www.youtube.com/embed?listType=user_uploads&list=USERNAME
  • Carregar resultados de pesquisa referentes a uma consulta especificada

    Defina o parâmetro listType do player como search. Defina também o parâmetro list do player como o termo de consulta que você quer que seja carregado nos resultados da pesquisa do player.

    http://www.youtube.com/embed?listType=search&list=QUERY

Parâmetros

Todos os parâmetros a seguir são opcionais.

Parameters

autoplay

Valores: 0 ou 1. O valor padrão é 0. Define se o vídeo inicial será ou não reproduzido automaticamente quando o player é carregado.

cc_load_policy

Valores: 1. O padrão é baseado na preferência do usuário. Definir esse parâmetro como 1 fará com que as legendas ocultas sejam mostradas por padrão, mesmo que o usuário tenha desativado as legendas.

color

Este parâmetro especifica a cor que será usada na barra de progresso do vídeo, no player, para destacar a quantidade de vídeos que o usuário já visualizou. Os valores válidos dos parâmetros são red e white e, por padrão, o player usará a cor vermelha na barra de progresso do vídeo. Acesse o blog de API do YouTube para mais informações sobre opções de cores.

Nota: configurar o parâmetro color como white desativará a opção modestbranding.

controls

Valores: 0, 1 ou 2. O padrão é 1. Este parâmetro indica se os controles do player do vídeo serão exibidos. Para incorporações do IFrame carregando um Flash player, o parâmetro também define quando os controles serão exibidos no player e quando o player carregará:

  • controls=0 – Os controles não são exibidos no player. Para incorporações do IFrame, o Flash Player carrega imediatamente.
  • controls=1 – Os controles são exibidos no player. Para incorporações do IFrame, os controles são exibidos imediatamente e o Flash Player é carregado imediatamente.
  • controls=2 – Os controles são exibidos no player. Para incorporações do IFrame, os controles são exibidos e o Flash Player é carregado após o usuário iniciar a reprodução do vídeo.

Nota: os valores de parâmetro 1 e 2 oferecem uma experiência do usuário idêntica, porém, controls=2 traz uma melhoria de desempenho com relação a controls=1 para incorporações do IFrame. No momento, os dois valores ainda geram algumas diferenças visuais no player, como tamanho da fonte do título do vídeo. No entanto, quando a diferença entre os dois valores se torna praticamente invisível para o usuário, o valor padrão do parâmetro pode variar entre 1 e 2.

disablekb

Valores: 0 ou 1. O padrão é 0. Definir como 1 desabilita os controles de teclado do player. Os controles do teclado são os seguintes:

  • Barra de espaço: Reproduzir/Pausar
  • Seta para a esquerda: Voltar 10% no vídeo atual
  • Seta para a direita: Avançar 10% no vídeo atual
  • Seta para cima: Aumentar o volume
  • Seta para baixo: Diminuir o volume

enablejsapi

Valores: 0 ou 1. O valor padrão é 0. Configurar este parâmetro como 1 ativará a API Javascript. Para mais informações sobre a API Javascript e como utilizá-la, consulte a documentação da API JavaScript.

end

Valores: um número inteiro positivo. Este parâmetro especifica o tempo, medido em segundos, desde o início do vídeo, quando o player deve parar de reproduzir o vídeo. O tempo é medido do início do vídeo, não do valor do parâmetro start do player nem do parâmetro startSeconds, usado nas funções da API do Player do YouTube para carregar ou consultar um vídeo.

fs

Valores: 0 ou 1. O valor padrão é 1, que ativa a exibição do botão de tela cheia. Definir este parâmetro como 0 impede que o botão de tela inteira apareça.

hl

Define o idioma da interface do player. O valor do parâmetro é um código de idioma de duas letras ISO 639-1, embora outros códigos de entrada de idioma como tags de idioma IETF (BCP 47) também possam ser tratados adequadamente.

O idioma da interface é utilizado para dicas de ferramenta no player e também afeta a faixa de legenda padrão. É possível que um idioma da faixa de legenda diferente seja selecionado pelo YouTube para um determinado usuário com base nas preferências individuais de idioma do usuário e na disponibilidade das faixas de legenda.

iv_load_policy

Valores: 1 ou 3. O valor padrão é 1. Definir como 1 fará com que as anotações do vídeo sejam exibidas por padrão, enquanto definir como 3 fará com que elas não apareçam.

list

O conteúdo que será carregado no player é identificado no parâmetro list combinado com o parâmetro listType.

  • Se o valor do parâmetro listType for search, o valor do parâmetro list especifica a consulta de pesquisa.
  • Se o valor do parâmetro listType for user_uploads, o valor do parâmetro list identifica o canal do YouTube, cujos vídeos enviados serão carregados.
  • Se o valor do parâmetro listType for playlist, o valor do parâmetro list especifica o ID da playlist do YouTube. No valor do parâmetro, é necessário adicionar as letras PL no início do ID da playlist, conforme mostrado no exemplo a seguir:
    http://www.youtube.com/embed?listType=playlist&list=PLC77007E23FF423C6

Nota: se você especificar valores para os parâmetros list e listType, não será necessário que um ID do vídeo seja especificado no URL das incorporações do IFrame.

listType

O conteúdo que será carregado no player é identificado pelo parâmetro listType combinado com o parâmetro list. Os valores dos parâmetros válidos são playlist, search e user_uploads.

Se você especificar valores para os parâmetros list e listType, não será necessário que um ID do vídeo seja especificado no URL das incorporações do IFrame.

loop

Valores: 0 ou 1. O valor padrão é 0. No caso de um único player de vídeo, uma configuração igual a 1 fará com que o player reproduza o vídeo inicial repetidamente. No caso de um player de playlist (ou player personalizado), o player reproduzirá a playlist inteira e, em seguida, começará novamente a partir do primeiro vídeo.

Nota: este parâmetro tem suporte limitado no player AS3 e nas incorporações do IFrame, que pode carregar tanto player AS3 quanto HTML5. No momento, o parâmetro loop funciona somente no player AS3 quando usado com o parâmetro playlist. Para reproduzir um vídeo repetidamente, defina o valor do parâmetro loop como 1 e o valor do parâmetro playlist como o mesmo ID do vídeo já especificado no URL da API do player:
http://www.youtube.com/v/VIDEO_ID?version=3&loop=1&playlist=VIDEO_ID

modestbranding

Este parâmetro permite usar um player do YouTube que não exiba o logotipo do YouTube. Defina o valor do parâmetro como 1 para impedir que o logotipo do YouTube seja exibido na barra de controle. Um pequeno rótulo de texto do YouTube ainda aparece no canto superior direito de um vídeo pausado quando o ponteiro do mouse do usuário passa sobre o player.

origin

Este parâmetro fornece uma medida de segurança adicional para o IFrame API, sendo aceito apenas em incorporações do IFrame. Usar a API do IFrame significa que você definiu o valor do parâmetro enablejsapi como 1. Sempre especifique seu domínio como o valor do parâmetro origin.

playlist

Valor é uma lista de IDs de vídeos separados por vírgulas a ser reproduzida. Se você especificar um valor, o primeiro vídeo a ser reproduzido será o VIDEO_ID especificado no caminho do URL, e os vídeos especificados no parâmetro playlist serão reproduzidos em seguida.

playsinline

Este parâmetro controla se os vídeos são reproduzidos in-line ou em tela cheia em um player HTML5 no iOS. Os valores válidos são:

  • 0: este valor faz com que a reprodução seja feita em tela cheia. Atualmente é o valor padrão, ainda que o padrão esteja sujeito a alterações.
  • 1: este valor define a reprodução in-line para UIWebViews criada com o parâmetro allowsInlineMediaPlayback como TRUE.

rel

Valores: 0 ou 1. O valor padrão é 1. Este parâmetro indica se o player deve exibir vídeos relacionados quando a reprodução do vídeo inicial acaba.

showinfo

Valores: 0 ou 1. O valor padrão do parâmetro é 1. Se você definir o valor do parâmetro como 0, o player não exibirá informações como título do vídeo e remetente antes de o vídeo começar a ser reproduzido.

Se o player estiver carregando uma playlist e você definir explicitamente o valor como 1, ao carregar, o player também exibirá imagens em miniatura dos vídeos na lista. Essa funcionalidade é aceita apenas no player AS3, o único capaz de carregar uma playlist.

start

Valores: um número inteiro positivo. Este parâmetro faz com que o player comece a reproduzir o vídeo em um número determinado de segundos a partir do início do vídeo. Assim como na função seekTo, o player buscará o keyframe mais próximo ao tempo que você especificar. Isso quer dizer que, algumas vezes, o marcador da reprodução pode chegar até um pouco antes do tempo solicitado, não mais do que dois segundos, em geral.

Histórico de revisões

October 14, 2014

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 to 1 causes inline playback only for UIWebViews created with the allowsInlineMediaPlayback property set to TRUE.

January 28, 2014

  • The playsinline parameter controls whether videos play inline or fullscreen in an HTML5 player on iOS. Setting the value to 1 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 to 2, 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:

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 of 2 and to explain that, for AS3 players, the parameter value determines the time when the Flash player actually loads. If the controls parameter is set to 0 or 1, the Flash player loads immediately. If the parameter value is 2, 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, and rel 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 to 1, 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 the start player parameter or the startSeconds 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 and listType 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 and rel parameters have been updated to more clearly explain the default parameter values for the AS3 player.

  • The border, color1, egm, hd, and showsearch 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 and color 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, and showsearch.

    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, the loop parameter only works in the AS3 player when used in conjunction with the playlist parameter. To loop a single video, set the loop parameter to 1 and set the playlist 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 and playlist 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.