Interfejs API do klonowania głosu w przetłumaczonych filmach

Zachowaj unikalny głos każdego mówcy, gdy Twoje filmy mówią w innych językach. API automatycznie klonuje każdy głos z filmu źródłowego lub wykorzystuje wcześniej stworzony niestandardowy klon głosu, zwracając zdubbingowane wideo wraz ze sklonowanymi głosami, ścieżkami audio i napisy.
Natychmiastowy klon głosu
Niestandardowe klony głosów
REST + Python SDK
clone, assign, re-dub
OAuth 2.0
# 1. create the dub - each speaker gets an Instant Voice Clone by default
curl -X POST https://api.rask.ai/v2/projects \
  -H "Authorization: Bearer $TOKEN" \
  -d '{"video_id": "b8f7835d-e8c9-4ff4-8e34-5c336d818319", "dst_lang": "es-mx"}'

# 2. list the voices available in this project
curl https://api.rask.ai/v2/projects/$ID/voices \
  -H "Authorization: Bearer $TOKEN"
#  "label": "Voice Clone", "gender": "auto"         instant clone
#  "label": "Maria Lopez", "sample_src": "https://..."  your custom clone

# 3. assign your custom clone - include every speaker in the map
curl -X PATCH https://api.rask.ai/v2/projects/$ID \
  -H "Authorization: Bearer $TOKEN" \
  -d '{"voice": {"SPEAKER_00": "<custom_voice_id>", "SPEAKER_01": "<voice_id>"}}'
GET /v2/projects/{project_id}
polling, 10s
# 4. re-dub with the new voices, then poll until merging_done
curl -X POST https://api.rask.ai/v2/projects/$ID/generate \
  -H "Authorization: Bearer $TOKEN"
while :; do
  curl -s https://api.rask.ai/v2/projects/$ID -H "Authorization: Bearer $TOKEN" | jq .status
  sleep 10
done
Używane przez zespoły na całym świecie
Możliwości

Wszystko, co potrafi API klonowania głosu

Sklonuj każdego mówcę z wideo źródłowego lub skorzystaj z własnego klonu głosu w każdej przetłumaczonej wersji i wielu językach. Wybierz gotowe głosy AI dla języków bez opcji klonowania. Dodaj opcjonalną synchronizację ruchów warg, rozliczaną osobno.

Natychmiastowy klon głosu

Każdy mówca otrzymuje klon swojego głosu z wideo źródłowego bez konieczności nagrywania próbek audio. Jest on przypisywany domyślnie w obsługiwanych językach docelowych.

Niestandardowe klony głosów

Stwórz głos wielokrotnego użytku w aplikacji Rask na podstawie czystych próbek audio lub zapisz głos mówcy z istniejącego projektu w swojej bibliotece klonów. Za zgodą mówcy użyj go ponownie w projektach API w obsługiwanych językach docelowych.

Jeden głos na mówcę

Mówcy są oddzielani automatycznie, a każdy z nich zachowuje swój sklonowany głos, dzięki czemu wywiady, panele i podcasty są łatwe w odbiorze.

Synchronizacja ruchu warg

Dopasuj ruch ust do sklonowanego głosu jako opcji dla dowolnego ukończonego projektu, płatnej osobno. Wykrywanie twarzy działa w pierwszej kolejności, więc aplikujesz je tylko tam, gdzie przyniesie to efekt.

Zachowane tło dźwiękowe

Muzyka, dźwięki otoczenia i efekty są oddzielane od mowy i miksowane ponownie pod sklonowanym głosem, dzięki czemu wynik zachowuje brzmienie oryginalnej produkcji.

Gotowe głosy AI

W przypadku języków bez opcji klonowania lub gdy pasuje inny głos, wybierz gotowy głos AI o wybranej płci dla dowolnego mówcy.

Tożsamość głosu w różnych językach

Klon mówi po hiszpańsku, francusku lub japońsku głosem oryginalnego mówcy, dzięki czemu prezenter brzmi naturalnie dla globalnej widowni.

Zmień głos, zdubbuj ponownie jednego mówcę

Przypisz inny głos do mówcy i wygeneruj ponownie. Opłata dotyczy tylko zmienionych fragmentów, więc nikt nie musi niczego nagrywać od nowa.

Skaluj bez ograniczeń

Bez limitów prędkości, bez limitów współbieżności. Dubbuj cały swój katalog ze sklonowanymi głosami równolegle, w dowolnej skali.
Zobacz jak to działa

