Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
libpo32 — PO-32 음향 전송 및 드럼 합성을 위한 C99 라이브러리 | Kitploit
도구/GitHubGitHub/ericlewis/libpo32
Embedded Systems SecurityReverse EngineeringHardware Security
GitHubericlewis/libpo32

libpo32

PO-32 음향 전송 및 드럼 합성을 위한 C99 라이브러리

저장소 보기
200922일 전Kitploit 검토 완료

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

libpo32

Tests Codecov FOSSA Status

Teenage Engineering PO-32 음향 데이터 전송 및 드럼 합성을 위한 소형 C99 라이브러리입니다.

libpo32는 PO-32 Tonic 전송 스택과 호환되는 드럼 음색 모델을 재구현합니다. 완전한 PO-32 펌웨어나 UI 에뮬레이터는 아니며, PO-32 전송을 구축, 전송, 수신, 미리 듣기하는 데 필요한 패킷 형식, 음향 모뎀, 프레임 디코더, 로컬 드럼 합성을 다룹니다.

목차

  • 개요
  • PO-32와 함께 사용하기
  • 시작하기
  • 예제
  • libpo32로 구축된 프로젝트
  • 공개 API
  • 문서
  • 프로젝트 구조
  • 기여
  • 라이선스

개요

영역libpo32가 제공하는 기능
전송 프로토콜PO-32 패치, 패턴, 상태 패킷 구축 및 파싱
음향 모뎀전송 프레임을 DPSK 오디오로 렌더링하여 기기로 재생
디코더전송 오디오에서 정규화된 프레임과 패킷 복구
드럼 합성PO-32의 21-파라미터 드럼 음색을 로컬에서 렌더링하여 미리 보기 및 테스트

코어는 freestanding C99입니다: libc 런타임, 외부 DSP 라이브러리, 플랫폼 오디오 API, 파일 I/O가 없습니다. freestanding 헤더 <stddef.h>와 <stdint.h>만 사용합니다. 임베디드 타깃과 베어메탈 환경에 적합합니다.

PO-32와 함께 사용하기

PO-32는 사운드나 패턴을 전송할 때 완성된 드럼 오디오를 수신하지 않습니다. 구조화된 데이터를 수신합니다:

데이터의미
패치 패킷악기당 두 개의 패치 엔드포인트(Left 및 Right), 대상 악기 슬롯이 패킷에 인코딩됨
패턴 패킷어떤 악기가 어떤 스텝에서 트리거되는지, 대상 패턴 슬롯이 pattern_number로 인코딩됨
상태 패킷템포, 스윙, 모프 기본값, 전송된 패턴 목록

그런 다음 기기는 자체 내부 신스 엔진을 사용하여 해당 파라미터를 소리로 변환합니다.

높은 수준에서 실제 하드웨어를 사용한 워크플로는 다음과 같습니다:

단계수행 작업
1패치, 패턴, 상태 데이터로 소프트웨어에서 전송 구축
2해당 전송을 WAV 또는 라이브 오디오 스트림으로 렌더링
3PO-32를 일반 수신/가져오기 흐름으로 설정

시작하기

저장소 루트에서 구성, 빌드, 테스트 실행 후 데모를 실행합니다:

root@kitploit:~
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build -j4
ctest --test-dir build --output-on-failure
./build/po32_demo

로컬 개발에 권장되는 선택 사항:

root@kitploit:~
./scripts/install-git-hooks.sh

이렇게 하면 저장소 관리 pre-commit 훅이 활성화되어 각 커밋 전에 스테이징된 .c 및 .h 파일에 대해 clang-format을 실행하고 커밋 제목을 Conventional Commits에 대해 검증합니다. 저장소 관리 pre-push 훅은 푸시 전에 정적 분석 스크립트를 실행합니다.

pre-commit 훅은 clang-format 18이 필요하며 다른 주요 버전에서는 실패합니다. 설치 옵션은 CONTRIBUTING.md를 참조하세요.

데모는 전송 프레임을 구축하고, 오디오로 렌더링하고, 다시 디코딩하여(무손실 왕복 검증) 드럼 히트를 합성하고, demo_modem.wav와 demo_kick.wav 두 개의 WAV 파일을 작성합니다.

설치 및 사용

cmake --install은 정적 라이브러리, 헤더, CMake 패키지, pkg-config 파일을 제공하므로 두 가지 사용 경로 모두 즉시 작동합니다:

root@kitploit:~
find_package(LibPO32 0.2 REQUIRED)
target_link_libraries(app PRIVATE LibPO32::po32)
root@kitploit:~
cc app.c $(pkg-config --cflags --libs po32) -lm

예제

명령용도
./build/po32_example최소 왕복: 인코딩, 렌더링, 디코딩, 검증
./build/po32_demo종단 간 데모: 전송 프레임 구축/렌더링/디코딩 및 로컬 드럼 합성

libpo32로 구축된 프로젝트

프로젝트기능
Libpo32 for Schwunglibpo32 기반 Ableton Move용 Schwung 16-음성 드럼 신디사이저 모듈

공개 API

헤더역할
core/include/po32.h전송 빌더, 패킷 헬퍼, 렌더러, 디코더
core/include/po32_synth.h드럼 신디사이저

문서

프로젝트 구조

기여

로컬 설정, 검증 명령, SemVer 친화적 히스토리에 사용되는 Conventional Commits 정책은 CONTRIBUTING.md를 참조하세요.

라이선스

Copyright (c) 2026 Eric Lewis. MIT 라이선스에 따라 라이선스가 부여됩니다. LICENSE를 참조하세요.

도구 다운로드
4렌더링된 전송 오디오를 기기로 재생
5PO-32가 패킷을 디코딩하여 해당 패킷에 지정된 사운드 또는 패턴 슬롯에 기록
./build/po32_pattern_editor대화형 PO-32 패턴 편집 및 WAV 내보내기
./build/po32_decode_capture <input.wav> <out-dir>전송 WAV에서 패킷 및 패턴 덤프
문서용도
아키텍처코덱 작동 방식
프로토콜와이어 형식 세부 사항
C APIC 함수 참조
신스신디사이저 신호 경로
패치 파라미터21개 파라미터
바인딩새 언어 바인딩 작성 방법
예제지원되는 예제 프로그램
퍼징퍼즈 하니스 및 차등 속성
기여로컬 설정, 검사, 커밋 규칙
경로용도
core/src핵심 C 구현
core/include공개 C 헤더
core/examples지원되는 C 예제
core/tests핵심 테스트 커버리지
core/fuzz모든 신뢰할 수 없는 입력 표면에 대한 libFuzzer 하니스
core/docs아키텍처, 프로토콜, API 노트
bindings/goGo 바인딩 (cgo, 전체 공개 API 래핑)