|
KLingo Project Documentation 1.0.0
Unreal Engine 5.6 C++ Project Documentation
|
TTS 오디오 데이터를 캐싱하여 네트워크 요청을 최소화하는 서브시스템입니다. 더 자세히 ...
#include <UAudioCacheManager.h>
UVoiceCacheManager에 대한 상속 다이어그램 :
UVoiceCacheManager에 대한 협력 다이어그램:Public 멤버 함수 | |
| void | ClearCache () |
| 전체 캐시를 초기화합니다 (메모리 + 디스크). | |
| DEFINE_SUBSYSTEM_GETTER_INLINE (UVoiceCacheManager) | |
| virtual void | Deinitialize () override |
| 서브시스템 종료 시 메모리 캐시를 정리합니다. | |
| virtual void | Initialize (FSubsystemCollectionBase &Collection) override |
| 서브시스템 초기화 시 캐시 디렉토리를 생성합니다. | |
| void | SaveToCache (const FString &AudioText, const TArray< uint8 > &AudioData) |
| 오디오 데이터를 메모리와 디스크 캐시에 저장합니다. | |
| bool | TryGetCachedAudio (const FString &AudioText, TArray< uint8 > &OutAudioData) |
| 캐시에서 오디오 데이터를 조회합니다. | |
정적 Private 멤버 함수 | |
| static FString | GenerateCacheFileName (const FString &AudioText) |
| AudioText를 MD5 해시하여 파일명을 생성합니다. | |
| static FString | GetCacheDirectory () |
| 캐시 디렉토리 경로를 반환합니다. | |
| static bool | LoadFromDisk (const FString &AudioText, TArray< uint8 > &OutAudioData) |
| 디스크에서 오디오 데이터를 로드합니다. | |
| static bool | SaveToDisk (const FString &AudioText, const TArray< uint8 > &AudioData) |
| 디스크에 오디오 데이터를 저장합니다. | |
Private 속성 | |
| TMap< FString, TArray< uint8 > > | MemoryCache |
| 메모리 캐시 (Key: AudioText, Value: 오디오 데이터) | |
TTS 오디오 데이터를 캐싱하여 네트워크 요청을 최소화하는 서브시스템입니다.
2단계 캐싱 전략:
AudioText를 키로 사용하며, 파일명은 MD5 해시로 생성됩니다.
UAudioCacheManager.h 파일의 24 번째 라인에서 정의되었습니다.
| void UVoiceCacheManager::ClearCache | ( | ) |
전체 캐시를 초기화합니다 (메모리 + 디스크).
UAudioCacheManager.cpp 파일의 82 번째 라인에서 정의되었습니다.
다음을 참조함 : GetCacheDirectory(), MemoryCache.
이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:| UVoiceCacheManager::DEFINE_SUBSYSTEM_GETTER_INLINE | ( | UVoiceCacheManager | ) |
|
overridevirtual |
|
staticprivate |
AudioText를 MD5 해시하여 파일명을 생성합니다.
| AudioText | [in] TTS 텍스트 |
UAudioCacheManager.cpp 파일의 106 번째 라인에서 정의되었습니다.
다음을 참조함 : UCommonFunctionLibrary::GererateMD5().
다음에 의해서 참조됨 : LoadFromDisk(), SaveToDisk().
이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:
이 함수를 호출하는 함수들에 대한 그래프입니다.:
|
staticprivate |
캐시 디렉토리 경로를 반환합니다.
UAudioCacheManager.cpp 파일의 111 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : ClearCache(), Initialize(), LoadFromDisk(), SaveToDisk().
이 함수를 호출하는 함수들에 대한 그래프입니다.:
|
overridevirtual |
서브시스템 초기화 시 캐시 디렉토리를 생성합니다.
UAudioCacheManager.cpp 파일의 18 번째 라인에서 정의되었습니다.
다음을 참조함 : GetCacheDirectory(), PRINTLOG.
이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:
|
staticprivate |
디스크에서 오디오 데이터를 로드합니다.
| AudioText | [in] TTS 텍스트 |
| OutAudioData | [out] 로드된 오디오 데이터 |
UAudioCacheManager.cpp 파일의 116 번째 라인에서 정의되었습니다.
다음을 참조함 : GenerateCacheFileName(), GetCacheDirectory().
다음에 의해서 참조됨 : TryGetCachedAudio().
이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:
이 함수를 호출하는 함수들에 대한 그래프입니다.:| void UVoiceCacheManager::SaveToCache | ( | const FString & | AudioText, |
| const TArray< uint8 > & | AudioData | ||
| ) |
오디오 데이터를 메모리와 디스크 캐시에 저장합니다.
| AudioText | [in] TTS 텍스트 (캐시 키) |
| AudioData | [in] TTS 오디오 데이터 (WAV 형식) |
UAudioCacheManager.cpp 파일의 64 번째 라인에서 정의되었습니다.
다음을 참조함 : MemoryCache, PRINTLOG, SaveToDisk().
이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:
|
staticprivate |
디스크에 오디오 데이터를 저장합니다.
| AudioText | [in] TTS 텍스트 |
| AudioData | [in] 저장할 오디오 데이터 |
UAudioCacheManager.cpp 파일의 122 번째 라인에서 정의되었습니다.
다음을 참조함 : GenerateCacheFileName(), GetCacheDirectory().
다음에 의해서 참조됨 : SaveToCache().
이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:
이 함수를 호출하는 함수들에 대한 그래프입니다.:| bool UVoiceCacheManager::TryGetCachedAudio | ( | const FString & | AudioText, |
| TArray< uint8 > & | OutAudioData | ||
| ) |
캐시에서 오디오 데이터를 조회합니다.
| AudioText | [in] TTS 텍스트 (캐시 키) |
| OutAudioData | [out] 캐시된 오디오 데이터 (WAV 형식) |
UAudioCacheManager.cpp 파일의 42 번째 라인에서 정의되었습니다.
다음을 참조함 : LoadFromDisk(), MemoryCache.
이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:
|
private |
메모리 캐시 (Key: AudioText, Value: 오디오 데이터)
UAudioCacheManager.h 파일의 90 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : ClearCache(), Deinitialize(), SaveToCache(), TryGetCachedAudio().