import 'package:freezed_annotation/freezed_annotation.dart'; part 'ses_kimligi.freezed.dart'; part 'ses_kimligi.g.dart'; /// TTS sağlayıcı seçimi. enum TtsSaglayici { @JsonValue('ace_step') aceStep, @JsonValue('qwen3_tts') qwen3Tts, @JsonValue('index_tts2') indexTts2, } /// Karakterin ses kimliği — TTS modeli, referans ses ve RVC profili. @freezed class SesKimligi with _$SesKimligi { const factory SesKimligi({ required String id, required String ad, @Default(TtsSaglayici.aceStep) TtsSaglayici ttsSaglayici, String? refSesYolu, String? rvcProfilYolu, @Default(1.0) double hizFaktoru, // 0.5..2.0 }) = _SesKimligi; factory SesKimligi.fromJson(Map j) => _$SesKimligiFromJson(j); }