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 라이브러리

저장소 보기
20091개월 전Kitploit 검토 완료

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

libpo32

Tests Codecov FOSSA Status

작고 간결한 C99 라이브러리로, Teenage Engineering PO-32의 음향 데이터 전송 및 드럼 합성을 지원합니다.

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

목차

  • 개요
  • PO-32와 함께 사용하기
  • 시작하기
  • 예제
  • 공개 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 훅은 푸시 전에 정적 분석 스크립트를 실행합니다.

데모는 전송 프레임을 구축하고, 오디오로 렌더링한 후, 다시 디코딩하여(무손실 라운드트립 확인) 드럼 히트를 합성하고 두 개의 WAV 파일(demo_modem.wav 및 demo_kick.wav)을 작성합니다.

예제

명령어목적
./build/po32_example최소 라운드트립: 인코딩, 렌더링, 디코딩 및 검증
./build/po32_demo

공개 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/docs아키텍처, 프로토콜 및 API 참고
bindings/goGo 바인딩 (cgo, 전체 공개 API 래핑)