Audio-Samples pro Sekunde?

7

Ich wundere mich über die Beziehung zwischen einem Block von Proben und seiner Zeitäquivalent. Angesichts meiner groben Idee bis jetzt:

Anzahl der pro Sekunde gespielten Samples = Gesamtgröße / Dauer.

Also sage ich, ich habe eine 1.02MB Datei und eine Dauer von 12 sec (avg), ich werde ungefähr 89.300 Samples pro Sekunde abspielen lassen. Ist das richtig?

Gibt es andere Möglichkeiten, dies zu berechnen? Zum Beispiel, wie kann ich wissen, wie viel ein Byte [1024] -Array in der Zeit äquivalent ist?

    
user488792 16.02.2011, 14:02
quelle

2 Antworten

17

Im Allgemeinen können Sie bei PCM-Samples die Gesamtlänge (in Bytes) durch die Dauer (in Sekunden) teilen, um die Anzahl der Bytes pro Sekunde zu erhalten (bei WAV-Dateien gibt es einige Ungenauigkeiten) Konto für den Header). Wie diese in Proben übersetzt werden, hängt von

ab
  1. die Abtastrate
  2. Bits, die pro Abtastwert verwendet werden, d verwendet wird 16 Bits = 2 Bytes
  3. Anzahl von Kanälen, d.h. für Stereo das ist 2

Wenn Sie 2) und 3) wissen, können Sie 1)

bestimmen

In Ihrem Beispiel 89300 Bytes / Sekunde, unter der Annahme, dass Stereo und 16 Bits pro Sample 89300/4 ~ = 22 kHz Abtastrate sind

    
BrokenGlass 16.02.2011, 14:09
quelle
14

Neben der sehr guten Antwort von @ BrokenGlass werde ich einfach hinzufügen, dass für unkomprimiertes Audio mit einer festen Abtastrate, Anzahl der Kanäle und Bits pro Sample die Arithmetik ziemlich einfach ist. Z.B. Für "CD-Qualität" -Audio haben wir eine Abtastrate von 44,1 kHz, 16 Bit pro Sample, 2 Kanäle (Stereo), daher ist die Datenrate:

%Vor%     
Paul R 16.02.2011 14:17
quelle

Tags und Links