Interpretation der Ausgabe von ffprobe für einen WAV-Stream

503
rudolfbyker

tl; dr: Was bedeutet ([1][0][0][0] / 0x0001)das?


ffprobe test.wav produziert:

ffprobe version 3.3.3 Copyright (c) 2007-2017 the FFmpeg developers built with gcc 4.8 (Ubuntu 4.8.4-2ubuntu1~14.04.3) configuration: --extra-libs=-ldl --prefix=/opt/ffmpeg --mandir=/usr/share/man --enable-avresample --disable-debug --enable-nonfree --enable-gpl --enable-version3 --enable-libopencore-amrnb --enable-libopencore-amrwb --disable-decoder=amrnb --disable-decoder=amrwb --enable-libpulse --enable-libfreetype --enable-gnutls --disable-ffserver --enable-libx264 --enable-libx265 --enable-libfdk-aac --enable-libvorbis --enable-libtheora --enable-libmp3lame --enable-libopus --enable-libvpx --enable-libspeex --enable-libass --enable-avisynth --enable-libsoxr --enable-libxvid --enable-libvidstab --enable-libwavpack --enable-nvenc --enable-libzimg libavutil 55. 58.100 / 55. 58.100 libavcodec 57. 89.100 / 57. 89.100 libavformat 57. 71.100 / 57. 71.100 libavdevice 57. 6.100 / 57. 6.100 libavfilter 6. 82.100 / 6. 82.100 libavresample 3. 5. 0 / 3. 5. 0 libswscale 4. 6.100 / 4. 6.100 libswresample 2. 7.100 / 2. 7.100 libpostproc 54. 5.100 / 54. 5.100 Input #0, wav, from 'test.wav': Metadata: encoder : Lavf57.71.100 Duration: 00:00:10.00, bitrate: 1536 kb/s Stream #0:0: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 48000 Hz, 2 channels, s16, 1536 kb/s 

Wie interpretiere ich den Audiostrom? Das verstehe ich bisher:

  • Stream #0:0: Der erste Strom
  • Audio: Keine Überraschung hier ...
  • pcm_s16le: Pulscodierte Modulation, wobei jede Abtastung eine vorzeichenbehaftete 16-Bit-Little-Endian-Ganzzahl ist
  • ([1][0][0][0] / 0x0001): ???
  • 48000 Hz: Die Abtastrate
  • 2 channels Stereo
  • s16: 16-Bit-Ganzzahlen wieder signiert?
  • 1536 kb/s: Die Datenrate
0

1 Antwort auf die Frage

2
Gyan

In ([1][0][0][0] / 0x0001), 0x0001ist der Codec - Tag, und [1][0][0][0]ist ein String von diesem Tag abgeleitet. Wenn das Tag druckbare Zeichen enthält, enthält die Zeichenfolge diese Zeichen

0x6134706d-> mp4awobei (hex) 6d == 'm', 70 == 'p', 34 == '4' und 61 == 'a'.

PCM_S16LE hat ein Tag 0x0001.

s16ist mit 16 Bits signiert, verschachtelt, dh für einen Stereo-Stream sendet der Decoder . Die andere Option s16pist planar.