Zugehöriges Audioattribut Teil 3


Free Download Mp4Gain
picture

Zugehöriges Audioattribut Teil 3

Sample Rate

Wie Proben kombiniert werden

Sample Rate

Dies gilt hauptsächlich für Zweikanal- oder Mehrkanal-Audio.Für Zweikanal-Audio kann es auf die folgenden zwei Arten kombiniert werden:

verschachtelt Am Beispiel von Stereo wird ein Stereo-Audio-Sample erhalten, indem die Speicherung von zwei Mono-Samples verschachtelt wird.
eben. Die Samples jedes Kanals werden separat gespeichert.

Die Daten nach der FFmpeg-Audiodekodierung werden in der AVFrame-Struktur gespeichert.

Im gepackten Format enthält frame.data[0] oder frame.extended_data[0] alle Audiodaten.
Im Planar-Format stellt frame.data[i] oder frame.extended_data[i] die Daten des i-ten Kanals dar (unter der Annahme, dass Kanal 0 der erste ist), die Größe des AVFrame.data-Arrays wird auf 8 gesetzt, wenn If die Anzahl der Kanäle 8 überschreitet, sollten Sie die Kanaldaten aus frame.extended_data abrufen.

Musterformat
Die Beispielformate in FFmpeg sind hauptsächlich:

Code kopieren
Aufzählung AVSampleFormat {
AV_SAMPLE_FMT_NONE = – 1 ,
AV_SAMPLE_FMT_U8, /// < 8 Bit ohne Vorzeichen
AV_SAMPLE_FMT_S16, /// < 16 Bit
signiert AV_SAMPLE_FMT_S32, /// < 32 Bit
signiert AV_SAMPLE_FMT_FLT, /// <float
AV_SAMPLE_FMT_DBL, /// < doppelt

AV_SAMPLE_FMT_U8P, /// < 8 Bit ohne Vorzeichen, flach
AV_SAMPLE_FMT_S16P, /// < 16 Bit mit Vorzeichen, flach
AV_SAMPLE_FMT_S32P, /// < 32 Bit mit Vorzeichen, flach
AV_SAMPLE_FMT_FLTP, /// < float, flach
AV_SAMPLE_FMT_DBLP, /// < doppelt, flach
AV_SAMPLE_FMT_S64, /// < 64 Bit
signiert AV_SAMPLE_FMT_S64P, /// < 64 Bit signiert, einfach

AV_SAMPLE_FMT_NB /// < Anzahl der Beispielformate NICHT VERWENDEN, wenn dynamisch verknüpft
};
Code kopieren
um zu zeigen:

1. U8 (8-Bit-Ganzzahl ohne Vorzeichen), S16 (16-Bit-Ganzzahl), S32 (32-Bit-Ganzzahl), FLT (Gleitkommatyp mit einfacher Genauigkeit), DBL (Gleitkommatyp mit doppelter Genauigkeit), S64 (64-Bit-Ganzzahl), diejenigen, die nicht mit P enden, sind verschachtelte Strukturen, und diejenigen, die mit P enden, sind flache Strukturen.
2. Der Flat-Modus ist der interne Speichermodus von FFmpeg, und die von uns verwendeten Audiodateien befinden sich im gepackten Modus.
3. Das FFmpeg-Audiobeispielformat, das verschiedene Ausgabeaudioformate dekodiert, ist nicht dasselbe. Der Test ergab, dass die Datenausgabe durch AAC-Decodierung im Fließkommaformat AV_SAMPLE_FMT_FLTP und die Datenausgabe durch MP3-Decodierung im AV_SAMPLE_FMT_S16P-Format vorliegt (die verwendete mp3-Datei ist 16 Bit tief). Für das spezifische Beispielformat können Sie das Format-Member im decodierten AVFrame oder das sample_fmt-Member im AVCodecContext des Decoders sehen.

