Hedra personažų animacija

Personažų animacija su puikiu garso sinchronizavimu. Atgaivinkite portretus su natūraliomis išraiškomis ir judesiais.

✓ Personažų animacija

✓ Garso sinchronizavimas

✓ Portretai

✓ Išraiškų valdymas

Autentifikavimas

Norėdami pasiekti Hedra per „Doitong“ API, naudokite savo „Doitong“ API raktą. Įtraukite jį į „GraphQL“ mutaciją arba REST API antraštes.

Svarbu: Saugokite savo „Doitong“ API raktą ir niekada nenaudokite jo kliento pusės kode. API užklausas visada vykdykite iš savo serverio.
// GraphQL Header
{
  "Authorization": "Bearer YOUR_API_KEY"
}

// REST Header
"X-API-Key": "YOUR_API_KEY"

Greita pradžia

Pradėkite naudotis Hedra Lip Sync API vos per kelias minutes. Atlikite šiuos paprastus veiksmus, kad sugeneruotumėte savo pirmąjį avatar.

1 žingsnis: Gaukite API raktą

Užsiregistruokite „Doitong“ paskyroje ir eikite į valdymo skydą, kad sugeneruotumėte API raktą.

2 žingsnis: Atlikite pirmąją užklausą

Pasinaudokite vienu iš žemiau pateiktų kodo pavyzdžių savo pirmajai API užklausai.

curl -X POST https://api.doitong.com/graphql \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{
    "query": "mutation Generate($input: GenerateInput!) { generate(input: $input) { id status type provider url metadata creditCost } }",
    "variables": {
      "input": {
        "type": "AVATAR",
        "provider": "hedra",
        "input": {
          "text": "Hello, welcome to our platform!",
          "avatarId": "professional-1"
        },
        "options": {
          "voice": "en-US-neural"
        }
      }
    }
  }'
const response = await fetch('https://api.doitong.com/graphql', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer YOUR_API_KEY'
  },
  body: JSON.stringify({
    query: `
      mutation GenerateAvatar($input: AvatarGenerationInput!) {
        generateAvatar(input: $input) {
          id
          status
          videoUrl
        }
      }
    `,
    variables: {
      input: {
        service: 'hedra',
        text: 'Hello, welcome to our platform!',
        avatarId: 'professional-1',
        voice: 'en-US-neural'
      }
    }
  })
});

const data = await response.json();
console.log('Avatar Video:', data.data.generateAvatar);
import requests
import json

url = "https://api.doitong.com/graphql"
headers = {
    "Content-Type": "application/json",
    "Authorization": "Bearer YOUR_API_KEY"
}

query = """
mutation Generate($input: GenerateInput!) {
  generate(input: $input) {
    id
    status
    type
    provider
    url
    metadata
    creditCost
  }
}
"""

variables = {
    "input": {
        "type": "AVATAR",
        "provider": "hedra",
        "input": {
            "text": "Hello, welcome to our platform!",
            "avatarId": "professional-1"
        },
        "options": {
            "voice": "en-US-neural"
        }
    }
}

response = requests.post(url, json={
    "query": query,
    "variables": variables
}, headers=headers)

data = response.json()
print("Result:", data["data"]["generate"])
mutation Generate($input: GenerateInput!) {
  generate(input: $input) {
    id
    status
    type
    provider
    url
    metadata
    creditCost
    createdAt
  }
}

# Variables
{
  "input": {
    "type": "AVATAR",
    "provider": "hedra",
    "input": {
      "text": "Hello, welcome to our platform!",
      "avatarId": "professional-1"
    },
    "options": {
      "voice": "en-US-neural",
      "language": "en",
      "version": "hedra-1.0"
    }
  }
}

Kainodara

Hedra Lip Sync API naudoja kreditais pagrįstą kainodaros modelį. Kreditai nurašomi atsižvelgiant į kuriamo turinio sudėtingumą ir trukmę.

Funkcija Kreditai Aprašymas
Trumpas vaizdo įrašas 50-100 Kreditai Iki 30 sekundžių
Ilgas vaizdo įrašas 200-500 Kreditai Nuo 30 sekundžių iki 2 minučių

API prieigos taškai

Hedra Lip Sync API paslauga pasiekiama per mūsų bendrą „GraphQL“ prieigos tašką.

GraphQL prieigos taškas

POST https://api.doitong.com/graphql

REST prieigos taškas

POST https://api.doitong.com/v1/avatar

Parametrai

Galimi Hedra Lip Sync API užklausų parametrai:

