> ## Documentation Index
> Fetch the complete documentation index at: https://docs.skillfactory.com.br/llms.txt
> Use this file to discover all available pages before exploring further.

# Streaming de Vídeo

> Plataforma de vídeos integrada com Vimeo e YouTube para aulas em alta qualidade

## Sistema de vídeos

Assista aulas em alta qualidade com player integrado e rastreamento automático de progresso. A plataforma se conecta ao Vimeo e YouTube via OAuth para gerenciar seus vídeos diretamente no painel administrativo.

## Provedores suportados

<CardGroup cols={2}>
  <Card title="Vimeo" icon="vimeo">
    Qualidade profissional com privacidade avançada. Ideal para conteúdo premium com controle de acesso.
  </Card>

  <Card title="YouTube" icon="youtube">
    Maior plataforma de vídeos do mundo. Ideal para conteúdo gratuito ou de grande alcance.
  </Card>
</CardGroup>

## Player de vídeo

O player utiliza iframe nativo do provedor (Vimeo ou YouTube), garantindo compatibilidade total com os controles originais de cada plataforma.

**Recursos disponíveis via provedor:**

* Controles de reprodução (play, pause, seek)
* Ajuste de velocidade
* Seleção de qualidade (até 4K)
* Modo tela cheia
* Picture-in-Picture
* Legendas e transcrições (quando disponíveis no provedor)

<Tabs>
  <Tab title="Vimeo">
    O player do Vimeo é exibido diretamente na plataforma via iframe.

    ```
    https://player.vimeo.com/video/{videoId}?autoplay=1
    ```

    **Vantagens:**

    * Sem anúncios
    * Privacidade avançada (restrição por domínio)
    * Qualidade profissional
    * Organização por pastas/projetos
  </Tab>

  <Tab title="YouTube">
    O player do YouTube é exibido diretamente na plataforma via iframe.

    ```
    https://www.youtube.com/embed/{videoId}?autoplay=1&rel=0
    ```

    **Vantagens:**

    * Gratuito e sem limites de armazenamento
    * Legendas automáticas
    * Adaptive streaming nativo
    * Ampla compatibilidade

    <Info>
      O parâmetro `rel=0` impede que vídeos não relacionados apareçam ao final da reprodução.
    </Info>
  </Tab>
</Tabs>

## Integração via OAuth

Professores e administradores conectam suas contas do Vimeo ou YouTube para buscar e selecionar vídeos diretamente na plataforma, sem precisar copiar links manualmente.

### Conectando o Vimeo

<Steps>
  <Step title="Acesse Integrações">
    Admin → Integrações → Vimeo
  </Step>

  <Step title="Autorize o acesso">
    Clique em "Conectar Vimeo" e autorize o acesso via OAuth2.
  </Step>

  <Step title="Selecione vídeos">
    Ao criar ou editar uma aula, seus vídeos e pastas do Vimeo aparecerão no seletor.
  </Step>
</Steps>

**Recursos da integração Vimeo:**

* Navegação por pastas e subpastas
* Busca com filtro por nome
* Visualização de thumbnails e duração
* Integração compartilhada com restrição por pastas (para equipes)

### Conectando o YouTube

<Steps>
  <Step title="Acesse Integrações">
    Admin → Integrações → YouTube
  </Step>

  <Step title="Autorize o acesso">
    Clique em "Conectar YouTube" e autorize o acesso via Google OAuth2.
  </Step>

  <Step title="Selecione vídeos">
    Ao criar ou editar uma aula, seus vídeos do YouTube aparecerão no seletor.
  </Step>
</Steps>

**Recursos da integração YouTube:**

* Lista automática de vídeos do canal
* Busca por nome
* Exibição de thumbnails e duração
* Renovação automática de token

<Warning>
  Os tokens OAuth expiram periodicamente. A plataforma renova automaticamente usando o refresh token, mas se a integração parar de funcionar, reconecte a conta nas configurações.
</Warning>

## Adicionando vídeos às aulas

Existem duas formas de adicionar vídeos a uma aula:

### Seletor de vídeos (Vimeo/YouTube)

Ao criar ou editar uma aula, o professor acessa o seletor de vídeos integrado:

1. **Escolha o provedor** - Selecione entre Vimeo ou YouTube (se ambos estiverem conectados)
2. **Navegue ou busque** - Use a barra de busca ou navegue pelas pastas (Vimeo)
3. **Selecione o vídeo** - Clique no vídeo desejado para vinculá-lo à aula
4. **Confirme** - O vídeo é automaticamente configurado no player da aula

### Upload direto

Você também pode fazer upload de vídeos diretamente para o Vimeo sem sair da plataforma:

