Versions in this module Expand all Collapse all v0 v0.1.1 Oct 24, 2025 v0.1.0 Oct 24, 2025 Changes in this version + const DefaultCacheDir + const DefaultCacheDuration + const DefaultCacheFile + type CacheInfo struct + Count int + NewestEntry time.Time + OldestEntry time.Time + Provider string + func (i *CacheInfo) IsExpired(duration time.Duration) bool + type CachedProvider struct + func NewCachedProvider(provider tts.Provider, cache *VoiceCache) *CachedProvider + func (p *CachedProvider) ExportVoicesToJSON(ctx context.Context, outputPath string) error + func (p *CachedProvider) Generate(ctx context.Context, req tts.GenerateRequest) (string, error) + func (p *CachedProvider) GetCacheInfo(ctx context.Context) (*CacheInfo, error) + func (p *CachedProvider) ListVoices(ctx context.Context) ([]tts.Voice, error) + func (p *CachedProvider) ListVoicesRefresh(ctx context.Context) ([]tts.Voice, error) + func (p *CachedProvider) Name() string + type VoiceCache struct + func NewVoiceCache() (*VoiceCache, error) + func NewVoiceCacheWithPath(dbPath string, cacheDuration time.Duration) (*VoiceCache, error) + func (c *VoiceCache) Clear(ctx context.Context, provider string) error + func (c *VoiceCache) ClearAll(ctx context.Context) error + func (c *VoiceCache) Close() error + func (c *VoiceCache) ExportToJSON(ctx context.Context, provider, outputPath string) error + func (c *VoiceCache) Get(ctx context.Context, provider string) ([]tts.Voice, error) + func (c *VoiceCache) GetCacheInfo(ctx context.Context, provider string) (*CacheInfo, error) + func (c *VoiceCache) Set(ctx context.Context, provider string, voices []tts.Voice) error + func (c *VoiceCache) SetLogger(log logger.LoggerInterface)