Bitrate
Die Übertragungsrate pro Sekunde (Bitrate, auch Bitrate genannt). Wie 705,6 kbps oder 705600 bps, wobei b ein Bit ist, ist ps pro Sekunde (pro Sekunde), was eine Kapazität von 705600 Bit pro Sekunde bedeutet. Komprimierte Audiodateien werden oft mit doppelter Geschwindigkeit dargestellt, MP3 beispielsweise in CD-Qualität mit 128 kbps/44100 Hz. Beachten Sie, dass die Einheit hier Bit statt Byte ist. Ein Byte entspricht 8 Bits (Bits). Das Bit ist die kleinste Einheit. Es wird im Allgemeinen verwendet, um die Netzwerkgeschwindigkeit und verschiedene Kommunikationsgeschwindigkeiten zu beschreiben. Das Byte wird zur Berechnung der Größe verwendet. Festplatte und Arbeitsspeicher.

Mbps ist: Millionbit pro Sekunde (Millionen von Bits pro Sekunde);
Kbps ist: Kilobit pro Sekunde (Kilobit pro Sekunde);
bps ist: Bit pro Sekunde (Bit pro Sekunde), das entsprechende Konvertierungsverhältnis ist:

1 Million Bit = 1000 Kilobit = 1000000 Bit; 1 Mbps = 1000.000 bps; Auch hier handelt es sich um die Geschwindigkeitseinheit, die sich auf die Anzahl der pro Sekunde übertragenen Bits bezieht. Die Maßeinheit für die Datenübertragungsgeschwindigkeit K ist die dezimale Bedeutung, aber das K für die Datenspeicherung ist die binäre Bedeutung. Z.B:

Die allgemein beschriebene 1M-Bandbreite ist 1 Mbps = 1.000.000 bps = 1.000.000 / 8 / 1.000 = 125; Daher überschreitet die Download-Geschwindigkeit von 1 MB Bandbreite im Allgemeinen 125 KB/s nicht
. 1000 = 12,5, sodass die maximale Downloadrate von 100 MB Bandbreite 12,5 MB/s erreichen kann
. Natürlich ist das Obige nur der theoretische Satz. Tatsächlich kann die maximale Downloadrate nicht so hoch sein und wird hauptsächlich von verschiedenen Verlusten beeinflusst, im Allgemeinen 100 MB. Eine Breitband-Downloadrate von 10 MB ist nicht schlecht.


Free Download Mp4Gain
picture

Zugehöriges Audioattribut Teil 2

Zugehöriges Audioattribut Teil 2

Sampling

Je höher das Sampling, desto realistischer und natürlicher wird der Klang.

Sampling

Der Frequenzerkennungsbereich für Menschen beträgt 20 HZ – 20.000 HZ. Wenn 20.000 Samples pro Sekunde gesampelt werden können, reicht dies aus, um die Bedürfnisse des menschlichen Ohrs während der Wiedergabe zu befriedigen. Also 22050 Die Abtastrate wird häufig verwendet, 44100 ist bereits CD-Qualität, und Abtasten über 48000 ist für das menschliche Ohr nicht mehr aussagekräftig. Dies ist vergleichbar mit einem Bild mit 24 Bildern pro Sekunde aus einem Film.

Sampling-Bits
Nach dem Sampling des Audios für ein Sample müssen zwei Schritte für das Sample durchgeführt werden:

1. Quantifizieren. Die üblicherweise für die Audioquantisierung verwendeten Quantisierungsbits sind:

8 Bit (d. h. 1 Byte) können nur 256 Zahlen registrieren, d. h. nur die Amplitude kann in 256 Stufen unterteilt werden;

16 Bit (dh 2 Byte) können so klein wie 65536 Zahlen sein, was bereits der CD-Standard ist;

32 Bit (also 4 Byte) können die Amplitude in 4294967296 Stufen unterteilen, was wirklich unnötig ist.