<Steps>
  <Step title="Clique em Upload">
    No editor da aula, use o botão de upload de vídeo.
  </Step>

  <Step title="Selecione o arquivo">
    Escolha o vídeo do seu computador. Formatos suportados: MP4, MOV, AVI, entre outros.
  </Step>

  <Step title="Aguarde o processamento">
    O vídeo é enviado diretamente para o Vimeo. Uma barra de progresso mostra o andamento.
  </Step>

  <Step title="Vídeo vinculado automaticamente">
    Após o upload, o vídeo é automaticamente vinculado à aula.
  </Step>
</Steps>

<Info>
  O upload direto requer que a integração com o Vimeo esteja conectada. O vídeo é armazenado na sua conta do Vimeo.
</Info>

<Info>
  No Vimeo, você pode navegar por pastas e subpastas para organizar melhor seus vídeos. Cada vídeo mostra thumbnail, nome e duração.
</Info>

## Rastreamento de progresso

A plataforma rastreia automaticamente o progresso de cada estudante em cada aula:

* **Percentual de progresso** - De 0% a 100%
* **Tempo assistido** - Total de segundos assistidos
* **Última posição** - Posição de reprodução para retomar de onde parou
* **Contagem de visualizações** - Quantas vezes o estudante assistiu a aula
* **Conclusão automática** - A aula é marcada como concluída com base no progresso

### Fluxo de conclusão

Quando uma aula é marcada como concluída, o sistema verifica automaticamente:

1. Se todas as aulas do módulo foram concluídas → módulo marcado como concluído
2. Se todos os módulos do curso foram concluídos → curso marcado como concluído
3. Se o curso está concluído e tem certificado → certificado gerado automaticamente

## Limites de visualização

Administradores podem configurar um limite máximo de visualizações por aula para proteger o conteúdo.

### Como funciona

* Cada aula pode ter um campo `max_views` definido pelo professor/admin
* Se `max_views` for nulo, a aula tem visualizações ilimitadas
* Cada vez que o estudante acessa a aula, o contador incrementa
* Quando o limite é atingido, o estudante vê uma tela informativa

### Tipos de aula isentos

Nem todos os tipos de aula estão sujeitos a limites de visualização:

| Tipo          | Limite de visualização             |
| ------------- | ---------------------------------- |
| Vídeo         | Sujeito ao `max_views` configurado |
| Quiz/Simulado | Sempre ilimitado                   |
| Aula ao vivo  | Sempre ilimitado                   |

### Visualizações extras

Se um estudante atingir o limite, o professor ou administrador pode conceder visualizações extras:

<Steps>
  <Step title="Acesse a gestão da aula">
    Admin → Cursos → Aula → Limites de visualização
  </Step>

  <Step title="Localize o estudante">
    Veja a lista de estudantes e suas contagens de visualização
  </Step>

  <Step title="Conceda visualizações extras">
    Defina quantas visualizações adicionais o estudante receberá. As visualizações extras são acumulativas.
  </Step>
</Steps>

<Note>
  Professores e administradores não estão sujeitos a limites de visualização. O sistema verifica o role do usuário antes de aplicar qualquer restrição.
</Note>

## Integrações compartilhadas

Para equipes com múltiplos professores, o administrador pode configurar uma integração compartilhada com restrição por pastas:

* **Conta única** - Uma única conta Vimeo/YouTube conectada
* **Restrição por pastas** - Cada professor acessa apenas pastas designadas
* **Controle centralizado** - O administrador gerencia quais pastas estão acessíveis

## Dicas para professores

<AccordionGroup>
  <Accordion icon="video" title="Organização de vídeos">
    * Crie pastas no Vimeo por curso ou módulo
    * Use nomes descritivos nos vídeos
    * Mantenha thumbnails atualizados
    * Remova vídeos não utilizados periodicamente
  </Accordion>

  <Accordion icon="shield" title="Privacidade no Vimeo">
    * Configure restrição por domínio para seus vídeos
    * Use a opção "Hide from Vimeo" para vídeos exclusivos
    * Desative download se quiser proteger o conteúdo
  </Accordion>

  <Accordion icon="gauge" title="Performance">
    * Vídeos mais curtos (10-15 min) têm melhor taxa de conclusão
    * Divida conteúdo longo em múltiplas aulas
    * Use thumbnails que representem o conteúdo da aula
  </Accordion>
</AccordionGroup>

## Próximos passos

<CardGroup cols={2}>
  <Card title="Aulas ao vivo" icon="tower-broadcast" href="/pt-br/features/live-classes">
    Transmissões em tempo real com Google Meet e YouTube Live
  </Card>

  <Card title="Proteção anti-compartilhamento" icon="shield" href="/pt-br/features/anti-sharing">
    Sistema de segurança que protege os acessos
  </Card>
</CardGroup>
