Uso geral
Como usar vídeo na Corvex?
- Lojista envia no Editor (campo
video→ Enviar ou Biblioteca). - No tema, use
"type": "video"noschema.json. - Na section React, classifique o valor e renderize com snippet
CorvexVideo— ver Padrões.
Quando usar vídeo em vez de imagem?
Onde o vídeo fica armazenado?
Schema e editor
Como funciona o campo video?
Salva string: UUID da biblioteca ou URL. O Editor abre VideoPickerModal com abas Biblioteca, Enviar e URL.
Posso usar type: "url" para MP4?
Sim, funciona. Para experiência completa (biblioteca + upload), prefira type: "video".
O lojista vê o UUID no inspector?
Se a busca do vídeo devolver miniatura, o campo mostra a imagem. O texto é o nome do arquivo ou, se o nome ainda não chegou, o UUID. Na vitrine, não escreva o UUID para o visitante.Renderização
Posso usar o UUID como src do <video>?
Não. UUID não é URL de playback. Classifique com classifyVideoValue() e resolva para HLS ou use poster.
E se o vídeo ainda estiver processando?
Mostreposter (image setting). Nunca deixe o hero vazio.
YouTube e Vimeo?
Detecte com regex e renderize<iframe>. Ver CorvexVideo.
Funciona em blocks?
Sim —settings do block contém o valor do video definido no schema do block.
Upload e backend
Quais formatos o editor aceita?
MP4, M4V, MOV e WebM. O seletor de arquivo aceitavideo/mp4, video/webm e video/quicktime. Acima de 200 MB o editor recusa o envio.
O processamento demora?
O envio consulta o status a cada 3 segundos, até 40 vezes. Se ainda não estiverready, o aviso do editor fala em 1–5 min em segundo plano. Na vitrine, use poster enquanto status não for ready.
Performance
Como otimizar uma section com vídeo?
- Poster primeiro
aspect-ratiofixo- Um vídeo tocando em listas
preload="none"em grids- Play no clique (Reels/cards)
Carrossel com vários vídeos (Reels / marquee)
Se o Network mostra centenas deseg_*.mp4 pendentes:
- Não recrie Hls.js quando
shouldPlayou visibilidade mudam — separe osuseEffect. - Em marquee com autoplay, desligue
playWhenVisible. - Use um snippet
CorvexVideocomuseCorvexVideoPlayback— não fetch por block.
Por que funciona no editor e não na loja publicada?
corvex syncatualiza o código do tema. A vitrine usa a revisão de Publicar no editor.- Se a resposta de playback não trouxer URL, o SDK deriva o HLS do thumbnail. Não leia só
manifest.
Como evitar CLS?
Reserve proporção comaspect-ratio ou width/height no container.
Autoplay
Como usar autoplay corretamente?
- Só muted + playsInline + loop
- Com poster
- Preferir hero above-the-fold
- Respeitar
prefers-reduced-motion
❌ Autoplay em cada card de uma grade
Acessibilidade
Preciso de legendas?
Se o vídeo comunica informação essencial, ofereçatextarea para transcrição ou link.

