API de Aprimoramento de Vídeo
Envie um vídeo que já está na plataforma, ou um arquivo que você carregou, e receba uma versão aprimorada em 1080p, 2K ou 4K. A nitidez do texto na tela pode ser ligada ou desligada. Você pode aprimorar o vídeo inteiro ou um trecho de até 10 minutos.
Fontes de vídeo compatíveis
Informe uma URL de arquivo da plataforma ou o identity retornado pela API de Upload. O upload local exige um plano Starter ou superior.
Fluxo
- Envie uma tarefa de aprimoramento com o vídeo de origem e a resolução de destino
- Consulte o resultado até
statusserDONEouERROR - Quando
statusforDONE, leiaoutput_url
Endpoints
| Método | Caminho | Descrição |
|---|---|---|
POST | /api/v2/video-enhancer | Enviar uma tarefa de aprimoramento |
GET | /api/v2/video-enhancer/results/{id} | Obter o resultado da tarefa |
Todas as solicitações exigem:
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json
x-wayinvideo-api-version: v2
Enviar tarefa de aprimoramento
POST https://wayinvideo-api.wayin.ai/api/v2/video-enhancer
Corpo da solicitação
| Parâmetro | Tipo | Obrigatório | Padrão | Descrição |
|---|---|---|---|---|
video_url | string | Sim | — | URL de arquivo da plataforma ou o identity retornado pela API de Upload. |
target_res | string | Sim | — | Resolução de saída. Valores permitidos: 1080p, 2k, 4k. |
enable_text_hd | boolean | Não | true | Melhorar o texto na tela. Se o campo for omitido, o padrão é true. |
start_ms | integer | Não | — | Início do trecho, em milissegundos. Omita start_ms e end_ms para processar o vídeo inteiro, ainda sujeito ao máximo de 10 minutos. Enviar apenas um dos dois campos é recusado. |
end_ms | integer | Não | — | Fim do trecho, em milissegundos. Deve ser maior que start_ms e não pode ultrapassar a duração da origem. |
O intervalo processado não pode passar de 10 minutos. A cobrança usa esse intervalo, arredondado para cima até o próximo segundo inteiro. As tarifas estão em Faturamento.
Exemplo de solicitação
curl -X POST https://wayinvideo-api.wayin.ai/api/v2/video-enhancer \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "x-wayinvideo-api-version: v2" \
-d '{
"video_url": "EF_up_06wguq1afbwg1",
"target_res": "1080p",
"enable_text_hd": true,
"start_ms": 0,
"end_ms": 8000
}'
import requests
requests.post(
"https://wayinvideo-api.wayin.ai/api/v2/video-enhancer",
headers={
"Authorization": "Bearer YOUR_API_KEY",
"x-wayinvideo-api-version": "v2",
},
json={
"video_url": "EF_up_06wguq1afbwg1",
"target_res": "1080p",
"enable_text_hd": True,
"start_ms": 0,
"end_ms": 8000,
},
)
await fetch('https://wayinvideo-api.wayin.ai/api/v2/video-enhancer', {
method: 'POST',
headers: {
Authorization: 'Bearer YOUR_API_KEY',
'x-wayinvideo-api-version': 'v2',
'Content-Type': 'application/json',
},
body: JSON.stringify({
video_url: 'EF_up_06wguq1afbwg1',
target_res: '1080p',
enable_text_hd: true,
start_ms: 0,
end_ms: 8000,
}),
});
Resposta
Uma tarefa recém-enviada costuma estar em PENDING (na fila) ou IN_PROGRESS (já em execução).
{
"data": {
"id": "proj_01HQ2X8J3K4L5M6N7O8P9Q0R",
"status": "IN_PROGRESS"
}
}
| Campo | Tipo | Descrição |
|---|---|---|
id | string | Id do projeto. Use-o no caminho de resultados. |
status | string | PENDING (na fila), IN_PROGRESS (em execução), DONE (concluído) ou ERROR (falhou). |
output_url | string | URL do vídeo aprimorado. Presente apenas quando status é DONE. |
Obter o resultado
Consulte com o id da resposta de envio até status ser DONE ou ERROR. Quando status for DONE, leia output_url.
GET https://wayinvideo-api.wayin.ai/api/v2/video-enhancer/results/{id}
Exemplo de solicitação
curl -X GET https://wayinvideo-api.wayin.ai/api/v2/video-enhancer/results/proj_01HQ2X8J3K4L5M6N7O8P9Q0R \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "x-wayinvideo-api-version: v2"
Resposta
{
"data": {
"id": "proj_01HQ2X8J3K4L5M6N7O8P9Q0R",
"status": "DONE",
"output_url": "https://cdn.viralhub.ai/user/video_0_8000_1080p.mp4"
}
}
Os campos são os mesmos da resposta de envio. output_url é incluído quando a tarefa termina.
Faturamento
O aprimoramento de vídeo consome API Units pelo intervalo processado, arredondado para cima até o próximo segundo inteiro. Menos de 1 segundo conta como 1 segundo.
| Resolução de destino | API Units |
|---|---|
| 1080p | 1 por segundo |
2K (2k) | 2 por segundo |
4K (4k) | 4 por segundo |
Se a conta não tiver API Units suficientes, a tarefa não é criada e nenhuma unidade é debitada. Consulte Faturamento e Códigos de Status.
Erros
Solicitações com falha usam os códigos de status e formatos de resposta padrão. Consulte Códigos de Status.