logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

[Python] - Jakie jednostki SI danych z mikrofonu USB Kinobo mini Akiro na Raspberry Pi?

bendar 10 Lip 2016 15:19 1185 3
REKLAMA
  • #1 15798638
    bendar
    Poziom 14  
    Posty: 140
    Pomógł: 8
    Ocena: 20
    Witam,
    stoję przed problemem napisania programu, który przechwytuje strumień dźwiękowy z mikrofonu pod kontrolą Linux'a i obrabia wg. wzoru. Lecz nie znam podstawowych informacji jakiego rodzaju dane otrzymuje bezpośrednio po przechwyceniu. Program pozwalający zrozumieć o jakie dane mi chodzi przedstawiam poniżej.

    Kod: Python
    Zaloguj się, aby zobaczyć kod


    Tak więc chodzi o ostatnią linijkę kodu. Jakie dane otrzymuje w zmiennej data. Nie chodzi mi o typ danych tylko o jednostkę SI. Dodam, że wszystko się dzieje na platformie Raspberry Pi 2 B+, a do przechwycenia dźwięku używam mikrofonu na USB Kinobo mini Akiro
  • REKLAMA
  • #2 15798903
    JacekCz
    Poziom 42  
    Posty: 8670
    Pomógł: 760
    Ocena: 1464
    SI bym się nie spodziewał.

    Dotarłem do dokumentacji którą chyba znasz. Nie doczytałem się.
    Jakaś ilość /strumień ramek.

    Przechwyć nagranie np znanego tonu sinusoidalnego, prześlij na pecet, poanalizuj choćby excellem. Radził bym to tego jakość telefoniczną, samplowanie 8KHz, 8bit


    PCM.read()

    In PCM_NORMAL mode, this function blocks until a full period is available, and then returns a tuple (length,data) where length is the number of frames of captured data, and data is the captured sound frames as a string. The length of the returned data will be periodsize*framesize bytes.

    In PCM_NONBLOCK mode, the call will not block, but will return (0,'') if no new period has become available since the last call to read.

    oraz
    Stała "format" daje sugestię jak interpretować.


    PCM.setformat(format)

    The sound format of the device. Sound format controls how the PCM device interpret data for playback, and how data is encoded in captures.

    The following formats are provided by ALSA:
    Format Description
    PCM_FORMAT_S8 Signed 8 bit samples for each channel
    PCM_FORMAT_U8 Signed 8 bit samples for each channel
    PCM_FORMAT_S16_LE Signed 16 bit samples for each channel Little Endian byte order)
    PCM_FORMAT_S16_BE Signed 16 bit samples for each channel (Big Endian byte order)
    PCM_FORMAT_U16_LE Unsigned 16 bit samples for each channel (Little Endian byte order)
    PCM_FORMAT_U16_BE Unsigned 16 bit samples for each channel (Big Endian byte order)
    PCM_FORMAT_S24_LE Signed 24 bit samples for each channel (Little Endian byte order)
    PCM_FORMAT_S24_BE Signed 24 bit samples for each channel (Big Endian byte order)}
    PCM_FORMAT_U24_LE Unsigned 24 bit samples for each channel (Little Endian byte order)
    PCM_FORMAT_U24_BE Unsigned 24 bit samples for each channel (Big Endian byte order)
    PCM_FORMAT_S32_LE Signed 32 bit samples for each channel (Little Endian byte order)
    PCM_FORMAT_S32_BE Signed 32 bit samples for each channel (Big Endian byte order)
    PCM_FORMAT_U32_LE Unsigned 32 bit samples for each channel (Little Endian byte order)
    PCM_FORMAT_U32_BE Unsigned 32 bit samples for each channel (Big Endian byte order)
    PCM_FORMAT_FLOAT_LE 32 bit samples encoded as float (Little Endian byte order)
    PCM_FORMAT_FLOAT_BE 32 bit samples encoded as float (Big Endian byte order)
    PCM_FORMAT_FLOAT64_LE 64 bit samples encoded as float (Little Endian byte order)
    PCM_FORMAT_FLOAT64_BE 64 bit samples encoded as float (Big Endian byte order)
    PCM_FORMAT_MU_LAW A logarithmic encoding (used by Sun .au files and telephony)
    PCM_FORMAT_A_LAW Another logarithmic encoding
    PCM_FORMAT_IMA_ADPCM A 4:1 compressed format defined by the Interactive Multimedia Association.
    PCM_FORMAT_MPEG MPEG encoded audio?
    PCM_FORMAT_GSM 9600 bits/s constant rate encoding for speech
  • REKLAMA
  • #3 15801205
    Sam Sung
    Poziom 33  
    Posty: 2040
    Pomógł: 227
    Ocena: 611
    Będą tam wartości amplitudy fali dźwiękowej od -32768 do 32767 wyskalowane wg aktualnych ustawień głośności wejścia w mikserze, w arbitralnie przyjętej jednostce.
  • #4 15801494
    bendar
    Poziom 14  
    Posty: 140
    Pomógł: 8
    Ocena: 20
    Dzięki wam mam już punkt zaczepienia.
REKLAMA