Posłuchaj jednego mówcy w pięciu językach

Oryginalne głosy po angielsku, a następnie sklonowane po francusku, niemiecku, portugalsku i hiszpańsku. Każdy mówca zachowuje swój głos, a dźwięk w tle pozostaje bez zmian.
EN flag
En
FR flag
Fr
DE flag
De
PT flag
Pt
ES flag
Es
Przepływ pracy

Trzy kroki od wideo źródłowego do sklonowanych głosów

Utworzenie projektu rozpoczyna dubbing za pomocą natychmiastowych klonów głosu. Użyj punktu końcowego /generate po zmianie głosów lub edycji skryptu.
1

Prześlij wideo

Wyślij plik jako dane formularza multipart lub prześlij link z YouTube, Google Dysku, S3, Vimeo albo dowolny bezpośredni adres URL. Mowa w tym wideo stanowi próbkę głosu dla każdego szybkiego klonowania głosu.

POST /api/library/v1/media/link
2

Utwórz projekt

Przekaż identyfikator pliku jako video_id oraz język docelowy. Każdy wykryty mówca otrzymuje szybki klon głosu w obsługiwanych językach, a dubbing rozpoczyna się natychmiast.

POST /v2/projects
3

Przypisz głosy i wykonaj ponowny dubbing

Wyświetl listę głosów dla projektu, przypisz własny klon lub gotowe ustawienie do dowolnego mówcy, a następnie wywołaj /generate i pobierz pliki po zakończeniu dubbingu.

PATCH /v2/projects/{project_id}
Czas przetwarzania zależy od projektu. Po zmianie głosu mówcy ponownie dubbingowane i rozliczane są tylko segmenty tego mówcy.
Stworzone z myślą o Tobie

Potrzebujesz rozwiązania spoza katalogu? Skontaktuj się z naszym zespołem

Klonowanie głosu dla języka, który nie jest jeszcze obsługiwany, większa niestandardowa biblioteka głosów, własna metoda dostarczania: gdy projekt głosowy wymaga czegoś spoza publicznego katalogu, nasz zespół analizuje Twoje wymagania i dostępne opcje.

Języki i głosy

Potrzebujesz języka lub głosu spoza publicznego katalogu? Porozmawiaj z naszym zespołem o swoich wymaganiach i dostępnych opcjach.

Dostarczanie i integracja

Webhooki, przesyłanie do własnej kolejki, dostarczanie bezpośrednio do S3, niestandardowe endpointy. Powiedz nam, jak Twój system oczekuje danych.

Wolumen i przepustowość

Rozmiary partii, liczba języków docelowych na akcję i priorytet przetwarzania to warunki umowy, a nie sztywne limity produktu.

Bezpieczeństwo i hosting

Kwestie związane z przechowywaniem danych, logowaniem SSO i SAML, zasadami ich zachowania oraz wsparciem przy audycie bezpieczeństwa są omawiane podczas wdrażania planu dla firm.
Przykłady zastosowań

Kto korzysta z interfejsu API do klonowania głosu?

Platformy zawierające materiały wideo

Platformy LMS i edukacji klientów, platformy dla twórców i wideo oraz ich aplikacje mobilne, narzędzia do webinarów i wydarzeń wirtualnych, hosting wideo i SaaS do obsługi przepływów pracy, platformy cyfrowej adaptacji, live shopping. Pozwól twórcom i instruktorom zachować ich własny głos w obsługiwanych językach klonowania głosu. Używaj gotowych ustawień głosu AI dla innych języków docelowych i spraw, aby wielojęzyczny dubbing stał się funkcją Twojej platformy.

Agencje lokalizacji i produkcyjne

Dostarczaj niestandardowe podkłady głosowe w głosie oryginalnego prezenterka dla każdego wideo klienta. Zachowaj niestandardowy klon głosu dla każdego stałego prezentera (z wymaganą zgodą) i używaj go ponownie w każdym projekcie przez API bez prośby kogokolwiek o ponowne nagranie.

Wewnętrzna, ciągła produkcja wideo

Międzynarodowy handel detaliczny i e-commerce, globalne franczyzy, wydawcy mediów, uniwersytety korporacyjne. Trenerzy, kadra zarządzająca i eksperci ds. produktów nagrywano raz, a następnie używają swojego sklonowanego głosu dla obsługiwanych języków docelowych oraz gotowych ustawień głosu AI dla innych wersji rynkowych filmów szkoleniowych, aktualizacji produktów i wiadomości wewnętrznych.
Historie klientów