Parametras Tipas Privaloma Aprašymas
service String Yes Paslaugos identifikatorius: "hedra"
version String No Model version: "hedra-1.0"
webhookUrl String No URL adresas pranešimams apie užbaigimą gauti

Atsakymo formatas

Visi API atsakymai pateikiami vienodu formatu:

Sėkmingas atsakymas

{
  "data": {
    "avatar": {
      "id": "abc123xyz",
      "status": "processing",
      "url": null,
      "webhookUrl": "https://your-webhook.com/callback",
      "createdAt": "2024-01-01T00:00:00Z"
    }
  }
}

Užbaigtas atsakymas

{
  "data": {
    "avatar": {
      "id": "abc123xyz",
      "status": "completed",
      "url": "https://cdn.doitong.com/outputs/abc123xyz.mp3",
      "duration": null,
      "createdAt": "2024-01-01T00:00:00Z"
    }
  }
}

Klaidų valdymas

API naudoja standartinius HTTP būsenos kodus ir pateikia išsamius klaidų pranešimus.

Dažni klaidų kodai

Būsenos kodas Klaidos tipas Aprašymas
400 Bad Request Invalid parameters or malformed request
401 Unauthorized Missing or invalid API key
402 Payment Required Insufficient credits
429 Too Many Requests Rate limit exceeded
500 Internal Server Error Server error, please retry

Klaidos atsakymo formatas

{
  "errors": [
    {
      "message": "Insufficient credits for this operation",
      "extensions": {
        "code": "INSUFFICIENT_CREDITS",
        "creditsRequired": 100,
        "creditsAvailable": 50
      }
    }
  ]
}

Webhooks

Gaukite pranešimus realiuoju laiku, kai jūsų avatar kūrimas bus baigtas.

Webhooks nustatymas

Include a <code>webhookUrl</code> parameter in your request to receive a POST notification when processing is complete.

Webhook duomenys

{
  "id": "abc123xyz",
  "status": "completed",
  "url": "https://cdn.doitong.com/outputs/abc123xyz.mp3",
  "service": "hedra",
  "createdAt": "2024-01-01T00:00:00Z",
  "completedAt": "2024-01-01T00:01:00Z",
  "metadata": {
    "duration": null,
    "width": null,
    "height": null
  }
}

Webhook saugumas

Visos webhook užklausos turi parašo antraštę patikrai:

X-Doitong-Signature: sha256=abc123...

Užklausų ribojimai

Siekiant užtikrinti sąžiningą naudojimąsi ir sistemos stabilumą, taikomi šie ribojimai:

Planas Užklausos per minutę Lygiagretūs darbai Dienos limitas
Nemokamas 10 1 100
Starter 30 3 1,000
Pro 60 10 10,000
Enterprise Individualus Individualus Neribota
Ribojimų antraštės: Dabartinę ribojimų būseną tikrinkite atsakymo antraštėse:
  • X-RateLimit-Limit: Maximum requests per window
  • X-RateLimit-Remaining: Requests remaining
  • X-RateLimit-Reset: Window reset timestamp

Geriausios praktikos

1. Optimizuokite užklausas

Rašykite aiškias, aprašomąsias užklausas (prompts) geriausiems rezultatams pasiekti:

  • Be specific about visual elements, style, and mood
  • Include details about lighting, camera angles, and composition
  • Avoid contradictory or impossible requests

2. Valdykite asinchroninį apdorojimą

Kūrimas vyksta asinchroniškai. Įdiekite tinkamą būsenos tikrinimą (polling) arba naudokite webhooks:

// Polling example
async function pollStatus(jobId) {
  let status = 'processing';
  while (status === 'processing') {
    await sleep(2000); // Wait 2 seconds
    const result = await checkJobStatus(jobId);
    status = result.status;
  }
  return result;
}

3. Klaidų atitaisymas

Įdiekite pakartotinio bandymo logiką su eksponentiniu atidėjimu:

async function retryWithBackoff(fn, maxRetries = 3) {
  for (let i = 0; i < maxRetries; i++) {
    try {
      return await fn();
    } catch (error) {
      if (i === maxRetries - 1) throw error;
      await sleep(Math.pow(2, i) * 1000);
    }
  }
}

4. Stebėkite kreditų likutį

Sekite kreditų suvartojimą, kad išvengtumėte paslaugų pertrūkių:

  • Check credit balance before large batch operations
  • Set up alerts for low credit thresholds
  • Implement credit-aware request queuing

Pasiruošę pradėti?

Prisijunkite prie tūkstančių kūrėjų, naudojančių Hedra Lip Sync API nuostabiam turiniui kurti

Gauti API raktą Peržiūrėti kainas