📢 개발 상태 안내 / Development Status
현재 C++ (CLI) 버전과 C# (CLI) 버전의 개발은 임시 중단되었습니다.
만약 CLI 환경에서의 사용이 필요하시다면 v1.1.0 을 사용해 주시기 바랍니다.
Development of the C++ (CLI) and C# (CLI) versions is currently paused.
If you require usage in a CLI environment, please use v1.1.0.
한국어 (Korean)
⚠️ 중요: 파일 누락 및 설치 안내
저작권 및 라이선스 정책 준수를 위해, 배포 파일에는 FMOD 관련 파일이 포함되어 있지 않습니다.
프로그램을 정상적으로 실행하려면 아래 내용을 참고하여 사용자가 직접 파일을 준비해야 합니다.
- FMOD Engine API v2.03.11 다운로드: 이 프로그램은 FMOD Engine API v2.03.11 버전을 기반으로 빌드되었습니다. 반드시 해당 버전의 FMOD 파일을 FMOD 공식 다운로드 페이지에서 다운로드하여 사용 해주시기 바랍니다. (FMOD 계정 필요)
- 필수 파일 복사: 다운로드한 FMOD 폴더에서
fmod.dll,fmodstudio.dll,fsbankcl.exe등 실행에 필요한 파일들을 프로그램 폴더로 복사해야 합니다.
- 자세한 설치 및 파일 복사 방법은 README.md 파일을 참고해주시기 바랍니다.
🔄 업데이트 내역 (v3.3.1) - GUI Only
이번 업데이트는 체감 성능과 반응 속도를 개선하는 데 집중했습니다. 내부 엔진에 캐싱 시스템을 도입하여 대용량 파일을 다룰 때 발생하던 딜레이를 제거했습니다. (CLI 버전은 변경 사항 없음)
-
⚡ 성능 최적화
- 파일 액세스 구조 개선 (Caching):
- 파일을 분석할 때 열어둔 연결 통로(Handle)를 닫지 않고 메모리에 유지하여, 이후 재생이나 추출 요청 시 파일을 다시 읽는 과정을 생략합니다.
- 덕분에 수천 개의 오디오가 담긴 대용량
.bank파일에서도 버벅임 없이 즉시 재생이 가능해졌으며, 불필요한 디스크 읽기 작업을 줄였습니다.
- 일괄 추출 방식 개선:
- 파일을 하나 추출할 때마다 컨테이너를 열고 닫던 방식을 버리고, 같은 컨테이너에 속한 파일들을 한 번에 묶어서 처리하도록 변경했습니다.
- 컨테이너를 단 한 번만 연 상태에서 내부 사운드를 연속으로 뽑아내기 때문에 다량의 파일을 추출할 때 속도가 빨라졌습니다.
- 파일 액세스 구조 개선 (Caching):
-
🖱️ 사용자 경험 및 안정성
- 자동 재생 및 엔진 안정성 강화:
Auto-Play옵션을 켜고 빠르게 클릭할 때 소리가 정상적으로 나오지 않던 문제를 해결했습니다.- 입력 지연(Debounce) 처리로 불필요한 재생 요청을 거르고, 엔진 내부에는 리소스 정리 시간을 확보하여 연속 재생 시 발생하던 오류를 원천 차단했습니다.
- 자동 재생 및 엔진 안정성 강화:
-
🛠️ 코드 품질 강화
- 전면적인 코드 상수화: 프로그램 전반에 흩어져 있던 메시지나 설정값들을 별도의 내부 클래스로 분리하여 관리 효율성을 높였습니다.
- 방어적 코딩 적용: 주요 기능의 실행 및 종료 단계에서 발생할 수 있는 예외 상황에 대한 처리를 강화하여 프로그램이 더욱 견고해졌습니다.
English
⚠️ IMPORTANT: Missing Files & Installation Guide
Due to copyright and licensing policies, FMOD-related files are NOT included in the distribution files.
To run the program correctly, you must manually prepare the files by following the instructions below.
- Download FMOD Engine API v2.03.11: This program was built using FMOD Engine API v2.03.11. You must use files from this specific version, downloadable from the official FMOD download page. (FMOD account required)
- Copy Required Files: From the downloaded FMOD folder, you must copy the necessary files (e.g.,
fmod.dll,fmodstudio.dll,fsbankcl.exe) into the program's folder.
- For detailed installation and file copying instructions, please refer to the README_EN.md file.
🔄 Update History (v3.3.1) - GUI Only
This update focuses on improving perceived performance and responsiveness. A caching system has been introduced to the internal engine to eliminate delays when handling large files. (No changes to CLI versions)
-
⚡ Performance Optimization
- Improved File Access Structure (Caching):
- By keeping the connection handle open in memory after analyzing a file, the program skips the re-reading process for subsequent playback or extraction requests.
- This allows for instant playback without stuttering, even in large
.bankfiles with thousands of audio tracks, and reduces unnecessary disk read operations.
- Improved Batch Extraction Method:
- The previous method of opening and closing the container for each file extraction has been replaced. Now, files belonging to the same container are processed in a single batch.
- Since the container is opened only once to extract all internal sounds consecutively, the extraction speed for a large number of files has been significantly increased.
- Improved File Access Structure (Caching):
-
🖱️ User Experience & Stability
- Enhanced Auto-Play and Engine Stability:
- Fixed an issue where audio would not play correctly when rapidly clicking items with the
Auto-Playoption enabled. - Debounce handling has been implemented to filter unnecessary playback requests, and internal resource cleanup timing has been optimized to fundamentally prevent errors during consecutive playback.
- Fixed an issue where audio would not play correctly when rapidly clicking items with the
- Enhanced Auto-Play and Engine Stability:
-
🛠️ Code Quality Enhancement
- Comprehensive Refactoring of Constants: Scattered messages and configuration values throughout the program have been centralized into separate internal classes, improving management efficiency.
- Applied Defensive Coding: Strengthened exception handling for potential issues during the execution and termination phases of key features, making the program more robust.
Full Changelog: v3.3.0...v3.3.1