Prawdziwe zespoły, wymierne wyniki

Jak firmy lokalizują wideo z Rask, wyrażone w liczbach.
strzałka
strzałka
Kod

Przykłady kodu API klonowania głosu

Jednen kompletny przykład w każdym języku: uwierzytelnianie, przesyłanie, dubbing za pomocą szybkich klonów głosu, przypisywanie niestandardowego klonu do mówcy, ponowny dubbing i pobieranie.
# pip install git+ssh://[email protected]/braskai/rask-sdk.git@main
import asyncio
from rask_sdk import clients, enums, schemas

async def wait(client, job):
    while job.status is not enums.ProjectStatus.MERGING_DONE:
        await asyncio.sleep(10)
        job = await client.get_project(project_id=job.id)
    return job

async def main():
    client = clients.RaskSDKClient(client_id=CLIENT_ID, client_secret=CLIENT_SECRET)

    video = await client.create_media_link(data=schemas.MediaCreateLink(link="https://youtu.be/..."))
    while video.status is not enums.MediaStatus.READY:
        await asyncio.sleep(5)
        video = await client.get_media(media_id=video.id)

    # first dub: every speaker gets an Instant Voice Clone
    job = await wait(client, await client.create_project(
        data=schemas.ProjectCreate(video_id=video.id, dst_lang="es-mx")))

    # assign a custom clone to SPEAKER_00, keep the other speakers as they are
    voices = await client.get_project_voices(project_id=job.id)
    custom = next(v for v in voices if v.label == "Maria Lopez")
    voice_map = {**job.voice, "SPEAKER_00": custom.id}
    await client.patch_project(project_id=job.id, data=schemas.ProjectPatch(voice=voice_map))

    job = await wait(client, await client.generate_project(project_id=job.id))
    print(job.translated_video, job.voiceover)

asyncio.run(main())
github.com/braskai/rask-sdk
async, typed models
import time, requests

AUTH = "https://rask-prod.auth.us-east-2.amazoncognito.com/oauth2/token"
API  = "https://api.rask.ai"
token = requests.post(AUTH, auth=(CLIENT_ID, CLIENT_SECRET),
                      data={"grant_type": "client_credentials"}).json()["access_token"]
h = {"Authorization": f"Bearer {token}"}

def wait(pid):
    while (p := requests.get(f"{API}/v2/projects/{pid}", headers=h).json())["status"] != "merging_done":
        time.sleep(10)
    return p

video = requests.post(f"{API}/api/library/v1/media/link", headers=h, json={"link": "https://youtu.be/..."}).json()
while video["status"] != "ready":
    time.sleep(5)
    video = requests.get(f"{API}/api/library/v1/media/{video['id']}", headers=h).json()

pid = requests.post(f"{API}/v2/projects", headers=h,
                    json={"video_id": video["id"], "dst_lang": "es-mx"}).json()["id"]
project = wait(pid)

voices = requests.get(f"{API}/v2/projects/{pid}/voices", headers=h).json()
custom = next(v for v in voices if v["label"] == "Maria Lopez")
voice_map = {**project["voice"], "SPEAKER_00": custom["id"]}   # every speaker stays in the map

requests.patch(f"{API}/v2/projects/{pid}", headers=h, json={"voice": voice_map})
requests.post(f"{API}/v2/projects/{pid}/generate", headers=h)
print(wait(pid)["translated_video"])
requests + polling
no SDK required
// no dependencies, Node 18+ global fetch
const API = 'https://api.rask.ai';
const sleep = (ms) => new Promise((r) => setTimeout(r, ms));
const auth = await fetch('https://rask-prod.auth.us-east-2.amazoncognito.com/oauth2/token', {
  method: 'POST',
  headers: { Authorization: 'Basic ' + btoa(`${CLIENT_ID}:${CLIENT_SECRET}`) },
  body: new URLSearchParams({ grant_type: 'client_credentials' }),
}).then((r) => r.json());
const h = { Authorization: `Bearer ${auth.access_token}`, 'Content-Type': 'application/json' };
const call = (method, path, body) => fetch(API + path, { method, headers: h, body: body && JSON.stringify(body) }).then((r) => r.json());
const wait = async (id) => { let p; while ((p = await call('GET', `/v2/projects/${id}`)).status !== 'merging_done') await sleep(10000); return p; };