Die Anzahl der Quantisierungsbits wird auch als Anzahl der Abtastbits, Bittiefe und Auflösung bezeichnet und bezieht sich darauf, in wie viele Stufen die kontinuierliche Intensität des Klangs unterteilt werden kann, nachdem sie digital dargestellt wurde. N-Bit bedeutet, dass die Intensität des Tons gleichmäßig in 2^N Stufen aufgeteilt wird. 16 Bit, es ist Level 65535. Dies ist eine sehr große Zahl und Menschen können den Unterschied in der Schallintensität von 1/65.535 möglicherweise nicht erkennen. Man kann auch sagen, dass es an der Auflösung der Soundkarte liegt. Je höher der Wert, desto höher die Auflösung und desto größer die Fähigkeit, Ton zu erzeugen. Das Abtastvielfache adressiert hier hauptsächlich die Stärkeeigenschaften des Signals, und die Abtastrate adressiert die Zeit-(Frequenz-)Eigenschaften des Signals, die zwei unterschiedliche Konzepte sind.

2. Binäre Kodierung. Das heißt, das Ergebnis der Quantisierung, dh der Einzelkanalabtastwert, wird in einem binären Schlüsselwort gespeichert. Es gibt zwei Speichermethoden:

Speichern Sie das Ergebnis der Quantisierung direkt im Cast, dh den Zweierkomplementcode;

Das Ergebnis der Quantisierung wird im Gleitkommatyp gespeichert, dh im Gleitkomma-Codierungscode.

Die meisten PCM-Sample-Datenformate verwenden Ganzzahlen zum Speichern, und für einige Anwendungen, die eine hohe Genauigkeit erfordern, verwenden Sie Fließkommazahlen, um PCM-Sample-Daten darzustellen.

rahmen
Nachdem das Audio in ein binäres Codewort quantisiert wurde, muss es transformiert werden, und die Transformation (MDCT) erfolgt in Blockeinheiten, und ein Block besteht aus mehreren (120 oder 128) Samples. Ein Rahmen enthält einen oder mehrere Blöcke. Übliche Rahmengrößen sind 960, 1024, 2048, 4096 usw. Ein Frame zeichnet eine Toneinheit auf, deren Dauer das Produkt aus der Abtastdauer und der Anzahl der Kanäle ist. Die nb_samples in der AVFrame-Struktur in FFmpeg repräsentieren die Anzahl der Einzelkanal-Audio-Samples in einem Frame.

Zugehöriges Audioattribut

Zugehöriges Audioattribut

Sample Rate

Kanal, Abtastrate, Abtastbits, Abtastformat, Bitrate

Sample Rate

Das aus der Audioabtastung erhaltene PCM enthält drei Elemente: Kanal, Abtastrate und Abtastrate.

Kanal
Wenn Menschen den Ton hören, können sie die Tonquelle lokalisieren. Durch das Einstellen der Schallquelle auf verschiedene Positionen kann ein besseres Hörerlebnis geschaffen werden. Wenn die Position des Tons mit dem Bild angepasst wird, wird ein besseres audiovisuelles Erlebnis erzielt. Wirkung. Gängige Kanäle sind:

Affe Affe
Zwei Kanäle, Stereo, der gebräuchlichste Typ, einschließlich linkem und rechtem Kanal
2.1-Kanäle, Hinzufügen eines Basskanals auf der Basis von zwei Kanälen
5.1-Kanäle, einschließlich eines vorderen Kanals, eines vorderen linken Kanals, eines vorderen rechten Kanals, eines linken Surround-Kanals, eines rechten Surround-Kanals und eines Bass-Kanals, die erstmals in frühen Theatern verwendet wurden
7.1-Kanal, basierend auf 5.1-Kanal werden die linken und rechten Surround-Kanäle in linke und rechte Surround-Kanäle und hintere linke und rechte Kanäle unterteilt, die hauptsächlich in BD und modernen Theatern verwendet werden
Als nächstes kommt ein Zweikanal-Audiosystem.

Abtastrate
Audio-Sampling ist die Umwandlung von Ton von einem analogen Signal in ein digitales Signal. Die Abtastrate gibt an, wie oft der Ton pro Sekunde erfasst wird, und ist auch die Anzahl der Abtastungen pro Sekunde des resultierenden digitalen Signals. Übliche Abtastraten beim Sampling von Ton sind:

