tkrmagid 429244d820
Some checks failed
build / build (push) Has been cancelled
audio: route JavaCV samples through SourceDataLine with live gain
setVolume/Mute previously stored gain without affecting audible output: the
backend only called grabImage() and never opened an audio sink. Switch to
grab() (interleaved video+audio frames), force AV_SAMPLE_FMT_S16 on the
grabber so samples are always interleaved signed 16-bit PCM, open a matching
JavaSound SourceDataLine and write scaled samples per-frame. gain is read
on every block so /videoMute, GUI Mute and the per-tick distance attenuation
now take effect immediately. SourceDataLine.write blocking provides natural
A/V pacing, so the legacy 15ms sleep is dropped when an audio line is open;
sleep is retained as a 60fps cap when there is no audio device.

bump version to 0.3.1.
2026-05-15 19:45:42 +09:00

video_player (영상재생모드)

마인크래프트(Fabric, MC 1.21.6+) 안에서 임의의 mp4 URL을 블록 표면에 재생하는 모드.

  • 모드 ID: video_player
  • 한글명: 영상재생모드
  • 로더: Fabric (싱글플레이어 / 전용 서버 양쪽 지원)
  • 명세: 별도 SPEC 문서 참조

빌드

JAVA_HOME=/usr/lib/jvm/java-21-openjdk-amd64 ./gradlew build

산출물: build/libs/video_player-<version>.jar

현재 진행도

이 저장소는 SPEC §10 마일스톤을 순차적으로 채우는 중입니다.

  • M1 — 스캐폴드 (현재): Fabric 모드 골격, 비디오 앵커 블록/엔티티 등록, 비디오 스틱 아이템, /videoStick 명령.
  • M2 — 정적 렌더
  • M3 — JavaCV mp4 재생
  • M4 — GUI / 네트워크
  • M5 — 좌클릭 삭제 + /videoPlace, /videoDelete
  • M6 — 오디오 + 거리감 + Mute(소리 on/off)
  • M7 — WaterMedia 백엔드 + 자동 선택
  • M8 — Stonecutter 멀티버전
Description
No description provided
Readme MIT 559 KiB
v0.4.31 Latest
2026-05-20 10:31:45 +09:00
Languages
Java 100%