Hoppa till huvudinnehåll
Den här artikeln introducerar en typ av Kling Motion Generation API-integrationsinstruktioner, som kan generera Kling:s officiella videor genom att ange anpassade parametrar.

Ansökningsprocess

För att använda Kling Motion Generation API, gå först till Ace Data Cloud-konsolen för att hämta din API Token och spara den för senare användning. Om du ännu inte har loggat in eller registrerat dig, omdirigeras du automatiskt till inloggningssidan för att bli inbjuden att registrera dig och logga in, och när det är klart återvänder du automatiskt till den aktuella sidan. En API Token kan anropa alla plattformens tjänster, utan att behöva ansöka separat för varje tjänst. Vid första ansökan får du gratis kvot och kan prova gratis; när kvoten är otillräcklig kan du fylla på det gemensamma saldot i konsolen.
📘 Fullständig dokumentation: Kling Motion Generation API →

Grundläggande användning

Förstå först den grundläggande användningen, det vill säga ange promptord prompt, referensbild image_url samt referensvideolänk video_url, så kan du få det bearbetade resultatet, och sedan behöver vi även ange modellen mode, för närvarande finns främst modellerna std, pro, det specifika innehållet är följande:

Här kan vi se att vi har ställt in Request Headers, inklusive:
  • accept: vilket format på svarsresultatet som önskas tas emot, här anges application/json, det vill säga JSON-format.
  • authorization: nyckeln för att anropa API:t, efter ansökan kan den väljas direkt från rullgardinsmenyn.
Dessutom har Request Body ställts in, inklusive:
  • image_url: URL till referensbild för personens utseende. Stöder JPG/JPEG/PNG, fil ≤50MB, både bredd och höjd ≥300px, bildförhållande 1:2.5~2.5:1; personen ska tydligt visa överkropp eller helkropp samt huvud.
  • video_url: URL till referensvideo för rörelse. Stöder MP4/MOV, fil ≤100MB, både bredd och höjd 340–3850px, minst 3 sekunder; när character_orientation=image är den längsta tiden 10 sekunder, när character_orientation=video är den längsta tiden 30 sekunder. Det rekommenderas att använda en kontinuerlig video med en enda tagning där personen alltid är i bild.
  • mode: läget för att generera video, främst standardläget std och ultrasnabba läget pro.
  • keep_original_sound: du kan välja om videons ursprungliga ljud ska behållas, uppräkningsvärden: yes, no.
  • character_orientation: personens orientering i den genererade videon, du kan välja att den ska överensstämma med bilden eller videon, uppräkningsvärden: image, video.
  • prompt: promptord.
  • callback_url: URL som behöver få återuppringningsresultatet.
  • async: valfritt, när det ställs in på true returnerar gränssnittet omedelbart task_id, utan att behöva ange callback_url, och sedan hämtas resultatet genom polling via motsvarande gränssnitt för uppgiftsfrågor.
Efter val kan du se att motsvarande kod även genereras till höger, som visas i bilden:

Klicka på knappen ”Try” för att testa, som visas i bilden ovan, här får vi följande resultat:
Det returnerade resultatet har flera fält, som introduceras nedan:
  • success, statusen för videogenereringsuppgiften vid detta tillfälle.
  • task_id, ID:t för videogenereringsuppgiften vid detta tillfälle.
  • video_id, video-ID:t för videogenereringsuppgiften vid detta tillfälle.
  • video_url, videolänken för videogenereringsuppgiften vid detta tillfälle.
  • duration, videolängden för videogenereringsuppgiften vid detta tillfälle.
  • state, statusen för videogenereringsuppgiften vid detta tillfälle.
Vi kan se att vi har fått tillfredsställande videoinformation, vi behöver bara hämta den genererade Kling-videon enligt videolänkadressen i resultatets data. Om du dessutom vill generera motsvarande integrationskod kan du direkt kopiera den som genereras, till exempel är CURL-koden följande:

Asynkron återuppringning

Eftersom tiden för generering med Kling Motion Generation API är relativt lång, ungefär 1–2 minuter, kommer HTTP-begäran att fortsätta hålla anslutningen om API:t inte svarar under lång tid, vilket leder till ytterligare förbrukning av systemresurser, därför erbjuder detta API även stöd för asynkron återuppringning. Det övergripande flödet är: när klienten initierar en begäran anges ytterligare ett fält callback_url, efter att klienten har initierat API-begäran returnerar API:t omedelbart ett resultat som innehåller fältinformationen task_id, som representerar det aktuella uppgifts-ID:t. När uppgiften är klar skickas resultatet av videogenereringen i form av POST JSON till den callback_url som klienten har angett, där även fältet task_id ingår, så att uppgiftsresultaten kan kopplas samman genom ID:t. Nedan använder vi ett exempel för att förstå hur den specifika åtgärden utförs. Först är Webhook-återuppringningen en tjänst som kan ta emot HTTP-begäranden, utvecklare bör ersätta den med URL:en till sin egen uppbyggda HTTP-server. För att underlätta demonstrationen används här en offentlig Webhook-exempelwebbplats https://webhook.site/, öppna denna webbplats för att få en Webhook URL, som visas i bilden: Kopiera denna URL, så kan den användas som Webhook, exemplet här är https://webhook.site/624b2c78-6dbd-4618-9d2b-b32eade6d8c3. Därefter kan vi ställa in fältet callback_url till ovanstående Webhook URL och samtidigt fylla i motsvarande parametrar, det specifika innehållet visas i bilden:

Klicka på kör, så kan du se att ett resultat omedelbart erhålls, enligt följande:
Vänta en stund, så kan vi på https://webhook.site/624b2c78-6dbd-4618-9d2b-b32eade6d8c3 observera resultatet av den genererade videon, som visas i bilden: Innehållet är följande:
Det går att se att det finns ett fält task_id i resultatet, och de övriga fälten liknar de ovan, och uppgiftsassociation kan uppnås genom detta fält.

Felhantering

När API:et anropas, om ett fel uppstår, returnerar API:et motsvarande felkod och information. Till exempel:
  • 400 token_mismatched:Felaktig begäran, möjligen på grund av saknade eller ogiltiga parametrar.
  • 400 api_not_implemented:Felaktig begäran, möjligen på grund av saknade eller ogiltiga parametrar.
  • 401 invalid_token:Obehörig, ogiltig eller saknad auktoriseringstoken.
  • 429 too_many_requests:För många begäranden, du har överskridit hastighetsgränsen.
  • 500 api_error:Internt serverfel, något gick fel på servern.

Exempel på felsvar

Slutsats

Genom detta dokument har du redan lärt dig hur du använder Kling Motion Generation API för att implementera Kling officiella rörelsekontrollfunktion. Vi hoppas att detta dokument kan hjälpa dig att bättre integrera och använda detta API. Om du har några frågor, vänligen kontakta vårt tekniska supportteam när som helst.