8.000 Hz – Telefonabtastrate, ausreichend für menschliche Sprache
11.025 Hz – Abtastrate für AM-Radio
22.050 Hz und 24.000 Hz – Abtastrate für UKW-Radio
32.000 Hz – Sampling für digitalen MiniDV-Camcorder, DAT (LP-Modus)
44.100 Hz – Audio-CD, auch häufig verwendet in MPEG-1-Audio (VCD, SVCD, MP3) Abtastrate 47.250
Hz – Abtastfrequenz
48.000 Hz für handelsübliche PCM-Recorder – für miniDV, Digital-TV, DVD, DAT, Filme und Pro-Audio Abtastrate 50.000 Hz für 2.000 – 96.000 oder 192.000 Hz Digitalton
für kommerzielle digitale Tonaufnahmegeräte
– DVD-Audio, einige LPCM DVD Soundtracks, BD-ROM (Blu-ray Disc) und HD-DVD (High Definition DVD) Soundtracks Die von der Audiospur verwendete Abtastrate
2,8224 MHz: Die vom 1-Bit-Sigma-Delta-Modulationsprozess von Direct Stream Digital verwendete Abtastrate.

Audio-Intro Teil 3

Audio-Intro Teil 3

Audio Intro

WAV

Audio Intro

Struktur
Dateikopf
Das WAV-Format folgt dem RIFF Resource Interchange File Format, also ist das WAV-Format eigentlich eine dreischichtige Beziehung, die hier vereinfacht wird. Sein Datei-Header-Format ist wie folgt:

