Örnek Oran Dönüşümü

Bu makalede, Android içinde yeniden örnekleme olarak da bilinen örnekleme oranı dönüşümü açıklanmaktadır. Örnek oranı dönüşümüyle ilgili terminoloji için Terminoloji'ye bakın.

Numune hızı dönüşümü, farklı bir numune hızında bir numune hızından başka bir akışa ayrı numune akışını değiştirme işlemidir. Örnekleme hızı dönüştürücü veya yeniden örnekleyici, örnekleme hızı dönüşümünü uygulayan bir modüldür. Yeniden örnekleyici ile ilgili olarak, orijinal akış kaynak sinyali olarak adlandırılır ve yeniden örneklenen akış, havuz sinyali olarak adlandırılır.

Bayiler, Android'de çeşitli yerlerde kullanılmaktadır. Örneğin, bir MP3 dosyası 44.1 kHz örnek hızında kodlanmış olabilir, ancak dahili olarak 48 kHz sesi destekleyen bir Android cihazda oynatılması gerekir. Bu durumda, MP3 çıkış sesini 44.1 kHz kaynak örnekleme hızından Android cihazda kullanılan 48 kHz havuz örnekleme hızına yükseltmek için bir yeniden örnekleyici kullanılacaktır.

Bir yeniden örnekleyicinin özellikleri, aşağıdakiler dahil metrikler kullanılarak ifade edilebilir:

  • sinyalin genel genliğinin korunma derecesi
  • sinyalin frekans bant genişliğinin korunma derecesi, havuz örnekleme hızının sınırlamalarına tabi
  • yeniden örnekleyici aracılığıyla genel gecikme
  • frekansa göre tutarlı faz ve grup gecikmesi
  • CPU döngüleri veya güç çekişiyle ifade edilen hesaplama karmaşıklığı
  • kaynak ve havuz örnek oranlarının izin verilen oranları
  • örnekleme oran oranlarını dinamik olarak değiştirme yeteneği
  • hangi dijital ses örnek formatları desteklenir

İdeal yeniden örnekleyici, kaynak sinyalin genliğini ve frekans bant genişliğini tam olarak koruyacak (havuz örnek hızının sınırlamalarına tabi), minimum ve tutarlı gecikmeye sahip olacak, minimum hesaplama karmaşıklığına sahip olacak, keyfi ve dinamik dönüşüm oranlarına izin verecek ve tüm yaygın dijital ses örnek formatlarını destekleyecektir. . Uygulamada, gerçek yeniden örnekleyiciler bu özellikler arasında bir uzlaşma olduğu için ideal yeniden örnekleyiciler mevcut değildir. Örneğin, ideal kalite hedefleri kısa gecikme ve düşük karmaşıklık ile çatışır.

Android, çeşitli ses yeniden örnekleyicileri içerir, böylece uygulama kullanım durumuna ve yüküne bağlı olarak uygun tavizler verilebilir. Mevcut yeniden örnekleyiciler, Yeniden Örnekleyici uygulamasında açıklanmıştır .

Yeniden örnekleyici uygulamaları

Kullanılabilir yeniden örnekleyici uygulamaları sık sık değişir ve OEM'ler tarafından özelleştirilebilir. Azalan sinyal bozulması ve artan hesaplama karmaşıklığı sırasıyla varsayılan yeniden örnekleyiciler şunları içerir:

  • doğrusal
  • kübik
  • orijinal katsayılarla samimi
  • revize edilmiş katsayılarla samimi

Genel olarak, samimi satıcılar daha yüksek kaliteli müzik çalma için daha uygundur ve diğer satıcılar kalitenin daha az önemli olduğu durumlar için ayrılmalıdır (bir örnek "anahtar tıklamalar" veya benzeri olabilir).

Seçilen belirli yeniden örnekleyici uygulaması, kullanım durumuna, yüke ve af.resampler.quality sistem özelliğinin af.resampler.quality . Ayrıntılar için AudioFlinger'daki ses yeniden örnekleyici kaynak koduna bakın .