Üretim

Mixanalytic API belgeleri

https://mixanalytic.com için resmî API referansı. Ses yüklemek ve seçilebilir modüller ile kompakt ya da tam yanıt modları kullanarak yapay zekâ destekli miks analizi almak için bu API'yi kullanın.

Temel URL: https://mixanalytic.com/api

Kimlik doğrulama

Her istekte API anahtarınızı X-API-Key başlığında gönderin.

curl -X GET "https://mixanalytic.com/api/test-data" \ -H "X-API-Key: YOUR_API_KEY"
  • 401 eksik veya geçersiz anahtar
  • 403 API erişimi olmayan ücretsiz plan anahtarı
  • 429 istek sınırı aşıldı

Kapsamlar: write, Mix Analyzer'da yükleme ve analiz içindir. content, hassas verileri gizlenmiş içerik araştırması verilerini okur. content_write, herkese açık olmayan içerik taslaklarını kaydeder. İçerik kapsamları yalnızca yöneticiler içindir.

Uç noktalar

Yöntem Yol Amaç
GET/api/test-dataBağlantı ve kimlik doğrulama kontrolü.
POST/api/uploadSes dosyası yükle ve analiz et.
GET/api/analyze/<file_id>Dosya kimliği ile yeniden analiz et (orijinal dosya hâlâ mevcutsa).
GET/api/content/analysis-feedİçerik ajanları için yalnızca yöneticilere açık, hassas verileri gizlenmiş araştırma akışı.
POST/api/content/draftsİçerik ajanları için yalnızca yöneticilere açık taslak kaydetme ve güncelleme uç noktası.
GET/api/ai-stats?days=30Yapay zekâ analizi kullanım istatistikleri.

Yükleme isteği

POST/api/upload

Alan Tür Gerekli Notlar
filemultipart fileEvetİzin verilenler: mp3, wav, flac, m4a, aac, ogg. En fazla 100MB.
modulesstring/listHayırBelirtilmezse varsayılan olarak tüm modüller kullanılır.
detail_levelstringHayırfull (varsayılan) veya summary.

Geçersiz detail_level, 400 döndürür. Boyut sınırını aşan dosyalar 413 döndürür.

Modül seçimi

Hangi analiz modüllerinin döndürüleceğini (ve hesaplanacağını) modules ile kontrol edin.

Desteklenen biçimler:

  • Virgülle ayrılmış metin: modules=frequency_balance,clarity,mood
  • JSON dizi metni: modules=["frequency_balance","clarity","mood"]
  • Tekrarlanan anahtar (sorgu/form): modules=frequency_balance&modules=clarity
  • Tüm modüller: modules=all veya modules=*
Modül Açıklama
frequency_balance7 bantlı frekans ve denge puanlaması.
dynamic_rangeDinamik aralık, tepe faktörü, PLR.
stereo_fieldGenişlik, faz ve korelasyon ölçümleri.
claritySpektral netlik ve belirginlik ölçümleri.
harmonic_contentTonalite ve harmonik karmaşıklık.
transientsAtak, transiyent yoğunluğu ve bas vuruş gücü verileri.
3d_spatialYükseklik, derinlik ve genişlik tutarlılığı.
surround_compatibilityMono uyumluluğu ve faz puanı.
headphone_optimizationKulaklıkla çalma optimizasyon puanı.
speaker_optimizationHoparlörle çalma optimizasyon puanı.
genreTür sınıflandırması ve güven düzeyi.
voiceVokal varlığı ve ses özellikleri.
instrumentsEnstrüman algılama ve düzenleme bilgileri.
moodEnerji ve valans içeren ruh hâli profili.
keywordsAnlamsal anahtar kelimeler ve etiketler.
loudnessLUFS, gerçek tepe, kırpma ve streaming hedeflerini ölçün; master yeterince yüksek kalsın, bozulma, codec tepeleri veya platform sürprizleri olmasın.
noiseGürültü tabanı, şebeke uğultusu, tıslama ve artefaktları ölçün; mastering onları yükseltip parlaklaştırarak gizlemeyi zorlaştırmadan kayıtları temizleyin.
format_qualityKayıplı kodlama, spektral kesim ve bit derinliğini kontrol edin; yayımdan önce bozulmuş MP3, AAC veya yükseltilmiş kaynaklarla yanlışlıkla mastering yapmayın.
referenceReferans
visualizationsAnaliz için oluşturulan görsel varlıkların URL'leri.
ai_insightsLLM tarafından oluşturulan özet ve öneriler.

Yanıt boyutu kontrolü

detail_level kullanın:

  • full (varsayılan): tam yanıt
  • summary: web ve mobil istemciler için kompakt yanıt

Örnekler

1) Yükleme ve tam analiz

curl -X POST "https://mixanalytic.com/api/upload" \ -H "X-API-Key: YOUR_API_KEY" \ -F "file=@/path/to/track.mp3"

2) Yükleme ve seçilen modüller

curl -X POST "https://mixanalytic.com/api/upload" \ -H "X-API-Key: YOUR_API_KEY" \ -F "file=@/path/to/track.mp3" \ -F "modules=frequency_balance,dynamic_range,genre,mood,keywords"

3) Yükleme, seçilen modüller ve özet yanıt

curl -X POST "https://mixanalytic.com/api/upload" \ -H "X-API-Key: YOUR_API_KEY" \ -F "file=@/path/to/track.mp3" \ -F "modules=frequency_balance,stereo_field,clarity,ai_insights" \ -F "detail_level=summary"

4) Test uç noktası

curl -X GET "https://mixanalytic.com/api/test-data" \ -H "X-API-Key: YOUR_API_KEY"

5) İstemci tarafı JavaScript

const formData = new FormData(); formData.append('file', fileInput.files[0]); formData.append('modules', 'frequency_balance,dynamic_range,mood,ai_insights'); formData.append('detail_level', 'summary'); const res = await fetch('https://mixanalytic.com/api/upload', { method: 'POST', headers: { 'X-API-Key': 'YOUR_API_KEY' }, body: formData }); const data = await res.json(); console.log(data.analysis, data.returned_modules);

Standart yanıt meta verileri

Başarılı analiz yanıtları şunları içerir:

  • requested_modules
  • returned_modules
  • detail_level
  • available_modules

Hata kodları

Durum Anlam Tipik neden
400Geçersiz istekGeçersiz modül/detail_level, eksik dosya alanı veya boş dosya.
401YetkisizEksik, geçersiz veya süresi dolmuş API anahtarı.
403YasakHesap düzeyi API erişimine izin vermiyor.
404Bulunamadı/api/analyze/<file_id> dosya artık kullanılamıyor (gizlilik nedeniyle silinmiş).
413İstek içeriği çok büyükDosya 100MB'den büyük.
429İstek sınırı aşıldıDakika, saat veya gün başına çok fazla istek.
500Sunucu hatasıAnaliz veya çalışma zamanı hatası.

Ön yüz notları

  • Web ve mobil istemcilerde detail_level=summary tercih edin.
  • Gecikmeyi ve yanıt boyutunu azaltmak için yalnızca ilk gösterimde gereken modülleri isteyin.
  • 429 ve 500 yanıtlarını yeniden deneme ve giderek artan bekleme süreleri ile işleyin.
  • Uzun süre geçerli üretim anahtarlarını herkese açık paketlerde paylaşmayın.