Adressieren Sie Inhalte vom Carving-Typ
00H-03H 4 Zeichen * 4 Flag für den Austausch von RIFF-Ressourcendateien
04H-07H 4 unsigned int Die Anzahl der Bytes von der nächsten Adresse bis zum Ende der Datei.
08H-0BH 4 Zeichen * 4 WAV-Datei WAVE-Logo
0CH-0FH 4 Zeichen * 4 fmt Wave-Datei-Flag, die letzte Ziffer ist 0x20 Leerzeichen
10H-13H 4 unsigned int Die Größe des Subchunk-Dateiheaders. Für das WAV-Subfragment ist der Wert 0x10.
14H-15H 2 kurz ohne Vorzeichen Formattyp, wenn der Wert 1 ist, bedeutet dies, dass die Daten lineare PCM-Codierung sind
16H-17H 2 kurze vorzeichenlose Anzahl von Kanälen
18H-1BH 4 int unsigned Abtastrate
1CH-1FH 4 int unsigned Wavefile Bytes pro Sekunde = Abtastrate Bittiefe PCM / 8 Kanäle
20H-21H 2 kurze vorzeichenlose DATA-Datenblockeinheitslänge = Anzahl der Kanäle * PCM-Bittiefe / 8
22H-23H 2 kurze vorzeichenlose Bittiefe PCM
24H-27H 4 Zeichen * 4 Datenstempeldaten
28H-2BH 4 unsigned int Gesamtlänge des Datenteils (Bytes)
struct WAVHeader
{ Zeichen RIFF[ 4 ]; ///Ressourcendatei-Austausch-Flag RIFF unsigned LEN; ///Anzahl Bytes von der nächsten Adresse bis zum Ende der Datei char WAV[ 4 ]; ///WAV-Datei-Flag WAVE char FMT [ 4 ]; ///FMT-Dateizeiger winken, letzte Ziffer ist 0x20 Leerzeichen unsigned SubchunkSize; ///Die Größe des Sub-Chunk-Dateiheaders, für WAV ist dieser Sub-Chunk der Wert 0x10 DATATYPE short unsigned; / //Formattyp, wenn der Wert 1 ist, bedeutet dies, dass die Daten vorzeichenlose lineare PCM-Codierung short CH sind; ///Anzahl der vorzeichenlosen Kanäle F; ///Vorzeichenlose Abtastrate BYTERATE; ///Anzahl der Bytes pro Sekunde der Wave-Datei = Abtastrate*PCM-Bittiefe/8*Anzahl der vorzeichenlosen Kanäle

kurz DATAUNITLEN; ///Länge der Datenblockeinheit = Kanalnummer * Bittiefe PCM/8 unsigned short BITDEPTH; ///Bittiefenzeichen PCM DATA[ 4 ]; ///Datenflag data unsigned DATALEN ; ///Teilliche Gesamtlänge der Daten (Bytes) };

Datenorganisation
Nach dem Dateikopf folgt der Datenteil der WAV-Datei. Seine Datenorganisation ist: der linke Kanalwert des ersten Abtastpunkts, der rechte Kanalwert des ersten Abtastpunkts, …, der linke Kanalwert des letzten Abtastpunkts, der rechte Kanalwert des letzten Abtastpunktwerts. Jeder Wert hat eine Bittiefe von Bits.

Generieren Sie eine einfache wav
Vervollständigen Sie zuerst den Wav-Header.

WAVHeader getHeader ( int Zahl )
{
WAV-Header-Auflösung; memcpy (res.RIFF, “RIFF” , sizeof (res.RIFF)); memcpy (res.WAV, “WAVE” , sizeof (res.WAV)); memcpy (res.FMT, “fmt” , Größe von ( res.FMT )); res.SubchunkSize= 0x10 ; res.DATENTYP= 1 ; res.CH= 2 ; res.F=F; res.BITDEPTH=TIEFE; res.BYTERATE=res.F*res.BITDEPTH/ 8 *res.CH; res.DATAUNITLEN=res.CH*res.BITDEPTH/ 8 ; memcpy(res.DATA, “Daten”

, Größe von ( res.DATA ));
res.DATALEN=num*res.DATAUNITLEN;
res.LEN=res.DATALEN+ 44 -8 ; Rückkehrer; }

Definieren Sie zuerst den Schlüsselnamen – Häufigkeitsvergleichstabelle.

const double keyf[]=
{ 27.5 , 29.1352 , 30.8677 , 32.7032 , 34.6478 , 36.7081 , 38.8909 , 41.2034 , 43.6535 , 46.2493 , 48.9994 , 51.9131 , 55 , 58.2705 , 61.7354 , 65.4064 , 69.2957 , 73.4162 , 77.7817 , 82.4069 , 87.3071 , 92.4986 , 97.9989 ,

103.826 , 110 , 116.541 , 123.471 , 130.813 , 138.591 , 146.832 , 155.563 , 164.814 , 174.614 , 184.997 , 195.998 , 207.652 , 220 , 233.082 , 246.942 , 261.626 , 277.183 , 293.665 , 311.127 , 329.628 , 349.228 , 369.994 , 391.995 , 415.305 , 440

, 466.164 , 493.883 , 523.251 , 554.365 , 587.33 , 622.254 , 659.255 , 698.456 , 739.989 , 783.991 , 830.609 , 880 , 932.328 , 987.767 , 1046.5 , 1108.73 , 1174.66 , 1244.51 , 1318.51 , 1396.91 , 1479.98 , 1567.98 , 1661.22 , 1760 , 1864.66 ,

1975,53, 2093, 2217,46, 2349,32, 2489,02, 2637,02, 2793,83, 2959,96, 3135,96, 3322,44, 3729,31, 3951,07, 4186,01; ___ { “A-0” , “A#0” , “B- 0” , “C-1” , “C#1” , “D-1” , “D#1” , “E-1” , “F-1”, “F#1”

, “G-1” , “G#1” , “A-1” , “A#1” , “B-1” , “C-2” , “C#2” , “D-2″ , ” D#2“, „E-2“, „F-2“, „F#2“, „G-2“, „G#2“, „A-2“, „A#2“, „B- 2″, “C-3”, “C#3”, “D-3”, “D#3”, “E-3”, “F-3”, “F#3”, “G-3” , “Sonne#3” ,