Raspberry Pi와 MIDI 인터페이스를 통한 장치 개발

본고는 Raspberry Pi와 MIDI 인터페이스를 결합하여 독립된 설비를 제작한다.
각 센서 및 인터페이스(예: 버튼 스위치 웹)에 대한 Raspberry Pi의 제어에 대해 보다 쉽게 추가 정보를 얻을 수 있습니다.
나는 그것들을 일종의 제품으로 추출하는 과정을 중점적으로 기록하고 싶다.
코드에 대한 설명이 적을 수 있으니 용서해 주십시오.

시리즈 카탈로그

  • Raspberry Pi 및 MIDI 인터페이스를 통한 장치 개발]
  • RtMidi 라이브러리를 사용하여 MIDI 인터페이스 만들기
  • SMF(Standard Midi Format)를 분석하여 MIDI 인터페이스(원형 편)에 주입합니다.
  • SMF(Standard Midi Format) 해석, MIDI 인터페이스 유입(클래스 구성)
  • 하고 싶은 일

  • 라즈베리 파이 MIDI 오디오 연주
  • MIDI 키보드를 연결하고 오디오 1개를 반주로 연주
  • 연주하면서 음색과 반주의 종류를 바꿀 수 있다
  • 너는 그것을 간단한 시퀀스 발생기로만 생각하면 된다.

    필요한 기능 나열

  • MIDI 파일 분석
  • 오디오 출력
  • MIDI 인터페이스 제어
  • 스위치 제어
  • 사고 실현 방법


    이번 개발 설비의 핵심은 FluidSynth이다.
    FluidSynth는 다음과 같은 이유로 소스 소프트웨어 가상 머신을 선택합니다.
    1. 콘솔 기반 실행
    2. 동작이 가볍다
    3. 시작 후 콘솔에서 대화식으로 음량, 음색 변경 등 조작 가능
    유동 동기화를 핵심으로 하여 부족한 기능을 어떻게 실현할 것인가를 고려하다.
    1. 연결된 MIDI 인터페이스와 FluidSynth를 중계하는 MIDI 인터페이스 에뮬레이터 설치
    2. MIDI 파일을 읽고 에뮬레이터에서 FluidSynth로 MIDI 신호를 전송
    3. MIDI 인터페이스에서 신호를 읽고 FluidSynth에 배치
    ※ MIDI 인터페이스 시뮬레이터는 MIDI 입력, MIDI 출력 두 가지를 설치합니다.
    이때의 시스템도

    실시


    RtMidi라는 라이브러리를 사용하여 MIDI 인터페이스 에뮬레이터를 만듭니다.
    이 라이브러리를 사용하고 싶어서 C++ 언어를 사용하기로 했습니다.
    실제 코드는 두 번째로 계속될 것이다.

    지금까지의 회고


    지금까지의 프로세스는 RFLP라는 개발 프로세스를 따릅니다.
    R: Requirement
    F: Function
    L: Logic
    P: Physical(, Program, Product, ...)
    개발 경험이 많은 사람이 많을수록 이 절차는 빨라지고 머릿속의 자원을 쓰지 않아도 완성된다.
    특히 이번에는 MIDI에 대한 이해가 얕아 FluidSynth를 핵으로 하는 방법을 정하기 전에 많은 시행착오를 반복했다.

    내비게이션 시스템


    이전
    다음
    하계
    RtMidi 라이브러리를 사용하여 MIDI 인터페이스 만들기

    좋은 웹페이지 즐겨찾기