Upgrade to Pro — share decks privately, control downloads, hide ads and more …

(a bit) high-layer audio embedded platforms in ...

(a bit) high-layer audio embedded platforms in 2020

A short survey of domain-specific languages for DSP & programmable boards for audio/programmable instruments.
DSP専用言語&プログラマブル楽器、開発ボードのサーベイです。画像少なくリンクが多いのでDLするのがおすすめです。

Tomoya Matsuura

September 01, 2020
Tweet

More Decks by Tomoya Matsuura

Other Decks in How-to & DIY

Transcript

  1. • νοϓɿSTM32H750IBK6(Cortex-M7,400MHz) • AKMͷ2in2out,~192kHz/24bitΦʔσΟΦίʔσοΫ৐ͬͯΔ • 64MB SDRAM(wavͱ͔ࡌͤ΍͍͢) • stm32duinoରԠͳͷͰArduino IDEͰ։ൃͰ͖Δ

    • ઐ༻ͷDSPϥΠϒϥϦDaisySP͕͋Δ • ൈ͖ࠩ͠༰қͳΨϫ͕ϢʔϩϥοΫ/Ϊλʔϖμϧ/ελϯυΞϩ ϯͱἧ͓ͬͯΓݡ͍ Daisy 5
  2. • hvcc: PdύονˠCͷτϥϯεύΠϥ (࣮૷͸Python) • libpdͳͲͱ͸׬શʹҟͳΔ࣮૷Ͱɺεέδϡʔϥͱ͔͸ଘࡏ͠ͳ͍ɻ PdͷύονΛແཧ΍ΓGen~Ϩϕϧͷύονͱͯ͠ղऍ͍ͯ͠Δײ͡ • ։ൃݩͷEnzien Audio͕2೥લʹ౗࢈ɺطʹձࣾͷWeb΋ফ໓

    • hvcc͸GPLͱͯ͠ެ։͞ΕΔ΋Ұ੾ϝϯς͞ΕͣɺOSSͱͯ͠։ൃ ͕Ҿ͖ܧ͕ΕΔ༷ࢠ΋ͳ͠ • ͷׂʹPdͷ࢓༷͕ރΕ͍ͯΔ͜ͱ΋͋ΓҰԠಈ͘ɻBela΍OwlͰ͸ Ҿ͖ଓ͖ར༻͞Ε͍ͯΔ(͜Ε΋Rebel͕WebϓϨϏϡʔ࣋ͬͯΔ) Puredata+Heavy 20
  3. DSPݴޠൺֱ 21 C++ϕλ Faust Soul Vult Gen~ Heavy Pd/SC Մಡੑ

    ˚ × ̋ ̋ ˚ ̋ ̋ ந৅Խೳྗ ࿹࣍ୈ ˕ ̋ ̋ ˚ ˚ ˚ ΦʔσΟΦ ϑΝΠϧ ˚ ˚ ̋ ̋ ˚ ˚ ̋ ࣮ߦੑೳ ࿹࣍ୈ ̋ ̋ ̋ ̋ ̋ ˚ ҆ఆੑ ࿹࣍ୈ ̋ ̋ ̋ ̋ ˚ ̋ কདྷੑ ̋ ̋ ʁ ˚ ˚ × ̋ WebAudio ˚ ̋ ̋ ̋ ˚ ˚ × උߟ จ๏͕ಠಛ ϥΠϒϥϦ๛෋ Ұ෦ιʔεඇެ։,
 ։ൃ్த ૊ΈࠐΈར༻࣮੷͋Γ, ݸਓ։ൃOSS C++ؔ܎ͷ։ൃɾ ػೳ௥Ճ͸ඇ׆ൃ ։ൃऴྃ OSඞཁ (Owl͕ಠࣗରԠ) (emscripten)
  4. 22 Faust Puredata SuperCollider Heavy Gen~ Owl (Magus) Bela Organelle

    Norns Vult WebAudio Emscripten C++,C Daisy Teensy MOD Duo Lv2 Plugin Soul Linux +Xenomai FreeRTOS OSͳ͠ Arduino IDEରԠ
  5. 23 Faust Puredata SuperCollider Heavy Gen~ Owl (Magus) Bela Organelle

    Norns Vult WebAudio Emscripten C++,C Daisy Teensy MOD Duo Lv2 Plugin Soul ↑ʢਖ਼֬ʹ͸ΤΫελʔφϧʣ↓ Faust͔ΒίϚϯυҰͭͰॻ͖ग़ͤΔ΋ͷ ESP32ͱ͔΋
  6. ༨ஊɿCortex Series·ͱΊ 25 M3 M4 M4F M7 Fixed ◦ ◦

    ◦ ◦ DSP × ◦ ◦ ◦ SP Float × × ◦ ◦ DP Float × × × Ұ෦ ໋ྩηοτ
  7. • DSP͸DSPॲཧͱͯ͠ίʔυ͕࣮֬ʹ෼཭Ͱ͖Δ • ≒։ൃͷϓϩηε͕͖ͪΜͱ෼཭Ͱ͖Δɻੑೳͷ໰୊ͱදݱͷ໰ ୊Λ෼͚ͯߟ͑ΒΕΔ • υΩϡϝϯςʔγϣϯɺཁ݅ఆٛͱͯ͠ͷՁ஋ • ࠷ѱݴޠॲཧܥ͕ࢮΜͰ΋ݴޠ࢓༷͸࢒ΔͷͰղಡ͠΍͍͢ •

    ϦϯάόοϑΝͱ͔σΟϨΠपΓͷϝϞϦ؅ཧؔ܎ͷࣦഊ͕ݮΔ • VCVRackͳͲͷιϑτγϯηɺWebͳͲଞϓϥοτϑΥʔϜͱฒߦ ͯ͠ӡ༻͢ΔՄೳੑ͕͋ΔͳΒ˕ DSPݴޠΛ࢖͏ϝϦοτ 26
  8. • LinuxFoundation͕ࢧԉͯ͠ɺIntelͷਓ͕த৺ʹ։ൃத • ஍ຯʹLinux Kernel 5.2͔Β΋͏औΓࠐ·Ε͍ͯΔ • ࠓͷͱ͜Ζαϙʔτ͸Intelܥͷx86CPU&TensilicaͷXtensa HiFiγ Ϧʔζͷ૊Έ߹Θͤ(࣮ػͰࢼ͢ͳΒMinnowBoard

    Turbot͙Β͍) • ௚઀࣮༻తʹͳΔ೔·Ͱ͸·ͩԕͦ͏ʢಛʹARMରԠͱ͔ʣͩ ͚ͲɺQEMUͰΤϛϡϨʔγϣϯͯ͠Δͷͱ͔Ξϓϩʔνͱͯ͠ ࢀߟʹͳΔ ༨ஊ: Sound Open Firmwareɹ 28
  9. • OSΛ࢖͏͔൱͔ʁ • Linuxͷ৔߹ɺXenomaiͷΑ͏ͳΧʔωϧ֦ுΛ͢Δ͔ʁ • ALSA System on a Chip(ASoC)΍SOFͳͲɺ૊ΈࠐΈ޲͚Φʔ

    σΟΦػೳ͸ࠓޙॆ࣮͍͖ͯͦ͠͏ • OS࢖Θͳ͍৔߹ɺArduino IDEରԠorඇରԠʁ • ͳΜ͔ͩΜͩIOͷڞ௨ن֨ͱͯ͠੒ཱͭͭ͋͠ΔͷͰɺϘʔυ ͕σΟείϯʹͳͬͯ΋ସ͑Λޮ͔ͤ΍͍͔͢΋ ΞʔΩςΫνϟͷબ୒ࢶ 30