deepgram.clients.speak.v1.websocket.options
1# Copyright 2024 Deepgram SDK contributors. All Rights Reserved. 2# Use of this source code is governed by a MIT license that can be found in the LICENSE file. 3# SPDX-License-Identifier: MIT 4 5from io import BufferedReader 6from typing import Union, Optional 7import logging 8 9from dataclasses import dataclass, field 10from dataclasses_json import config as dataclass_config 11 12from .....utils import verboselogs 13from ....common import BaseResponse 14 15 16@dataclass 17class SpeakWSOptions(BaseResponse): 18 """ 19 Contains all the options for the SpeakOptions. 20 21 Reference: 22 https://developers.deepgram.com/reference/transform-text-to-speech-websocket 23 """ 24 25 model: Optional[str] = field( 26 default="aura-asteria-en", 27 metadata=dataclass_config(exclude=lambda f: f is None), 28 ) 29 encoding: Optional[str] = field( 30 default=None, metadata=dataclass_config(exclude=lambda f: f is None) 31 ) 32 # container: Optional[str] = field( 33 # default=None, metadata=dataclass_config(exclude=lambda f: f is None) 34 # ) 35 sample_rate: Optional[int] = field( 36 default=None, metadata=dataclass_config(exclude=lambda f: f is None) 37 ) 38 bit_rate: Optional[int] = field( 39 default=None, metadata=dataclass_config(exclude=lambda f: f is None) 40 ) 41 42 def __getitem__(self, key): 43 _dict = self.to_dict() 44 return _dict[key] 45 46 def __setitem__(self, key, val): 47 self.__dict__[key] = val 48 49 def __str__(self) -> str: 50 return self.to_json(indent=4) 51 52 def check(self): 53 """ 54 Check the SpeakOptions for any missing or invalid values. 55 """ 56 logger = verboselogs.VerboseLogger(__name__) 57 logger.addHandler(logging.StreamHandler()) 58 prev = logger.level 59 logger.setLevel(verboselogs.ERROR) 60 61 # no op at the moment 62 63 logger.setLevel(prev) 64 65 return True
17@dataclass 18class SpeakWSOptions(BaseResponse): 19 """ 20 Contains all the options for the SpeakOptions. 21 22 Reference: 23 https://developers.deepgram.com/reference/transform-text-to-speech-websocket 24 """ 25 26 model: Optional[str] = field( 27 default="aura-asteria-en", 28 metadata=dataclass_config(exclude=lambda f: f is None), 29 ) 30 encoding: Optional[str] = field( 31 default=None, metadata=dataclass_config(exclude=lambda f: f is None) 32 ) 33 # container: Optional[str] = field( 34 # default=None, metadata=dataclass_config(exclude=lambda f: f is None) 35 # ) 36 sample_rate: Optional[int] = field( 37 default=None, metadata=dataclass_config(exclude=lambda f: f is None) 38 ) 39 bit_rate: Optional[int] = field( 40 default=None, metadata=dataclass_config(exclude=lambda f: f is None) 41 ) 42 43 def __getitem__(self, key): 44 _dict = self.to_dict() 45 return _dict[key] 46 47 def __setitem__(self, key, val): 48 self.__dict__[key] = val 49 50 def __str__(self) -> str: 51 return self.to_json(indent=4) 52 53 def check(self): 54 """ 55 Check the SpeakOptions for any missing or invalid values. 56 """ 57 logger = verboselogs.VerboseLogger(__name__) 58 logger.addHandler(logging.StreamHandler()) 59 prev = logger.level 60 logger.setLevel(verboselogs.ERROR) 61 62 # no op at the moment 63 64 logger.setLevel(prev) 65 66 return True
Contains all the options for the SpeakOptions.
Reference: https://developers.deepgram.com/reference/transform-text-to-speech-websocket
SpeakWSOptions( model: Optional[str] = 'aura-asteria-en', encoding: Optional[str] = None, sample_rate: Optional[int] = None, bit_rate: Optional[int] = None)
def
check(self):
53 def check(self): 54 """ 55 Check the SpeakOptions for any missing or invalid values. 56 """ 57 logger = verboselogs.VerboseLogger(__name__) 58 logger.addHandler(logging.StreamHandler()) 59 prev = logger.level 60 logger.setLevel(verboselogs.ERROR) 61 62 # no op at the moment 63 64 logger.setLevel(prev) 65 66 return True
Check the SpeakOptions for any missing or invalid values.