let video = await call('POST', '/api/library/v1/media/link', { link: 'https://youtu.be/...' });
while (video.status !== 'ready') { await sleep(5000); video = await call('GET', `/api/library/v1/media/${video.id}`); }

const { id } = await call('POST', '/v2/projects', { video_id: video.id, dst_lang: 'es-mx' });
const project = await wait(id);

const voices = await call('GET', `/v2/projects/${id}/voices`);
const custom = voices.find((v) => v.label === 'Maria Lopez');
await call('PATCH', `/v2/projects/${id}`, { voice: { ...project.voice, SPEAKER_00: custom.id } });
await call('POST', `/v2/projects/${id}/generate`);

console.log((await wait(id)).translated_video);
fetch, Node 18+
plain HTTP
# 1. token (valid 1 hour - cache and reuse it)
TOKEN=$(curl -s -X POST https://rask-prod.auth.us-east-2.amazoncognito.com/oauth2/token \
  -u "$CLIENT_ID:$CLIENT_SECRET" -d "grant_type=client_credentials" | jq -r .access_token)

# 2. create the dub - Instant Voice Clones are assigned by default
ID=$(curl -s -X POST https://api.rask.ai/v2/projects -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" -d "{\"video_id\": \"$VIDEO_ID\", \"dst_lang\": \"es-mx\"}" | jq -r .id)

# 3. after merging_done: read the current voice map and the voice options
curl -s https://api.rask.ai/v2/projects/$ID -H "Authorization: Bearer $TOKEN" | jq .voice
curl -s https://api.rask.ai/v2/projects/$ID/voices -H "Authorization: Bearer $TOKEN" | jq '.[] | {id, label, gender}'

# 4. assign voices for every speaker, then re-dub
curl -s -X PATCH https://api.rask.ai/v2/projects/$ID -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" -d '{"voice": {"SPEAKER_00": "<custom_voice_id>", "SPEAKER_01": "<voice_id>"}}'
curl -s -X POST https://api.rask.ai/v2/projects/$ID/generate -H "Authorization: Bearer $TOKEN"
PATCH /v2/projects/{id}
OAuth 2.0 client credentials
<?php
use GuzzleHttp\Client;

$http = new Client(['base_uri' => 'https://api.rask.ai']);
$json = fn($r) => json_decode($r->getBody(), true);
$auth = $json((new Client)->post('https://rask-prod.auth.us-east-2.amazoncognito.com/oauth2/token',
    ['auth' => [$clientId, $clientSecret], 'form_params' => ['grant_type' => 'client_credentials']]));
$h = ['Authorization' => 'Bearer ' . $auth['access_token']];

$wait = function ($id) use ($http, $h, $json) {
    do { sleep(10); $p = $json($http->get("/v2/projects/$id", ['headers' => $h])); }
    while ($p['status'] !== 'merging_done');
    return $p;
};

$id = $json($http->post('/v2/projects', ['headers' => $h,
    'json' => ['video_id' => $videoId, 'dst_lang' => 'es-mx']]))['id'];
$project = $wait($id);

$voices = $json($http->get("/v2/projects/$id/voices", ['headers' => $h]));
$custom = current(array_filter($voices, fn($v) => $v['label'] === 'Maria Lopez'));
$map = array_merge($project['voice'], ['SPEAKER_00' => $custom['id']]);

$http->patch("/v2/projects/$id", ['headers' => $h, 'json' => ['voice' => $map]]);
$http->post("/v2/projects/$id/generate", ['headers' => $h]);
echo $wait($id)['translated_video'];
Guzzle 7
plain HTTP
Python to oficjalny pakiet SDK. Zakładki Node, PHP i cURL przedstawiają proste przykłady żądań HTTP dla tych samych punktów końcowych.
Postęp

Jak projekt klonowania głosu raportuje postępy

Projekt przechodzi przez udokumentowany schemat stanów przy pierwszym dubbingu i ponownie po każdym kolejnym, dzięki czemu Twoi użytkownicy widzą realne postępy za każdym razem, gdy zmieniasz głos. Musisz zareagować tylko w trzech grupach.

Sukces, zatrzymaj się tutaj

merging_done
Dubbing został zakończony. Pobierz projekt ponownie, aby uzyskać linki do pobrania przygotowane dla Twojego projektu.

W toku, sprawdzaj dalej

created
uploading
transcription_started
separate_background_started
determine_speakers_started
translation_started
voiceover_started
merging_started
Oraz pasujące _done statusy. Doskonale pasują one do interfejsu pokazującego postęp krok po kroku.

Błąd, zatrzymanie i raport

failed
upload_failed
transcription_failed
translation_failed
voiceover_failed
merging_failed
no_audio
no_words
forbidden_link
no_audio, no_words oraz forbidden_link są wystarczająco jasne, aby pokazać je bezpośrednio Twoim użytkownikom.
Observed run, 3:47 source video, en → es-mx
GET /v2/projects/{project_id}
   0s  created
  11s  transcription_started
  87s  translation_started
  99s  voiceover_started
 154s  merging_started
 165s  merging_done

Lub całkowicie pomiń sprawdzanie

Wskaż nam punkt końcowy webhooka, a każda zmiana stanu pojawi się jako żądanie POST, dzięki czemu Twoja kolejka zareaguje na każdą zmianę w momencie jej wystąpienia. Dostarczanie przez webhook jest częścią wdrożenia dla klientów korporacyjnych.
Przeczytaj dokumentację
preserveAspectRatio="xMidYMid meet" aria-hidden="true" role="img">
Wynik

Sklonowany głos, zdubbingowane wideo i napisy

Pobierz zdubbingowane wideo ze sklonowanymi głosami i przetłumaczonymi napisami w formatach SRT i VTT. W wybranych planach możesz również pobrać samą ścieżkę sklonowanego głosu w formacie WAV lub zmiksowaną z oryginalnym dźwiękiem w tle.
Pole
Format
Co to jest
translated_video
MP4
Zdubbingowane wideo, gotowe do publikacji
voiceover
WAV
Przetłumaczona mowa wyłącznie w sklonowanym głosie, do Twojego własnego miksu
translated_audio
WAV
Przetłumaczona mowa zmiksowana z oryginalnym dźwiękiem w tle
translation_srt_path
.srt
Napisy w języku docelowym
translation_vtt_path
.vtt
Te same napisy w formacie WebVTT, do odtwarzaczy webowych
original_video
MP4
Twój plik źródłowy w takim stanie, w jakim został zapisany, do wglądu
Kontrola

Zmień głos, a następnie zdubbuj ponownie tylko tego mówcy

Szybkie klony sprawdzą się w przypadku większości mówców. Gdy jeden głos wymaga innego wyboru, przypisz niestandardowy klon lub gotowe ustawienie do tego mówcy i wygeneruj ponownie. Rozliczane są tylko zmienione segmenty.

Edycja na poziomie segmentów

Edycja na poziomie segmentów
Każdy projekt udostępnia swoją transkrypcję jako segmenty z etykietami mówców, więc przeniesienie linii do innego mówcy lub zmiana głosu wymaga tylko jednego żądania.
Pobierz transkrypcję i jej segmenty
Zmień tekst źródłowy, a my przetłumaczymy go ponownie
Edytuj przetłumaczony tekst bezpośrednio, aby zachować własne słownictwo
Dopasowuj znaczniki czasu, dodawaj segmenty i usuwaj je
Zmień głos przypisany do dowolnego mówcy

Słowniczki terminologii

Słowniczki terminologii
Dołącz słowniczek, aby nazwy marek, nazwy produktów i terminy techniczne tłumaczyły się w ten sam sposób w każdym języku, niezależnie od tego, czyj głos je wypowiada.

Jeden słowniczek obejmuje jedną parę językową i działa we wszystkich odmianach regionalnych tego języka docelowego, więc jeden hiszpański słowniczek obsłuży es-mx oraz es-es podobnie. Projekt rejestruje wersja_słownika, dzięki czemu późniejsze poprawki nigdy nie zmieniają ukończonej pracy w tle.
Dane wejściowe

Obsługiwane formaty plików

Prześlij dowolny z siedmiu formatów wideo i czterech audio albo wyślij adres URL. Mowa w pliku stanowi odniesienie do szybkiego klonowania głosu, dlatego czysty dźwięk zapewnia najlepsze rezultaty.

Wideo

7 formatów
.mp4
.mov
.mkv
.avi
.webm
.m4v
.3gp

Audio

4 formaty
.mp3
.wav
.flac
.m4a

Metadane przed wydaniem środków

Punkt końcowy multimediów zwraca czas trwania, rozmiar pliku, kodek wideo, liczbę klatek na sekundę, rozdzielczość, kodek audio, częstotliwość próbkowania i układ kanałów. Zweryfikuj plik i oszacuj koszt z góry, ponieważ dubbing ze sklonowanymi głosami jest rozliczany co minutę.
Bezpieczeństwo i zgodność z przepisami

Dane głosowe, które Twój dział prawny może zatwierdzić

Brask Inc posiada certyfikat SOC 2 Type II, działa zgodnie z RODO i publikuje status kontroli na żywo w swoim Centrum Zaufania. Niestandardowe klony głosowe są tworzone za zgodą mówcy, a dla bezpieczeństwa danych Twój dźwięk nigdy nie jest używany do trenowania ogólnych modeli.

Certyfikaty

SOC 2 Type II
RODO
Członek CAI i C2PA

Szyfrowanie

TLS 1.2 w tranzycie
AES-256 w spoczynku
Klucze zarządzane SSE-S3
Rotacja kluczy co najmniej co 12 miesięcy

Twoje treści

Zamknięte środowisko AI
Nigdy nieużywane do trenowania ogólnych modeli
Pełny eksport, bez wiązania się z jedną platformą

Dostęp

SSO i SAML
Kontrola dostępu oparta na rolach
Poświadczenia klienta OAuth 2.0

Dla firm

Opcje lokalizacji danych
Niestandardowe umowy SLA
Dedykowany opiekun klienta

Prawa do głosu

Syntetyczne głosy z prawami do użytkowania
Klonowanie głosu oparte na zgodzie
Zasady bezpieczeństwa AI, człowiek w pętli
Porównanie

Rask API a stworzony przez Ciebie potok przetwarzania głosu

API klonowania tekstu na mowę nadaje głos wysyłanemu tekstowi. Sklonowane głosy w przetłumaczonym wideo wymagają również transkrypcji, tłumaczenia, rozdzielenia osób mówiących, dopasowania czasu i miksowania. Oto ten sam wynik, uzyskany na dwa sposoby.
Czego potrzebujesz
Rask API
Złożone z części
Sklonuj każdego mówcę z oryginalnego wideo
Błyskawiczne klonowanie głosu, domyślnie
Zbierz i prześlij próbki dla każdego mówcy
Wielorazowe głosy niestandardowe
Niestandardowe klony głosu według voice_id
Biblioteka głosów, którą tworzysz i utrzymujesz
Transkrypcja, tłumaczenie, synteza, miksowanie
Jedno API
Od trzech do czterech dostawców i kod łączący ich systemy
Wykrywanie mówców i jeden głos na mówcę
W zestawie
Dostawca diaryzacji oraz własna logika przypisywania głosów
Muzyka w tle i efekty zachowane
W zestawie
Krok oddzielania ścieżek, który musisz sam zbudować i dostroić
Języki bez klonowania głosu
Gotowe głosy AI
Inny dostawca technologii text-to-speech
Synchronizacja ruchu warg
Opcjonalnie, rozliczane osobno
Odrębny dostawca
Zmiana głosu jednego mówcy
Ponowny dubbing tego mówcy, opłata naliczana za zmienione fragmenty
Ponowne uruchomienie całego procesu dla pliku
Limity zapytań
Brak
Wszystko, czego wymaga Twój najsurowszy dostawca
Głos lub język spoza katalogu
Do ustalenia z naszym zespołem
Zależy od każdego dostawcy
Najczęściej zadawane pytania

API klonowania głosu: często zadawane pytania

Nie możesz znaleźć tego, czego szukasz? Skontaktuj się z działem sprzedaży.

Czy istnieje API do klonowania głosu?

Jak działa klonowanie głosu za pomocą API?

Jaka jest różnica między błyskawicznym a niestandardowym klonowaniem głosu?

Czy mogę utworzyć niestandardowy klon głosu przez API?

Jakie audio jest potrzebne do stworzenia niestandardowego klonu głosu?

Które języki obsługują klonowanie głosu?

Czy mogę używać API klonowania głosu jako syntezatora mowy (text-to-speech)?

Jak zmienić głos osoby mówiącej po zakończeniu dubbingu?

Ile niestandardowych głosów mogę zapisać?

Czy do sklonowania głosu wymagana jest zgoda?

Czy sklonowany głos zachowuje emocje i akcent osoby mówiącej?

Czy mogę używać sklonowanych głosów do celów komercyjnych?

Ile kosztuje klonowanie głosu?

Rozpocznij dubbingowanie w jedno popołudnie

Wyślij swoje pierwsze zapytanie już dziś i skontaktuj się z nami, gdy potrzebujesz warunków dla dużych wolumenów lub języka, którego nikt inny nie ma.