Skip to content

FSB/BANK Extractor & Rebuilder (GUI) (v3.3.1)

Latest

Choose a tag to compare

@IZH318 IZH318 released this 30 Dec 08:37
bee4091

📢 개발 상태 안내 / 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 관련 파일이 포함되어 있지 않습니다.
프로그램을 정상적으로 실행하려면 아래 내용을 참고하여 사용자가 직접 파일을 준비해야 합니다.

  1. FMOD Engine API v2.03.11 다운로드: 이 프로그램은 FMOD Engine API v2.03.11 버전을 기반으로 빌드되었습니다. 반드시 해당 버전의 FMOD 파일을 FMOD 공식 다운로드 페이지에서 다운로드하여 사용 해주시기 바랍니다. (FMOD 계정 필요)
  2. 필수 파일 복사: 다운로드한 FMOD 폴더에서 fmod.dll, fmodstudio.dll, fsbankcl.exe 등 실행에 필요한 파일들을 프로그램 폴더로 복사해야 합니다.
  • 자세한 설치 및 파일 복사 방법은 README.md 파일을 참고해주시기 바랍니다.

🔄 업데이트 내역 (v3.3.1) - GUI Only

이번 업데이트는 체감 성능반응 속도를 개선하는 데 집중했습니다. 내부 엔진에 캐싱 시스템을 도입하여 대용량 파일을 다룰 때 발생하던 딜레이를 제거했습니다. (CLI 버전은 변경 사항 없음)

  • ⚡ 성능 최적화

    • 파일 액세스 구조 개선 (Caching):
      • 파일을 분석할 때 열어둔 연결 통로(Handle)를 닫지 않고 메모리에 유지하여, 이후 재생이나 추출 요청 시 파일을 다시 읽는 과정을 생략합니다.
      • 덕분에 수천 개의 오디오가 담긴 대용량 .bank 파일에서도 버벅임 없이 즉시 재생이 가능해졌으며, 불필요한 디스크 읽기 작업을 줄였습니다.
    • 일괄 추출 방식 개선:
      • 파일을 하나 추출할 때마다 컨테이너를 열고 닫던 방식을 버리고, 같은 컨테이너에 속한 파일들을 한 번에 묶어서 처리하도록 변경했습니다.
      • 컨테이너를 단 한 번만 연 상태에서 내부 사운드를 연속으로 뽑아내기 때문에 다량의 파일을 추출할 때 속도가 빨라졌습니다.
  • 🖱️ 사용자 경험 및 안정성

    • 자동 재생 및 엔진 안정성 강화:
      • 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.

  1. 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)
  2. 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 .bank files 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.
  • 🖱️ 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-Play option 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.
  • 🛠️ 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