A captura de quadros permite extrair frames de vídeo conforme suas necessidades e convertê-los para um formato específico. Este tópico descreve os parâmetros configuráveis desse recurso e apresenta exemplos práticos de execução.
Visão geral
A captura de quadros extrai frames específicos de um vídeo e os salva como imagens estáticas.

Casos de uso
Snapshot: Salva um momento específico do vídeo como imagem estática para criar pôsteres.
Análise: Extrai keyframes para processamento posterior, como reconhecimento facial e detecção de objetos.
Criação de miniaturas: Gera thumbnails ou imagens de capa para vídeos.
Resumo de reprodução: Selecione diversos momentos-chave para gerar um resumo conciso ou prévia do conteúdo.
Compartilhamento e registro de capturas de tela: Captura, salve ou compartilhe um frame específico durante a visualização do vídeo.
Uso
Pré-requisitos
No OSS, crie um bucket e faça upload dos arquivos a serem processados para esse bucket.
Crie e vincule um IMM Project. O IMM Project e o bucket devem estar na mesma região. Vincule um projeto no console do OSS ou chamando uma API.
Conceda as permissões necessárias.
Captura de quadros de vídeo
Use os SDKs do OSS apenas para Java, Python ou Go para executar tarefas de captura de quadros em modo assíncrono.
Ao especificar o caminho de saída para as capturas de quadros de vídeo, não inclua extensão de arquivo como ".jpg". Caso contrário, apenas o último snapshot será salvo. Sem extensão, o sistema adiciona automaticamente um número sequencial (por exemplo, "_0_1.jpg") a cada nome de arquivo de saída. Para personalizar os números sequenciais, configure-os usando variáveis de processamento de mídia.
Java
Para usar o OSS SDK for Java, certifique-se de que a versão do SDK seja V3.17.4 ou superior.
import com.aliyun.oss.ClientBuilderConfiguration;
import com.aliyun.oss.OSS;
import com.aliyun.oss.OSSClientBuilder;
import com.aliyun.oss.common.auth.CredentialsProviderFactory;
import com.aliyun.oss.common.auth.EnvironmentVariableCredentialsProvider;
import com.aliyun.oss.common.comm.SignVersion;
import com.aliyun.oss.model.AsyncProcessObjectRequest;
import com.aliyun.oss.model.AsyncProcessObjectResult;
import com.aliyuncs.exceptions.ClientException;
import java.util.Base64;
public class Demo {
public static void main(String[] args) throws ClientException {
// Specify the endpoint of the region where your bucket is located.
String endpoint = "https://oss-cn-hangzhou.aliyuncs.com";
// Specify the region ID. Example: cn-hangzhou.
String region = "cn-hangzhou";
// Obtain access credentials from environment variables. Before running this example, make sure the OSS_ACCESS_KEY_ID and OSS_ACCESS_KEY_SECRET environment variables are set.
EnvironmentVariableCredentialsProvider credentialsProvider = CredentialsProviderFactory.newEnvironmentVariableCredentialsProvider();
// Specify the bucket name. Example: examplebucket.
String bucketName = "examplebucket";
// Specify the name of the output object. Using a filename with an extension saves only the last snapshot. See the note above.
String targetKey = "dest.png";
// Specify the name of the source video object.
String sourceKey = "src.mp4";
// Create an OSSClient instance.
// Call shutdown() when the OSSClient instance is no longer needed to release its resources.
ClientBuilderConfiguration clientBuilderConfiguration = new ClientBuilderConfiguration();
clientBuilderConfiguration.setSignatureVersion(SignVersion.V4);
OSS ossClient = OSSClientBuilder.create()
.endpoint(endpoint)
.credentialsProvider(credentialsProvider)
.clientConfiguration(clientBuilderConfiguration)
.region(region)
.build();
try {
// Build the style string for video processing and the parameters for video frame capture.
String style = String.format("video/snapshots,f_jpg,w_100,h_100,scaletype_crop,inter_10000");
// Build the asynchronous processing instruction.
String bucketEncoded = Base64.getUrlEncoder().withoutPadding().encodeToString(bucketName.getBytes());
String targetEncoded = Base64.getUrlEncoder().withoutPadding().encodeToString(targetKey.getBytes());
String process = String.format("%s|sys/saveas,b_%s,o_%s/notify,topic_QXVkaW9Db252ZXJ0", style, bucketEncoded, targetEncoded);
// Create an AsyncProcessObjectRequest object.
AsyncProcessObjectRequest request = new AsyncProcessObjectRequest(bucketName, sourceKey, process);
// Execute the asynchronous processing task.
AsyncProcessObjectResult response = ossClient.asyncProcessObject(request);
System.out.println("EventId: " + response.getEventId());
System.out.println("RequestId: " + response.getRequestId());
System.out.println("TaskId: " + response.getTaskId());
} finally {
// Shut down the OSSClient.
ossClient.shutdown();
}
}
}
Python
Para usar o OSS SDK for Python, certifique-se de que a versão do SDK seja V2.18.4 ou superior.
# -*- coding: utf-8 -*-
import base64
import oss2
from oss2.credentials import EnvironmentVariableCredentialsProvider
def main():
# Obtain the temporary access credentials from the environment variables. Before you run the sample code, make sure that the OSS_ACCESS_KEY_ID and OSS_ACCESS_KEY_SECRET environment variables are configured.
auth = oss2.ProviderAuthV4(EnvironmentVariableCredentialsProvider())
# Specify the endpoint of the region in which the bucket is located. For example, if the bucket is located in the China (Hangzhou) region, set the endpoint to https://oss-cn-hangzhou.aliyuncs.com.
endpoint = 'https://oss-cn-hangzhou.aliyuncs.com'
# Specify the ID of the Alibaba Cloud region in which the bucket is located. Example: cn-hangzhou.
region = 'cn-hangzhou'
# Specify the name of the bucket. Example: examplebucket.
bucket = oss2.Bucket(auth, endpoint, 'examplebucket', region=region)
# Specify the name of the video.
source_key = 'src.mp4'
# Specify the name of the captured frame.
target_key = 'dest.png'
# Specify frame capture parameters.
animation_style = 'video/snapshots,f_jpg,w_100,h_100,scaletype_crop,inter_10000'
# Create a processing instruction, in which the storage path, the Base64-encoded bucket name, and the captured frame names are included.
bucket_name_encoded = base64.urlsafe_b64encode('examplebucket'.encode()).decode().rstrip('=')
target_key_encoded = base64.urlsafe_b64encode(target_key.encode()).decode().rstrip('=')
process = f"{animation_style}|sys/saveas,b_{bucket_name_encoded},o_{target_key_encoded}/notify,topic_QXVkaW9Db252ZXJ0"
try:
# Run the asynchronous processing task.
result = bucket.async_process_object(source_key, process)
print(f"EventId: {result.event_id}")
print(f"RequestId: {result.request_id}")
print(f"TaskId: {result.task_id}")
except Exception as e:
print(f"Error: {e}")
if __name__ == "__main__":
main()
Go
Para usar o OSS SDK for Go, certifique-se de que a versão do SDK seja V3.0.2 ou superior.
package main
import (
"encoding/base64"
"fmt"
"os"
"github.com/aliyun/aliyun-oss-go-sdk/oss"
"log"
)
func main() {
// Obtain temporary access credentials from the environment variables. Before you run the sample code, make sure that the OSS_ACCESS_KEY_ID and OSS_ACCESS_KEY_SECRET environment variables are configured.
provider, err := oss.NewEnvironmentVariableCredentialsProvider()
if err != nil {
fmt.Println("Error:", err)
os.Exit(-1)
}
// Create an OSSClient instance.
// Specify the endpoint of the region in which the bucket is located. For example, if the bucket is located in the China (Hangzhou) region, set the endpoint to https://oss-cn-hangzhou.aliyuncs.com. Specify your actual endpoint.
// Specify the ID of the Alibaba Cloud region in which the bucket is located. Example: cn-hangzhou.
client, err := oss.New("https://oss-cn-hangzhou.aliyuncs.com", "", "", oss.SetCredentialsProvider(&provider), oss.AuthVersion(oss.AuthV4), oss.Region("cn-hangzhou"))
if err != nil {
fmt.Println("Error:", err)
os.Exit(-1)
}
// Specify the name of the bucket. Example: examplebucket.
bucketName := "examplebucket"
bucket, err := client.Bucket(bucketName)
if err != nil {
fmt.Println("Error:", err)
os.Exit(-1)
}
// Specify the name of the source video.
sourceKey := "src.mp4"
// Specify the name of the captured frame.
targetKey := "dest.png"
// Specify frame capture parameters.
animationStyle := "video/snapshots,f_jpg,w_100,h_100,scaletype_crop,inter_10000"
// Create a processing instruction, in which the storage path, the Base64-encoded bucket name, and the captured frame names are included.
bucketNameEncoded := base64.URLEncoding.EncodeToString([]byte(bucketName))
targetKeyEncoded := base64.URLEncoding.EncodeToString([]byte(targetKey))
process := fmt.Sprintf("%s|sys/saveas,b_%v,o_%v/notify,topic_QXVkaW9Db252ZXJ0", animationStyle, bucketNameEncoded, targetKeyEncoded)
// Execute the asynchronous processing tasks.
result, err := bucket.AsyncProcessObject(sourceKey, process)
if err != nil {
log.Fatalf("Failed to async process object: %s", err)
}
fmt.Printf("EventId: %s\n", result.EventId)
fmt.Printf("RequestId: %s\n", result.RequestId)
fmt.Printf("TaskId: %s\n", result.TaskId)
}
Parâmetros
Ação: video/snapshots
A tabela a seguir descreve os parâmetros configuráveis na captura de quadros.
Parâmetro | Tipo | Obrigatório | Descrição |
ss |
int |
Não |
O ponto no tempo do vídeo onde a captura de quadros começa. Unidade: milissegundos. Valores válidos:
|
f | string | Sim | Formato do valor de retorno. Valores válidos:
|
|
m |
string |
Não |
Modo de captura de quadros. O padrão é
|
|
thr |
int |
Não |
Limiar para captura de quadros no modo dhash. Um valor maior resulta em menos quadros capturados. O valor deve ser um inteiro de 0 a 100. O padrão é 0. Nota
Este parâmetro é válido apenas quando O modo dhash é sensível a este limiar. Recomendamos definir este parâmetro com um valor não superior a 25 e ajustá-lo conforme seu caso de uso específico. |
num |
int |
Não |
Quantidade de quadros a capturar. Um valor igual a 0 (padrão) significa que não há limite de quadros. O comportamento do valor padrão varia conforme o modo de captura:
Importante
A quantidade real de quadros capturados pode ser menor que o valor especificado devido à duração do vídeo e a outros parâmetros de captura. |
inter |
int |
Não |
Intervalo entre as capturas de quadros, em milissegundos. Um valor igual a 0 (padrão) captura todos os quadros do vídeo. Nota Se o valor deste parâmetro for menor que o intervalo de quadros do vídeo (inverso da taxa de quadros), os quadros serão capturados com base no intervalo de quadros do próprio vídeo. |
w | int | Não | Largura do quadro capturado. Unidade: pixel. Valores válidos: 32 a 4096. Por padrão, a largura do quadro é igual à largura do vídeo. |
h | int | Não | Altura do quadro capturado. Unidade: pixel. Valores válidos: 32 a 4096. Por padrão, a altura do quadro é igual à altura do vídeo. |
pw |
int |
Não |
Porcentagem da largura do quadro capturado em relação à largura do vídeo. Valores válidos: (0, 200]. Valor padrão: 100. Nota
Se você especificar tanto w quanto pw, o sistema ignorará pw. |
ph |
int |
Não |
Porcentagem da altura do quadro capturado em relação à altura do vídeo. Valores válidos: (0, 200]. Valor padrão: 100. Nota
Se você especificar tanto h quanto ph, o sistema ignorará ph. |
scaletype | string | Não | Modo de redimensionamento. Valores válidos:
|
Esta ação também utiliza os parâmetros sys/saveas e notify. Para mais informações, consulte salvar como e notificação de mensagem.
APIs relacionadas
As operações anteriores utilizam chamadas de API. Para personalizações avançadas, faça requisições REST API diretamente. Isso exige o cálculo manual da assinatura. Para obter informações sobre como calcular o cabeçalho Authorization, consulte Signature Version 4 (recomendado).
Antes de chamar a API, vincule um bucket ao seu projeto IMM. Para mais informações, consulte Vincular um bucket.
Capturar um quadro a cada 10s para IA
Um quadro de imagem é capturado a cada 10 segundos para treinamento ou inferência de modelos de IA. A resolução da imagem de saída é limitada a 512x512.
Informações sobre o vídeo e os quadros capturados
-
Arquivo de origem
Nome do vídeo: example.mkv
-
Notificação de mensagem
Tópico MNS: example-mns-topic
-
Configuração de saída
-
Informações sobre os quadros capturados
Formato: JPG
Intervalo para captura de quadros: 10s
Resolução de saída: 512x512
Método de dimensionamento: Redimensionar e recortar
-
Caminho de armazenamento da imagem
oss://outbucket/outobjprefix-%d.jpg
-
Exemplo
// Capture frames from the example.mkv file.
POST /example.mkv?x-oss-async-process HTTP/1.1
Host: video-demo.oss-cn-hangzhou.aliyuncs.com
Date: Fri, 28 Oct 2022 06:40:10 GMT
Authorization: OSS4-HMAC-SHA256 Credential=LTAI********************/20250417/cn-hangzhou/oss/aliyun_v4_request,Signature=a7c3554c729d71929e0b84489addee6b2e8d5cb48595adfc51868c299c0c218e
x-oss-async-process=video/snapshots,f_jpg,w_512,h_512,scaletype_crop,inter_10000|sys/saveas,b_b3V0YnVja2V0,o_b3V0b2JqcHJlZml4LXtpbmRleH0ue2F1dG9leHR9Cg/notify,topic_ZXhhbXBsZS1tbnMtdG9waWMK
Capturar 5 quadros com intervalo de 4s
Informações da captura de quadros
-
Arquivo de origem
Nome do arquivo: example.mkv
-
Notificação de mensagem
Tópico MNS: example-mns-topic
-
Configuração de saída
-
Detalhes da captura de quadros
Formato: png
Tempo inicial: 11s
Intervalo: 4s
Quantidade de quadros: 5
Resolução de saída: Metade da largura e altura do vídeo de origem
-
Caminho de armazenamento do arquivo
Arquivo png: oss://outbucket/outobjprefix-%d.png
-
Exemplo de requisição
// Capture frames from the example.mkv file.
POST /example.mkv?x-oss-async-process HTTP/1.1
Host: video-demo.oss-cn-hangzhou.aliyuncs.com
Date: Fri, 28 Oct 2022 06:40:10 GMT
Authorization: OSS4-HMAC-SHA256 Credential=LTAI********************/20250417/cn-hangzhou/oss/aliyun_v4_request,Signature=a7c3554c729d71929e0b84489addee6b2e8d5cb48595adfc51868c299c0c218e
x-oss-async-process=video/snapshots,ss_11000,f_png,pw_50,ph_50,num_5|sys/saveas,b_b3V0YnVja2V0,o_b3V0b2JqcHJlZml4LXtpbmRleH0ue2F1dG9leHR9Cg/notify,topic_ZXhhbXBsZS1tbnMtdG9waWMK
Extrair keyframes de eventos de um vídeo
Use o algoritmo dhash para analisar a similaridade de conteúdo entre os quadros do vídeo e extrair aqueles com alterações visuais significativas como keyframes de eventos, com base em um limiar especificado.
Ajuste o parâmetro de limiar (thr) para o seu caso de uso específico.
Informações da captura de quadros
-
Arquivo de origem
Nome do arquivo: example.mkv
-
Notificação de mensagem
Tópico MNS: example-mns-topic
-
Configuração de saída
-
Detalhes da captura de quadros
Modo de captura de quadros: dhash
Formato: jpg
Limiar: 15
Intervalo: 1s
Resolução de saída: Igual à do vídeo de origem
-
Caminho de armazenamento do arquivo
Arquivo jpg: oss://outbucket/outobjprefix-%d.jpg
-
Exemplo de requisição
// Capture frames from the example.mkv file.
POST /example.mkv?x-oss-async-process HTTP/1.1
Host: video-demo.oss-cn-hangzhou.aliyuncs.com
Date: Fri, 28 Oct 2022 06:40:10 GMT
Authorization: OSS4-HMAC-SHA256 Credential=LTAI********************/20250417/cn-hangzhou/oss/aliyun_v4_request,Signature=a7c3554c729d71929e0b84489addee6b2e8d5cb48595adfc51868c299c0c218e
x-oss-async-process=video/snapshots,m_dhash,f_jpg,inter_1000,thr_15|sys/saveas,b_b3V0YnVja2V0,o_b3V0b2JqcHJlZml4LXtpbmRleH0ue2F1dG9leHR9Cg/notify,topic_ZXhhbXBsZS1tbnMtdG9waWMK
Extrair 5 keyframes representativos para inferência
Use o algoritmo dhash para analisar a similaridade de conteúdo entre os quadros do vídeo e extrair os cinco quadros que apresentam as alterações visuais mais significativas.
Informações da captura de quadros
-
Arquivo de origem
Nome do arquivo: example.mkv
-
Notificação de mensagem
Tópico MNS: example-mns-topic
-
Configuração de saída
-
Detalhes da captura de quadros
Modo de captura de quadros: dhash
Formato: jpg
Quantidade de quadros: 5
Intervalo: 1s
Resolução de saída: Igual à do vídeo de origem
-
Caminho de armazenamento do arquivo
Arquivo jpg: oss://outbucket/outobjprefix-%d.jpg
-
Exemplo de requisição
// Capture frames from the example.mkv file.
POST /example.mkv?x-oss-async-process HTTP/1.1
Host: video-demo.oss-cn-hangzhou.aliyuncs.com
Date: Fri, 28 Oct 2022 06:40:10 GMT
Authorization: OSS4-HMAC-SHA256 Credential=LTAI********************/20250417/cn-hangzhou/oss/aliyun_v4_request,Signature=a7c3554c729d71929e0b84489addee6b2e8d5cb48595adfc51868c299c0c218e
x-oss-async-process=video/snapshots,m_dhash,f_jpg,inter_1000,num_5|sys/saveas,b_b3V0YnVja2V0,o_b3V0b2JqcHJlZml4LXtpbmRleH0ue2F1dG9leHR9Cg/notify,topic_ZXhhbXBsZS1tbnMtdG9waWMK
Extrair todos os quadros IDR de um vídeo
Informações da captura de quadros
-
Arquivo de origem
Nome do arquivo: example.mkv
-
Notificação de mensagem
Tópico MNS: example-mns-topic
-
Configuração de saída
-
Detalhes da captura de quadros
Modo de captura de quadros: key
Formato: jpg
Resolução de saída: Igual à do vídeo de origem
-
Caminho de armazenamento do arquivo
Arquivo jpg: oss://outbucket/outobjprefix-%d.jpg
-
Exemplo de requisição
// Capture frames from the example.mkv file.
POST /example.mkv?x-oss-async-process HTTP/1.1
Host: video-demo.oss-cn-hangzhou.aliyuncs.com
Date: Fri, 28 Oct 2022 06:40:10 GMT
Authorization: OSS4-HMAC-SHA256 Credential=LTAI********************/20250417/cn-hangzhou/oss/aliyun_v4_request,Signature=a7c3554c729d71929e0b84489addee6b2e8d5cb48595adfc51868c299c0c218e
x-oss-async-process=video/snapshots,m_key,f_jpg|sys/saveas,b_b3V0YnVja2V0,o_b3V0b2JqcHJlZml4LXtpbmRleH0ue2F1dG9leHR9Cg/notify,topic_ZXhhbXBsZS1tbnMtdG9waWMK
Capturar 10 quadros em intervalos uniformes
Informações da captura de quadros
-
Arquivo de origem
Nome do arquivo: example.mkv
-
Notificação de mensagem
Tópico MNS: example-mns-topic
-
Configuração de saída
-
Detalhes da captura de quadros
Modo de captura de quadros: avg
Formato: jpg
Quantidade de quadros: 10
Resolução de saída: Igual à do vídeo de origem
-
Caminho de armazenamento do arquivo
Arquivo jpg: oss://outbucket/outobjprefix-%d.jpg
-
Exemplo de requisição
// Capture frames from the example.mkv file.
POST /example.mkv?x-oss-async-process HTTP/1.1
Host: video-demo.oss-cn-hangzhou.aliyuncs.com
Date: Fri, 28 Oct 2022 06:40:10 GMT
Authorization: OSS4-HMAC-SHA256 Credential=LTAI********************/20250417/cn-hangzhou/oss/aliyun_v4_request,Signature=a7c3554c729d71929e0b84489addee6b2e8d5cb48595adfc51868c299c0c218e
x-oss-async-process=video/snapshots,m_avg,f_jpg,num_10|sys/saveas,b_b3V0YnVja2V0,o_b3V0b2JqcHJlZml4LXtpbmRleH0ue2F1dG9leHR9Cg/notify,topic_ZXhhbXBsZS1tbnMtdG9waWMK
Extrair uma imagem de capa de áudio
Alguns arquivos de áudio contêm capas incorporadas. Use o recurso de captura de quadros para extrair essa arte da capa.
Informações da captura de quadros
-
Arquivo de origem
Nome do arquivo: example.flac
-
Notificação de mensagem
Tópico MNS: example-mns-topic
-
Configuração de saída
-
Detalhes da captura de quadros
Formato: jpg
Resolução de saída: Igual à da capa incorporada
-
Caminho de armazenamento do arquivo
Arquivo jpg: oss://outbucket/cover.jpg
-
Exemplo de requisição
// Capture frames from the example.flac file.
POST /example.flac?x-oss-async-process HTTP/1.1
Host: video-demo.oss-cn-hangzhou.aliyuncs.com
Date: Fri, 28 Oct 2022 06:40:10 GMT
Authorization: OSS4-HMAC-SHA256 Credential=LTAI********************/20250417/cn-hangzhou/oss/aliyun_v4_request,Signature=a7c3554c729d71929e0b84489addee6b2e8d5cb48595adfc51868c299c0c218e
x-oss-async-process=video/snapshots,f_jpg|sys/saveas,b_b3V0YnVja2V0,o_Y292ZXIuanBnCg/notify,topic_ZXhhbXBsZS1tbnMtdG9waWMK
Faturamento
O uso do recurso de captura de quadros de vídeo aciona o serviço IMM e gera os seguintes itens faturáveis tanto no OSS quanto no IMM:
-
OSS: Para preços detalhados, consulte Preços do OSS
API
Item faturável
Descrição
GetObject
Requisição GET
As taxas são baseadas no número de requisições bem-sucedidas.
Taxa de tráfego de saída pela internet
Chamar a operação
GetObjectcom um endpoint público (por exemplo,oss-cn-hangzhou.aliyuncs.com) ou um endpoint de aceleração de transferência (por exemplo,oss-accelerate.aliyuncs.com) gera uma taxa de tráfego de saída pela internet. Essa taxa é baseada na quantidade de dados transferidos.Recuperação de dados Infrequent Access
Recuperar dados da classe de armazenamento Infrequent Access gera uma taxa de recuperação baseada na quantidade de dados recuperados.
Recuperação de leitura direta de arquivamento
Ler um objeto arquivado de um bucket com leitura direta de arquivamento habilitada gera uma taxa de recuperação baseada na quantidade de dados recuperados.
Transfer Acceleration
Se o Transfer Acceleration estiver ativado, acessar seu bucket via um nome de domínio de aceleração de transferência gera uma taxa de Transfer Acceleration baseada na quantidade de dados transferidos.
PutObject
Requisição PUT
As taxas são baseadas no número de requisições bem-sucedidas.
Taxa de armazenamento
A taxa de armazenamento é baseada na classe de armazenamento, tamanho e duração de armazenamento do objeto.
HeadObject
Requisição GET
As taxas são baseadas no número de requisições bem-sucedidas.
-
IMM: Para preços detalhados, consulte Itens faturáveis do IMM
ImportanteA partir das 11:00 (UTC+8) de 28 de julho de 2025, o preço do serviço de captura de quadros de vídeo do IMM será reduzido. Esta alteração aplica-se ao item faturável
VideoFraming. Para mais informações, consulte Anúncio sobre ajuste de preços do IMM.API
Item faturável
Descrição
CreateMediaConvertTask
VideoFraming
A taxa de captura de quadros de vídeo é baseada no número de quadros capturados com sucesso.
Observações de uso
A captura de quadros suporta apenas processamento assíncrono (x-oss-async-process).
A captura pode falhar ou gerar um número incorreto de quadros devido à corrupção do timestamp do vídeo ou do fluxo de código.
FAQ
-
A captura de quadros filtra telas pretas?
Não, a captura de quadros não filtra telas pretas.
-
A captura de quadros gera vídeos em miniatura?
Não, a captura de quadros não gera vídeos em miniatura. Para gerar vídeos em miniatura, use o recurso de conversão de vídeo para imagem animada. Para mais informações, consulte Conversão de vídeo para imagem animada.
-
A captura de quadros impõe limites aos formatos de vídeo?
Não. A captura de quadros suporta todos os principais formatos de vídeo.
-
No modo rápido, se o quadro solicitado pela captura estiver no primeiro segundo, o quadro realmente capturado fica próximo ao keyframe mais recente antes do primeiro segundo?
Sim.
-
O que fazer se uma imagem em escala de cinza for exibida como capa do vídeo enviado, em vez de um quadro específico?
Esse problema pode ocorrer porque a taxa de bits do vídeo é excessivamente alta. Para evitar isso, transcodifique o vídeo antecipadamente.