Remoção de legendas e marcas d’água de vídeo
Remoção de legendas e marcas d’água de vídeo · submitTask
Remoção de legendas e marcas d’água de vídeo →550W · API para programadores
API de processamento de imagens e vídeos
Remoção de legendas e marcas d’água de vídeo · submitTask
Remoção de legendas e marcas d’água de vídeo →Remoção de marcas d’água em imagens · removeImageWatermark
Remoção de marcas d’água em imagens →Estados da tarefa · Tarefas e conta
Endpoints disponíveis →As tarefas de vídeo são cobradas conforme a duração do processamento e a resolução. As imagens custam 10 créditos por tarefa concluída; falhas de processamento não são cobradas.
Utilização e faturaçãoInclua userNo e API Key em todos os pedidos. O carregamento é opcional: utilize /open/uploadVideo ou indique diretamente uma videoUrl pública.
Gerar API KeyEscolha o fluxo adequado ao seu produto. Cada etapa leva diretamente à referência da API.
Exemplos de integraçãohttps://www.550wai.cnPOST · multipart/form-dataInclua userNo e API Key em todos os pedidos. O carregamento é opcional: utilize /open/uploadVideo ou indique diretamente uma videoUrl pública.
curl -X POST https://www.550wai.cn/open/submitTask \\
-H 'Content-Type: application/x-www-form-urlencoded' \\
--data-urlencode 'userNo=YOUR_USER_NO' --data-urlencode 'apiKey=YOUR_API_KEY' \\
--data-urlencode 'videoUrl=https://example.com/video.mp4' \\
--data-urlencode 'width=1920' --data-urlencode 'height=1080' --data-urlencode 'duration=30' \\
--data-urlencode 'x1=0' --data-urlencode 'y1=0' --data-urlencode 'x2=1920' --data-urlencode 'y2=200'Inclua userNo e API Key em todos os pedidos. O carregamento é opcional: utilize /open/uploadVideo ou indique diretamente uma videoUrl pública.
As respostas incluem code e message. As tarefas passam por waiting e processing até success ou failed. Em caso de sucesso, utilize resultUrl; em caso de falha, consulte failCode. Os ficheiros de resultado expiram. Para contas internacionais (clientType=overseas), message é devolvido em inglês. Use code, status, failCode e os nomes dos campos na lógica.
uploadVideo → submitTask → taskDetail
As respostas incluem code e message. As tarefas passam por waiting e processing até success ou failed. Em caso de sucesso, utilize resultUrl; em caso de falha, consulte failCode. Os ficheiros de resultado expiram.
Trate os erros com code, message, status, failCode e refundStatus.
Configure um HTTPS callbackUrl publicamente acessível para receber o status final da tarefa. Alternativamente, consulte taskDetail com taskId e aumente gradualmente o tempo entre as verificações.
Envie um Idempotency-Key único para cada nova tarefa. Ao repetir o mesmo envio, reutilize a chave para obter o taskId original sem criar outra tarefa nem descontar créditos duas vezes.
Defina sync como false, salve task.taskId e chame imageWatermarkTaskDetail até que o status seja success ou failed. Em caso de sucesso, leia task.resultUrl.
resultUrl · 24 h
Escolha o fluxo adequado ao seu produto. Cada etapa leva diretamente à referência da API.
videoUrl · uploadVideo · Remoção de legendas e marcas d’água de vídeo · uploadVideosubmitTask · Remoção de legendas e marcas d’água de vídeo · submitTasktaskId · taskDetail · callbackUrlremoveImageWatermark · Remoção de marcas d’água em imagens · removeImageWatermarksync=true → resultUrl · sync=false → taskIdimageWatermarkTaskDetail · Consulte o estado finaluserNo · apiKey · Obrigatório em cada pedidoqueryCredits · Tarefas e conta · creditstaskList · Remoção de legendas e marcas d’água de vídeo · Tarefas e conta. As tarefas eliminadas não aparecem em taskDetail nem em taskList. Os estados possíveis continuam a ser waiting, processing, success ou failed./open/uploadVideoRemoção de legendas e marcas d’água de vídeo · uploadVideo
/open/submitTaskRemoção de legendas e marcas d’água de vídeo · submitTask
/open/taskDetailRemoção de legendas e marcas d’água de vídeo · Estados da tarefa
/open/taskListRemoção de legendas e marcas d’água de vídeo · Tarefas e conta. As tarefas eliminadas não aparecem em taskDetail nem em taskList. Os estados possíveis continuam a ser waiting, processing, success ou failed.
/open/deleteTaskEliminar tarefa · Marca uma tarefa de vídeo como eliminada e devolve uma resposta imediata. O ficheiro original carregado, o resultado e os ficheiros de novas tentativas são depois removidos do VOD de forma assíncrona em segundo plano. Os créditos já cobrados não são reembolsados. As tarefas eliminadas não aparecem em taskDetail nem em taskList. Os estados possíveis continuam a ser waiting, processing, success ou failed.
/open/removeImageWatermarkRemoção de marcas d’água em imagens · removeImageWatermark
/open/imageWatermarkTaskDetailRemoção de marcas d’água em imagens · Estados da tarefa
/open/queryCreditsTarefas e conta · credits
/open/uploadVideoRemoção de legendas e marcas d’água de vídeo · uploadVideo
Formato do pedido: multipart/form-data
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
userNo | string | Sim | 550W userNo |
apiKey | string | Sim | API Key |
file | file | Sim | MP4/MOV · ≤ 1080p · ≤ 30 min · Tamanho do ficheiro ≤ 1 GiB |
| Campo | Tipo | Descrição |
|---|---|---|
code | number | Código de resultado; 200 significa sucesso |
message | string | Mensagem de estado |
videoUrl | string | URL do vídeo enviado |
coverUrl | string | URL da capa do vídeo |
width | number | Largura do vídeo em pixels |
height | number | Altura do vídeo em pixels |
duration | number | Duração do vídeo em segundos |
| code | Significado | Descrição |
|---|---|---|
-100 | Falha de autenticação ou quota | Causas comuns: userNo · API Key · credits |
-200 | Parâmetro inválido | Causas comuns: field · URL · size · duration · Idempotency-Key |
-500 | Erro interno | Causas comuns: server · retry |
/open/submitTaskRemoção de legendas e marcas d’água de vídeo · submitTask
Formato do pedido: application/x-www-form-urlencoded
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
userNo | string | Sim | 550W userNo |
apiKey | string | Sim | API Key |
videoUrl | string | Sim | HTTP(S) URL · ≤ 2048 caracteres |
width | number | Sim | largura do vídeo · px |
height | number | Sim | altura do vídeo · px · max ≤ 1920 · min ≤ 1080 |
duration | number | Sim | 1–1800 s |
x1 | number | Sim | canto superior esquerdo X · px |
y1 | number | Sim | canto superior esquerdo Y · px |
x2 | number | Sim | canto inferior direito X · px |
y2 | number | Sim | canto inferior direito Y · px · x1 = y1 = x2 = y2 = 0: quadro completo |
mode | string | Não | normal (predefinido) · protect |
fileName | string | Não | UTF-8 |
coverUrl | string | Não | HTTP(S) URL |
callbackUrl | string | Não | HTTPS webhook · estado final da tarefa |
removeAudio | boolean | Não | true · false (predefinido) |
Idempotency-Key / idempotencyKey | string | Recomendado | ≤ 128 caracteres · é seguro tentar novamente |
| Campo | Tipo | Descrição |
|---|---|---|
code | number | Código de resultado; 200 significa sucesso |
message | string | Mensagem de estado |
taskId | string | Identificador da tarefa para consultas de estado |
status | string | waiting · processing · success · failed |
| code | Significado | Descrição |
|---|---|---|
-100 | Falha de autenticação ou quota | Causas comuns: userNo · API Key · credits |
-200 | Parâmetro inválido | Causas comuns: field · URL · size · duration · Idempotency-Key |
-300 | Pedido recusado | Causas comuns: taskId · ownership · state |
-401 | Suspensão temporária da conta | Causas comuns: Primeira infração efetiva: 1 hora; segunda: 24 horas. Deteções durante a suspensão não contam, prolongam nem agravam a sanção. |
-402 | Bloqueio permanente da conta | Causas comuns: A terceira infração efetiva bloqueia a conta permanentemente. |
-600 | Formato de vídeo não suportado | Causas comuns: codec · bit depth · HDR · audio |
/open/taskDetailRemoção de legendas e marcas d’água de vídeo · Estados da tarefa
Formato do pedido: form / query
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
userNo | string | Sim | 550W userNo |
apiKey | string | Sim | API Key |
taskId | string | Sim | 1–64 caracteres |
subUserId | string | Não | ≤ 128 caracteres · titularidade do utilizador |
| Campo | Tipo | Descrição |
|---|---|---|
taskId | string | Identificador da tarefa para consultas de estado |
status | string | waiting · processing · success · failed |
width | number | Largura do vídeo em pixels |
height | number | Altura do vídeo em pixels |
duration | number | Duração do vídeo em segundos |
x1 | number | x1 |
y1 | number | y1 |
x2 | number | x2 |
y2 | number | y2 |
mode | string | mode |
cost | number | Créditos cobrados por esta tarefa |
resultUrl | string | URL de resultado; válido por 24 horas após a geração |
failCode | string | Identificador de falha estável |
failReason | string | Motivo da falha da tarefa |
refundStatus | number | Estado da devolução de créditos |
| code | Significado | Descrição |
|---|---|---|
-100 | Falha de autenticação ou quota | Causas comuns: userNo · API Key · credits |
-300 | Pedido recusado | Causas comuns: taskId · ownership · state |
-500 | Erro interno | Causas comuns: server · retry |
/open/taskListRemoção de legendas e marcas d’água de vídeo · Tarefas e conta. As tarefas eliminadas não aparecem em taskDetail nem em taskList. Os estados possíveis continuam a ser waiting, processing, success ou failed.
Formato do pedido: form / query
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
userNo | string | Sim | 550W userNo |
apiKey | string | Sim | API Key |
page | number | Não | ≥ 0 · predefinido 0 |
size | number | Não | 1–100 · predefinido 20 |
subUserId | string | Não | ≤ 128 caracteres · titularidade do utilizador |
| Campo | Tipo | Descrição |
|---|---|---|
total | number | Número de tarefas não excluídas |
page | number | Número da página |
size | number | Número de tarefas por página |
list | array | Lista de tarefas não excluídas |
| code | Significado | Descrição |
|---|---|---|
-100 | Falha de autenticação ou quota | Causas comuns: userNo · API Key · credits |
-200 | Parâmetro inválido | Causas comuns: field · URL · size · duration · Idempotency-Key |
-500 | Erro interno | Causas comuns: server · retry |
/open/deleteTaskEliminar tarefa · Marca uma tarefa de vídeo como eliminada e devolve uma resposta imediata. O ficheiro original carregado, o resultado e os ficheiros de novas tentativas são depois removidos do VOD de forma assíncrona em segundo plano. Os créditos já cobrados não são reembolsados. As tarefas eliminadas não aparecem em taskDetail nem em taskList. Os estados possíveis continuam a ser waiting, processing, success ou failed.
Formato do pedido: form / query
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
userNo | string | Sim | 550W userNo |
apiKey | string | Sim | API Key |
taskId | string | Sim | 1–64 caracteres |
subUserId | string | Não | ≤ 128 caracteres · titularidade do utilizador |
| Campo | Tipo | Descrição |
|---|---|---|
code | number | Código de resultado; 200 significa sucesso |
message | string | Mensagem de estado |
| code | Significado | Descrição |
|---|---|---|
-100 | Falha de autenticação ou quota | Causas comuns: userNo · API Key · credits |
-200 | Parâmetro inválido | Causas comuns: field · URL · size · duration · Idempotency-Key |
-300 | Pedido recusado | Causas comuns: taskId · ownership · state |
-500 | Erro interno | Causas comuns: server · retry |
/open/removeImageWatermarkRemoção de marcas d’água em imagens · removeImageWatermark
Formato do pedido: multipart/form-data
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
userNo | string | Sim | 550W userNo |
apiKey | string | Sim | API Key |
file | file | Sim | JPG · PNG · BMP · WebP · AVIF · TIFF · SVG · ≤ 50 MiB |
sync | boolean | Não | true (predefinido) · false |
operationId | string | Não | identificador de acompanhamento |
| Campo | Tipo | Descrição |
|---|---|---|
code | number | Código de resultado; 200 significa sucesso |
message | string | Mensagem de estado |
creditsAfter | number | Créditos restantes após processamento |
task | object | Resultado do processamento ou tarefa assíncrona |
| code | Significado | Descrição |
|---|---|---|
-100 | Falha de autenticação ou quota | Causas comuns: userNo · API Key · credits |
-200 | Parâmetro inválido | Causas comuns: field · URL · size · duration · Idempotency-Key |
-300 | Pedido recusado | Causas comuns: taskId · ownership · state |
-500 | Erro interno | Causas comuns: server · retry |
/open/imageWatermarkTaskDetailRemoção de marcas d’água em imagens · Estados da tarefa
Formato do pedido: form / query
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
userNo | string | Sim | 550W userNo |
apiKey | string | Sim | API Key |
taskId | string | Sim | 1–64 caracteres |
| Campo | Tipo | Descrição |
|---|---|---|
status | string | waiting · processing · success · failed |
resultUrl | string | URL de resultado; válido por 24 horas após a geração |
failCode | string | Identificador de falha estável |
failReason | string | Motivo da falha da tarefa |
cost | number | Créditos cobrados por esta tarefa |
expiredTime | string | Tempo de expiração do URL de resultado |
| code | Significado | Descrição |
|---|---|---|
-100 | Falha de autenticação ou quota | Causas comuns: userNo · API Key · credits |
-300 | Pedido recusado | Causas comuns: taskId · ownership · state |
-500 | Erro interno | Causas comuns: server · retry |
/open/queryCreditsTarefas e conta · credits
Formato do pedido: form / query
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
userNo | string | Sim | 550W userNo |
apiKey | string | Sim | API Key |
| Campo | Tipo | Descrição |
|---|---|---|
code | number | Código de resultado; 200 significa sucesso |
message | string | Mensagem de estado |
userNo | string | Identificador do utilizador |
credits | number | Créditos disponíveis |
| code | Significado | Descrição |
|---|---|---|
-100 | Falha de autenticação ou quota | Causas comuns: userNo · API Key · credits |
-500 | Erro interno | Causas comuns: server · retry |
| Campo | Obrigatório | Descrição |
|---|---|---|
userNo | Sim | 550W userNo |
apiKey | Sim | API Key |
Idempotency-Key | Recomendado | ≤ 128 · retry-safe |
callbackUrl | Não | HTTPS webhook · final status |
| Campo | Tipo | Descrição |
|---|---|---|
videoUrl | string | HTTP(S) URL · ≤ 2048 caracteres |
width | number | largura do vídeo · px |
height | number | altura do vídeo · px · max ≤ 1920 · min ≤ 1080 |
duration | number | 1–1800 s |
x1 | number | canto superior esquerdo X · px |
y1 | number | canto superior esquerdo Y · px |
x2 | number | canto inferior direito X · px |
y2 | number | canto inferior direito Y · px · x1 = y1 = x2 = y2 = 0: quadro completo |
mode | string | normal (predefinido) · protect |
removeAudio | boolean | true · false (predefinido) |
As respostas incluem code e message. As tarefas passam por waiting e processing até success ou failed. Em caso de sucesso, utilize resultUrl; em caso de falha, consulte failCode. Os ficheiros de resultado expiram.
{ "code": 200, "message": "success", "taskId": "...", "status": "waiting" }| Code | Significado | Causas comuns |
|---|---|---|
200 | Sucesso | message: "success" |
-100 | Falha de autenticação ou quota | userNo · API Key · credits |
-200 | Parâmetro inválido | field · URL · size · duration · Idempotency-Key |
-300 | Pedido recusado | taskId · ownership · state |
-401 | Suspensão temporária da conta | Primeira infração efetiva: 1 hora; segunda: 24 horas. Deteções durante a suspensão não contam, prolongam nem agravam a sanção. |
-402 | Bloqueio permanente da conta | A terceira infração efetiva bloqueia a conta permanentemente. |
-500 | Erro interno | server · retry |
-600 | Formato de vídeo não suportado | codec · bit depth · HDR · audio |
failCode é um identificador de string, não o code numérico. Aparece apenas quando uma tarefa falha. Use failCode para determinar a causa; não analise a mensagem failReason traduzida.
| failCode | Significado |
|---|---|
VIDEO_UNREACHABLE | O URL do vídeo não está acessível publicamente |
VIDEO_METADATA_UNAVAILABLE | Não foi possível obter metadados de vídeo fiáveis. |
VIDEO_RESOLUTION_UNSUPPORTED | A resolução de vídeo medida excede o intervalo suportado |
VIDEO_DURATION_UNSUPPORTED | A duração medida do vídeo excede 30 minutos |
VIDEO_CODEC_UNSUPPORTED | O codec de vídeo não é compatível |
VIDEO_BIT_DEPTH_UNSUPPORTED | A profundidade de bits do vídeo não é suportada |
VIDEO_HDR_UNSUPPORTED | HDR, PQ ou HLG não são suportados |
VIDEO_AUDIO_UNSUPPORTED | O codec de áudio não é compatível |
VIDEO_CONTAINER_UNSUPPORTED | O formato do contêiner de vídeo não é compatível |
VIDEO_PREPARE_FAILED | Falha na preparação, validação ou remoção de áudio do vídeo |
/open/submitTask// JavaScript
const form = new URLSearchParams({
userNo: USER_NO, apiKey: API_KEY, videoUrl: VIDEO_URL,
width: '1920', height: '1080', duration: '30',
x1: '0', y1: '0', x2: '1920', y2: '200'
});
const response = await fetch('https://www.550wai.cn/open/submitTask', {
method: 'POST',
body: form,
});
# Python
import requests
r = requests.post('https://www.550wai.cn/open/submitTask', data={
'userNo': USER_NO, 'apiKey': API_KEY, 'videoUrl': VIDEO_URL,
'width': 1920, 'height': 1080, 'duration': 30,
'x1': 0, 'y1': 0, 'x2': 1920, 'y2': 200
})/open/removeImageWatermark// JavaScript
const imageFile = document.querySelector('#image-file').files[0];
const imageForm = new FormData();
imageForm.append('userNo', USER_NO);
imageForm.append('apiKey', API_KEY);
imageForm.append('file', imageFile);
imageForm.append('sync', 'true');
const imageResponse = await fetch(
'https://www.550wai.cn/open/removeImageWatermark',
{ method: 'POST', body: imageForm }
);
# Python
import requests
IMAGE_FILE_PATH = '/path/to/image-file'
with open(IMAGE_FILE_PATH, 'rb') as image:
r = requests.post(
'https://www.550wai.cn/open/removeImageWatermark',
data={'userNo': USER_NO, 'apiKey': API_KEY, 'sync': 'true'},
files={'file': image}
)As tarefas de vídeo são cobradas conforme a duração do processamento e a resolução. As imagens custam 10 créditos por tarefa concluída; falhas de processamento não são cobradas.
| Resolução do vídeo | Tarifa | Exemplo |
|---|---|---|
| width × height ≤ 921,600 · 720p ou inferior | 1.3 créditos / s | 1280×720 · 30 s ≈ 39 créditos |
| width × height > 921,600 · Até 1080p | 1.6 créditos / s | 1920×1080 · 30 s ≈ 48 créditos |
As consultas de tarefas devolvem apenas dados do utilizador autenticado.
Trate os erros com code, message, status, failCode e refundStatus.
As tarefas de vídeo são cobradas conforme a duração do processamento e a resolução. As imagens custam 10 créditos por tarefa concluída; falhas de processamento não são cobradas.
Preços →