-
released this
2026-05-16 04:03:43 +09:00 | 18 commits to main since this releasev0.4.13
4K 영상 삭제 시 튕김 수정: 디코더 스레드의
MemoryUtil.memCopy가 진행 중일 때 다른 스레드에서grabber.close()가 native plane 을 free 해버리면서 발생하던 EXCEPTION_ACCESS_VIOLATION 을 race-free 구조로 재설계. 이제grabber.close()는 디코더 스레드 자신만 호출하고, stop 측은 신호+interrupt+join 만 합니다.Config 추가 (
<gameDir>/config/video_player.json):max_preload_mb(기본 1024) — 클라이언트가 한 영상을 캐시할 때 받는 최대 크기. 기존 하드코딩된 512 MB 캡을 대체. 20초 FHD 영상 50개 = 약 600 MB 라서 1 GB 면 여유 있음.render_distance_blocks(기본 128) — 영상 패널이 보이는 최대 거리(블록). 기존 하드코딩된 128 을 대체.
명령어 변경:
/videopreload→/videoCache로 이름 변경 + 서브커맨드:/videoCache add <이름> <주소>— 이름 등록 + 전 클라이언트에 preload 전송. 이름 중복 불가./videoCache list— 등록된 항목[이름] : [주소](주소 클릭 가능)./videoCache remove <이름>— 서버 config 에서 삭제 + 전 클라이언트의 디스크 캐시 파일도 삭제.
/videoPlace ... <url|이름>—add로 등록한 이름을 URL 대신 넣으면 같이 재생. 우클릭 GUI 도 동일.- 대문자/소문자 alias 정리: 이제
/videoStick,/videoPlace,/videoDelete,/videoMute,/videoCache만. 소문자 alias 는 제거됨.
기타:
memCopy길이를src.capacity()와width * height * 4둘 다로 검증 (reviewer 권고).JOIN시 정책 payload (max_preload_mb+render_distance_blocks) 를 먼저 전송하고 그 다음 preload URL 들 전송.
다운로드
자기 OS 에 맞는 jar 받으세요:
- Windows x64:
video_player-windows-x86_64-0.4.13.jar - Linux x64:
video_player-linux-x86_64-0.4.13.jar - macOS Intel:
video_player-macosx-x86_64-0.4.13.jar - macOS Apple Silicon:
video_player-macosx-arm64-0.4.13.jar - 직접 JavaCV 설치하는 분:
video_player-0.4.13.jar
Downloads