diff --git a/python/snippets/stt_streaming_recognize_context.py b/python/snippets/stt_streaming_recognize_context.py
index 13664c3..ab95140 100755
--- a/python/snippets/stt_streaming_recognize_context.py
+++ b/python/snippets/stt_streaming_recognize_context.py
@@ -68,7 +68,8 @@ def print_streaming_recognition_responses(responses):
print('"' + alternative.transcript + '"')
print("------------------")
-stub = stt_pb2_grpc.SpeechToTextStub(grpc.secure_channel(endpoint, grpc.ssl_channel_credentials()))
+#stub = stt_pb2_grpc.SpeechToTextStub(grpc.secure_channel(endpoint, grpc.ssl_channel_credentials()))
+stub = stt_pb2_grpc.SpeechToTextStub(grpc.insecure_channel(endpoint))
metadata = authorization_metadata(api_key, secret_key, "tinkoff.cloud.stt")
responses = stub.StreamingRecognize(generate_repeated_requests(3), metadata=metadata)
print_streaming_recognition_responses(responses)
diff --git a/python/snippets/stt_streaming_recognize_context_dictionaries.py b/python/snippets/stt_streaming_recognize_context_dictionaries.py
new file mode 100755
index 0000000..c80dee1
--- /dev/null
+++ b/python/snippets/stt_streaming_recognize_context_dictionaries.py
@@ -0,0 +1,71 @@
+#!/usr/bin/env python3
+
+import sys
+sys.path.append("..")
+
+from tinkoff.cloud.stt.v1 import stt_pb2_grpc, stt_pb2
+from auth import authorization_metadata
+import grpc
+import os
+import wave
+
+endpoint = os.environ.get("VOICEKIT_ENDPOINT") or "api.tinkoff.ai:443"
+api_key = os.environ["VOICEKIT_API_KEY"]
+secret_key = os.environ["VOICEKIT_SECRET_KEY"]
+
+def build_first_request(sample_rate_hertz, num_channels, context):
+ request = stt_pb2.StreamingRecognizeRequest()
+ request.streaming_config.config.encoding = stt_pb2.AudioEncoding.LINEAR16
+ request.streaming_config.config.sample_rate_hertz = sample_rate_hertz
+ request.streaming_config.config.num_channels = num_channels
+ # ВАЖНО!
+ # Не рекомендуется:
+ # - добавление слов короче 5 символов
+ # - выставление score в слишком большое значение
+ request.streaming_config.config.speech_contexts.append(context)
+ return request
+
+def generate_requests(context):
+ try:
+ with wave.open("../../audio/numbers.wav") as f:
+ yield build_first_request(f.getframerate(), f.getnchannels(), context)
+ frame_samples = f.getframerate()//10 # Send 100ms at a time
+ for data in iter(lambda:f.readframes(frame_samples), b''):
+ request = stt_pb2.StreamingRecognizeRequest()
+ request.audio_content = data
+ yield request
+ # Sending 1 second of silence
+ for i in range(10):
+ request = stt_pb2.StreamingRecognizeRequest()
+ request.audio_content = bytes(frame_samples)
+ yield request
+ except Exception as e:
+ print("Got exception in generate_requests", e)
+ raise
+
+def generate_repeated_requests(times_repeated):
+ context = stt_pb2.SpeechContext(speech_context_dictionary_id = "numbers")
+ null_context = stt_pb2.SpeechContext(phrases = [])
+ # Контекст может быть указан несколько раз во время стриминговой сессии
+ # В этом примере чередуется добавление контекста и его сброс
+ # Стоит отметить, что для сброса контекста нужно переслать SpeechContext с пустым списком фраз
+ for i in range(times_repeated):
+ for request in generate_requests(context if (i % 2 == 1) else null_context):
+ yield request
+
+
+def print_streaming_recognition_responses(responses):
+ for response in responses:
+ for result in response.results:
+ print("Channel", result.recognition_result.channel)
+ print("Phrase start:", result.recognition_result.start_time.ToTimedelta())
+ print("Phrase end: ", result.recognition_result.end_time.ToTimedelta())
+ for alternative in result.recognition_result.alternatives:
+ print('"' + alternative.transcript + '"')
+ print("------------------")
+
+#stub = stt_pb2_grpc.SpeechToTextStub(grpc.secure_channel(endpoint, grpc.ssl_channel_credentials()))
+stub = stt_pb2_grpc.SpeechToTextStub(grpc.insecure_channel(endpoint))
+metadata = authorization_metadata(api_key, secret_key, "tinkoff.cloud.stt")
+responses = stub.StreamingRecognize(generate_repeated_requests(3), metadata=metadata)
+print_streaming_recognition_responses(responses)
diff --git a/python/tinkoff/cloud/stt/v1/stt_pb2_grpc.py b/python/tinkoff/cloud/stt/v1/stt_pb2_grpc.py
index cefbdf3..95165e9 100644
--- a/python/tinkoff/cloud/stt/v1/stt_pb2_grpc.py
+++ b/python/tinkoff/cloud/stt/v1/stt_pb2_grpc.py
@@ -1,5 +1,4 @@
# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
-"""Client and server classes corresponding to protobuf-defined services."""
import grpc
from tinkoff.cloud.longrunning.v1 import longrunning_pb2 as tinkoff_dot_cloud_dot_longrunning_dot_v1_dot_longrunning__pb2
@@ -7,133 +6,76 @@
class SpeechToTextStub(object):
- """Speech recognition.
- """
-
- def __init__(self, channel):
- """Constructor.
-
- Args:
- channel: A grpc.Channel.
- """
- self.Recognize = channel.unary_unary(
- '/tinkoff.cloud.stt.v1.SpeechToText/Recognize',
- request_serializer=tinkoff_dot_cloud_dot_stt_dot_v1_dot_stt__pb2.RecognizeRequest.SerializeToString,
- response_deserializer=tinkoff_dot_cloud_dot_stt_dot_v1_dot_stt__pb2.RecognizeResponse.FromString,
- )
- self.StreamingRecognize = channel.stream_stream(
- '/tinkoff.cloud.stt.v1.SpeechToText/StreamingRecognize',
- request_serializer=tinkoff_dot_cloud_dot_stt_dot_v1_dot_stt__pb2.StreamingRecognizeRequest.SerializeToString,
- response_deserializer=tinkoff_dot_cloud_dot_stt_dot_v1_dot_stt__pb2.StreamingRecognizeResponse.FromString,
- )
- self.LongRunningRecognize = channel.unary_unary(
- '/tinkoff.cloud.stt.v1.SpeechToText/LongRunningRecognize',
- request_serializer=tinkoff_dot_cloud_dot_stt_dot_v1_dot_stt__pb2.LongRunningRecognizeRequest.SerializeToString,
- response_deserializer=tinkoff_dot_cloud_dot_longrunning_dot_v1_dot_longrunning__pb2.Operation.FromString,
- )
+ """Speech recognition
+ """
+ def __init__(self, channel):
+ """Constructor.
-class SpeechToTextServicer(object):
- """Speech recognition.
+ Args:
+ channel: A grpc.Channel.
"""
+ self.Recognize = channel.unary_unary(
+ '/tinkoff.cloud.stt.v1.SpeechToText/Recognize',
+ request_serializer=tinkoff_dot_cloud_dot_stt_dot_v1_dot_stt__pb2.RecognizeRequest.SerializeToString,
+ response_deserializer=tinkoff_dot_cloud_dot_stt_dot_v1_dot_stt__pb2.RecognizeResponse.FromString,
+ )
+ self.StreamingRecognize = channel.stream_stream(
+ '/tinkoff.cloud.stt.v1.SpeechToText/StreamingRecognize',
+ request_serializer=tinkoff_dot_cloud_dot_stt_dot_v1_dot_stt__pb2.StreamingRecognizeRequest.SerializeToString,
+ response_deserializer=tinkoff_dot_cloud_dot_stt_dot_v1_dot_stt__pb2.StreamingRecognizeResponse.FromString,
+ )
+ self.LongRunningRecognize = channel.unary_unary(
+ '/tinkoff.cloud.stt.v1.SpeechToText/LongRunningRecognize',
+ request_serializer=tinkoff_dot_cloud_dot_stt_dot_v1_dot_stt__pb2.LongRunningRecognizeRequest.SerializeToString,
+ response_deserializer=tinkoff_dot_cloud_dot_longrunning_dot_v1_dot_longrunning__pb2.Operation.FromString,
+ )
- def Recognize(self, request, context):
- """Method to recognize whole audio at once: sending complete audio, getting complete recognition result.
- """
- context.set_code(grpc.StatusCode.UNIMPLEMENTED)
- context.set_details('Method not implemented!')
- raise NotImplementedError('Method not implemented!')
-
- def StreamingRecognize(self, request_iterator, context):
- """Method for streaming recognition.
- """
- context.set_code(grpc.StatusCode.UNIMPLEMENTED)
- context.set_details('Method not implemented!')
- raise NotImplementedError('Method not implemented!')
-
- def LongRunningRecognize(self, request, context):
- """Method to create longrunning recognition operation. Created operation will persist for a limited time and will be deleted after that time has expired.
- """
- context.set_code(grpc.StatusCode.UNIMPLEMENTED)
- context.set_details('Method not implemented!')
- raise NotImplementedError('Method not implemented!')
+class SpeechToTextServicer(object):
+ """Speech recognition
+ """
-def add_SpeechToTextServicer_to_server(servicer, server):
- rpc_method_handlers = {
- 'Recognize': grpc.unary_unary_rpc_method_handler(
- servicer.Recognize,
- request_deserializer=tinkoff_dot_cloud_dot_stt_dot_v1_dot_stt__pb2.RecognizeRequest.FromString,
- response_serializer=tinkoff_dot_cloud_dot_stt_dot_v1_dot_stt__pb2.RecognizeResponse.SerializeToString,
- ),
- 'StreamingRecognize': grpc.stream_stream_rpc_method_handler(
- servicer.StreamingRecognize,
- request_deserializer=tinkoff_dot_cloud_dot_stt_dot_v1_dot_stt__pb2.StreamingRecognizeRequest.FromString,
- response_serializer=tinkoff_dot_cloud_dot_stt_dot_v1_dot_stt__pb2.StreamingRecognizeResponse.SerializeToString,
- ),
- 'LongRunningRecognize': grpc.unary_unary_rpc_method_handler(
- servicer.LongRunningRecognize,
- request_deserializer=tinkoff_dot_cloud_dot_stt_dot_v1_dot_stt__pb2.LongRunningRecognizeRequest.FromString,
- response_serializer=tinkoff_dot_cloud_dot_longrunning_dot_v1_dot_longrunning__pb2.Operation.SerializeToString,
- ),
- }
- generic_handler = grpc.method_handlers_generic_handler(
- 'tinkoff.cloud.stt.v1.SpeechToText', rpc_method_handlers)
- server.add_generic_rpc_handlers((generic_handler,))
-
+ def Recognize(self, request, context):
+ """Method to recognize whole audio at once: sending complete audio, getting complete recognition result.
+ """
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
+ context.set_details('Method not implemented!')
+ raise NotImplementedError('Method not implemented!')
- # This class is part of an EXPERIMENTAL API.
-class SpeechToText(object):
- """Speech recognition.
+ def StreamingRecognize(self, request_iterator, context):
+ """Method for streaming recognition.
"""
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
+ context.set_details('Method not implemented!')
+ raise NotImplementedError('Method not implemented!')
- @staticmethod
- def Recognize(request,
- target,
- options=(),
- channel_credentials=None,
- call_credentials=None,
- insecure=False,
- compression=None,
- wait_for_ready=None,
- timeout=None,
- metadata=None):
- return grpc.experimental.unary_unary(request, target, '/tinkoff.cloud.stt.v1.SpeechToText/Recognize',
- tinkoff_dot_cloud_dot_stt_dot_v1_dot_stt__pb2.RecognizeRequest.SerializeToString,
- tinkoff_dot_cloud_dot_stt_dot_v1_dot_stt__pb2.RecognizeResponse.FromString,
- options, channel_credentials,
- insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
+ def LongRunningRecognize(self, request, context):
+ """Method to create longrunning recognition operation. Created operation will persist for a limited time and will be deleted after that time has expired.
+ """
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
+ context.set_details('Method not implemented!')
+ raise NotImplementedError('Method not implemented!')
- @staticmethod
- def StreamingRecognize(request_iterator,
- target,
- options=(),
- channel_credentials=None,
- call_credentials=None,
- insecure=False,
- compression=None,
- wait_for_ready=None,
- timeout=None,
- metadata=None):
- return grpc.experimental.stream_stream(request_iterator, target, '/tinkoff.cloud.stt.v1.SpeechToText/StreamingRecognize',
- tinkoff_dot_cloud_dot_stt_dot_v1_dot_stt__pb2.StreamingRecognizeRequest.SerializeToString,
- tinkoff_dot_cloud_dot_stt_dot_v1_dot_stt__pb2.StreamingRecognizeResponse.FromString,
- options, channel_credentials,
- insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
- @staticmethod
- def LongRunningRecognize(request,
- target,
- options=(),
- channel_credentials=None,
- call_credentials=None,
- insecure=False,
- compression=None,
- wait_for_ready=None,
- timeout=None,
- metadata=None):
- return grpc.experimental.unary_unary(request, target, '/tinkoff.cloud.stt.v1.SpeechToText/LongRunningRecognize',
- tinkoff_dot_cloud_dot_stt_dot_v1_dot_stt__pb2.LongRunningRecognizeRequest.SerializeToString,
- tinkoff_dot_cloud_dot_longrunning_dot_v1_dot_longrunning__pb2.Operation.FromString,
- options, channel_credentials,
- insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
+def add_SpeechToTextServicer_to_server(servicer, server):
+ rpc_method_handlers = {
+ 'Recognize': grpc.unary_unary_rpc_method_handler(
+ servicer.Recognize,
+ request_deserializer=tinkoff_dot_cloud_dot_stt_dot_v1_dot_stt__pb2.RecognizeRequest.FromString,
+ response_serializer=tinkoff_dot_cloud_dot_stt_dot_v1_dot_stt__pb2.RecognizeResponse.SerializeToString,
+ ),
+ 'StreamingRecognize': grpc.stream_stream_rpc_method_handler(
+ servicer.StreamingRecognize,
+ request_deserializer=tinkoff_dot_cloud_dot_stt_dot_v1_dot_stt__pb2.StreamingRecognizeRequest.FromString,
+ response_serializer=tinkoff_dot_cloud_dot_stt_dot_v1_dot_stt__pb2.StreamingRecognizeResponse.SerializeToString,
+ ),
+ 'LongRunningRecognize': grpc.unary_unary_rpc_method_handler(
+ servicer.LongRunningRecognize,
+ request_deserializer=tinkoff_dot_cloud_dot_stt_dot_v1_dot_stt__pb2.LongRunningRecognizeRequest.FromString,
+ response_serializer=tinkoff_dot_cloud_dot_longrunning_dot_v1_dot_longrunning__pb2.Operation.SerializeToString,
+ ),
+ }
+ generic_handler = grpc.method_handlers_generic_handler(
+ 'tinkoff.cloud.stt.v1.SpeechToText', rpc_method_handlers)
+ server.add_generic_rpc_handlers((generic_handler,))
diff --git a/python/tinkoff/cloud/tts/v1/tts_pb2.py b/python/tinkoff/cloud/tts/v1/tts_pb2.py
index 5fceb55..45fbe81 100644
--- a/python/tinkoff/cloud/tts/v1/tts_pb2.py
+++ b/python/tinkoff/cloud/tts/v1/tts_pb2.py
@@ -1,7 +1,9 @@
# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: tinkoff/cloud/tts/v1/tts.proto
-"""Generated protocol buffer code."""
+
+import sys
+_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
from google.protobuf.internal import enum_type_wrapper
from google.protobuf import descriptor as _descriptor
from google.protobuf import message as _message
@@ -13,50 +15,45 @@
from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2
+from protoc_gen_openapiv2.options import annotations_pb2 as protoc__gen__openapiv2_dot_options_dot_annotations__pb2
DESCRIPTOR = _descriptor.FileDescriptor(
name='tinkoff/cloud/tts/v1/tts.proto',
package='tinkoff.cloud.tts.v1',
syntax='proto3',
- serialized_options=b'ZDgithub.com/Tinkoff/voicekit-examples/golang/pkg/tinkoff/cloud/tts/v1\242\002\005TVKSS',
- create_key=_descriptor._internal_create_key,
- serialized_pb=b'\n\x1etinkoff/cloud/tts/v1/tts.proto\x12\x14tinkoff.cloud.tts.v1\x1a\x1cgoogle/api/annotations.proto\"_\n\x05Voice\x12\x0c\n\x04name\x18\x02 \x01(\tJ\x04\x08\x01\x10\x02J\x04\x08\x03\x10\x04J\x04\x08\x04\x10\x05R\x0elanguage_codesR\x0bssml_genderR\x19natural_sample_rate_hertz\"(\n\x11ListVoicesRequestJ\x04\x08\x01\x10\x02R\rlanguage_code\"B\n\x13ListVoicesResponses\x12+\n\x06voices\x18\x01 \x03(\x0b\x32\x1b.tinkoff.cloud.tts.v1.Voice\",\n\x0eSynthesisInput\x12\x0c\n\x04text\x18\x01 \x01(\t\x12\x0c\n\x04ssml\x18\x02 \x01(\t\"L\n\x14VoiceSelectionParams\x12\x0c\n\x04name\x18\x02 \x01(\tJ\x04\x08\x01\x10\x02J\x04\x08\x03\x10\x04R\rlanguage_codeR\x0bssml_gender\"\x9d\x01\n\x0b\x41udioConfig\x12;\n\x0e\x61udio_encoding\x18\x01 \x01(\x0e\x32#.tinkoff.cloud.tts.v1.AudioEncoding\x12\x19\n\x11sample_rate_hertz\x18\x05 \x01(\x05J\x04\x08\x02\x10\x03J\x04\x08\x03\x10\x04J\x04\x08\x04\x10\x05R\rspeaking_rateR\x05pitchR\x0evolume_gain_db\"\xc2\x01\n\x17SynthesizeSpeechRequest\x12\x33\n\x05input\x18\x01 \x01(\x0b\x32$.tinkoff.cloud.tts.v1.SynthesisInput\x12\x39\n\x05voice\x18\x02 \x01(\x0b\x32*.tinkoff.cloud.tts.v1.VoiceSelectionParams\x12\x37\n\x0c\x61udio_config\x18\x03 \x01(\x0b\x32!.tinkoff.cloud.tts.v1.AudioConfig\"1\n\x18SynthesizeSpeechResponse\x12\x15\n\raudio_content\x18\x01 \x01(\x0c\"8\n!StreamingSynthesizeSpeechResponse\x12\x13\n\x0b\x61udio_chunk\x18\x01 \x01(\x0c*\xe4\x01\n\rAudioEncoding\x12\x18\n\x14\x45NCODING_UNSPECIFIED\x10\x00\x12\x0c\n\x08LINEAR16\x10\x01\x12\x08\n\x04\x41LAW\x10\x08\x12\x0c\n\x08RAW_OPUS\x10\x0b\"\x04\x08\x02\x10\x02\"\x04\x08\x03\x10\x03\"\x04\x08\x04\x10\x04\"\x04\x08\x05\x10\x05\"\x04\x08\x06\x10\x06\"\x04\x08\x07\x10\x07\"\x04\x08\t\x10\t\"\x04\x08\n\x10\n\"\x04\x08\x0c\x10\x0c*\x04\x46LAC*\x05MULAW*\x03\x41MR*\x06\x41MR_WB*\x08OGG_OPUS*\x16SPEEX_WITH_HEADER_BYTE*\tLINEAR32F*\nOGG_VORBIS*\nMPEG_AUDIO2\x9b\x03\n\x0cTextToSpeech\x12}\n\nListVoices\x12\'.tinkoff.cloud.tts.v1.ListVoicesRequest\x1a).tinkoff.cloud.tts.v1.ListVoicesResponses\"\x1b\x82\xd3\xe4\x93\x02\x15\x12\x13/v1/tts:list_voices\x12\x8a\x01\n\nSynthesize\x12-.tinkoff.cloud.tts.v1.SynthesizeSpeechRequest\x1a..tinkoff.cloud.tts.v1.SynthesizeSpeechResponse\"\x1d\x82\xd3\xe4\x93\x02\x17\"\x12/v1/tts:synthesize:\x01*\x12\x7f\n\x13StreamingSynthesize\x12-.tinkoff.cloud.tts.v1.SynthesizeSpeechRequest\x1a\x37.tinkoff.cloud.tts.v1.StreamingSynthesizeSpeechResponse0\x01\x42NZDgithub.com/Tinkoff/voicekit-examples/golang/pkg/tinkoff/cloud/tts/v1\xa2\x02\x05TVKSSb\x06proto3'
+ serialized_options=_b('ZDgitlab.tcsbank.ru/speech/tinkoff-cloud-apis/pkg/tinkoff/cloud/tts/v1\222A\242\001\022h\n\033VoiceKit Text To Speech API\"D\n\010VoiceKit\022\033https://voicekit.tinkoff.ru\032\033voicekit_support@tinkoff.ru2\0031.0\032\016api.tinkoff.ai*\002\002\0042\020application/json:\020application/json'),
+ serialized_pb=_b('\n\x1etinkoff/cloud/tts/v1/tts.proto\x12\x14tinkoff.cloud.tts.v1\x1a\x1cgoogle/api/annotations.proto\x1a.protoc-gen-openapiv2/options/annotations.proto\"_\n\x05Voice\x12\x0c\n\x04name\x18\x02 \x01(\tJ\x04\x08\x01\x10\x02J\x04\x08\x03\x10\x04J\x04\x08\x04\x10\x05R\x0elanguage_codesR\x0bssml_genderR\x19natural_sample_rate_hertz\"(\n\x11ListVoicesRequestJ\x04\x08\x01\x10\x02R\rlanguage_code\"B\n\x13ListVoicesResponses\x12+\n\x06voices\x18\x01 \x03(\x0b\x32\x1b.tinkoff.cloud.tts.v1.Voice\"\xa5\x01\n\rTemplateInput\x12\x10\n\x08template\x18\x01 \x01(\t\x12=\n\x05slots\x18\x02 \x03(\x0b\x32..tinkoff.cloud.tts.v1.TemplateInput.SlotsEntry\x12\x15\n\rbackup_phrase\x18\x03 \x01(\t\x1a,\n\nSlotsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\",\n\x0eSynthesisInput\x12\x0c\n\x04text\x18\x01 \x01(\t\x12\x0c\n\x04ssml\x18\x02 \x01(\t\"L\n\x14VoiceSelectionParams\x12\x0c\n\x04name\x18\x02 \x01(\tJ\x04\x08\x01\x10\x02J\x04\x08\x03\x10\x04R\rlanguage_codeR\x0bssml_gender\"\xb5\x01\n\x0b\x41udioConfig\x12;\n\x0e\x61udio_encoding\x18\x01 \x01(\x0e\x32#.tinkoff.cloud.tts.v1.AudioEncoding\x12\x19\n\x11sample_rate_hertz\x18\x05 \x01(\x05:\x16\x92\x41\x13\n\x11\xd2\x01\x0e\x61udio_encodingJ\x04\x08\x02\x10\x03J\x04\x08\x03\x10\x04J\x04\x08\x04\x10\x05R\rspeaking_rateR\x05pitchR\x0evolume_gain_db\"\xff\x01\n\x17SynthesizeSpeechRequest\x12\x33\n\x05input\x18\x01 \x01(\x0b\x32$.tinkoff.cloud.tts.v1.SynthesisInput\x12\x39\n\x05voice\x18\x02 \x01(\x0b\x32*.tinkoff.cloud.tts.v1.VoiceSelectionParams\x12\x37\n\x0c\x61udio_config\x18\x03 \x01(\x0b\x32!.tinkoff.cloud.tts.v1.AudioConfig\x12;\n\x0etemplate_input\x18\x04 \x01(\x0b\x32#.tinkoff.cloud.tts.v1.TemplateInput\"1\n\x18SynthesizeSpeechResponse\x12\x15\n\raudio_content\x18\x01 \x01(\x0c\"8\n!StreamingSynthesizeSpeechResponse\x12\x13\n\x0b\x61udio_chunk\x18\x01 \x01(\x0c*\xe4\x01\n\rAudioEncoding\x12\x18\n\x14\x45NCODING_UNSPECIFIED\x10\x00\x12\x0c\n\x08LINEAR16\x10\x01\x12\x08\n\x04\x41LAW\x10\x08\x12\x0c\n\x08RAW_OPUS\x10\x0b\"\x04\x08\x02\x10\x02\"\x04\x08\x03\x10\x03\"\x04\x08\x04\x10\x04\"\x04\x08\x05\x10\x05\"\x04\x08\x06\x10\x06\"\x04\x08\x07\x10\x07\"\x04\x08\t\x10\t\"\x04\x08\n\x10\n\"\x04\x08\x0c\x10\x0c*\x04\x46LAC*\x05MULAW*\x03\x41MR*\x06\x41MR_WB*\x08OGG_OPUS*\x16SPEEX_WITH_HEADER_BYTE*\tLINEAR32F*\nOGG_VORBIS*\nMPEG_AUDIO2\x9b\x03\n\x0cTextToSpeech\x12}\n\nListVoices\x12\'.tinkoff.cloud.tts.v1.ListVoicesRequest\x1a).tinkoff.cloud.tts.v1.ListVoicesResponses\"\x1b\x82\xd3\xe4\x93\x02\x15\x12\x13/v1/tts:list_voices\x12\x8a\x01\n\nSynthesize\x12-.tinkoff.cloud.tts.v1.SynthesizeSpeechRequest\x1a..tinkoff.cloud.tts.v1.SynthesizeSpeechResponse\"\x1d\x82\xd3\xe4\x93\x02\x17\"\x12/v1/tts:synthesize:\x01*\x12\x7f\n\x13StreamingSynthesize\x12-.tinkoff.cloud.tts.v1.SynthesizeSpeechRequest\x1a\x37.tinkoff.cloud.tts.v1.StreamingSynthesizeSpeechResponse0\x01\x42\xec\x01ZDgitlab.tcsbank.ru/speech/tinkoff-cloud-apis/pkg/tinkoff/cloud/tts/v1\x92\x41\xa2\x01\x12h\n\x1bVoiceKit Text To Speech API\"D\n\x08VoiceKit\x12\x1bhttps://voicekit.tinkoff.ru\x1a\x1bvoicekit_support@tinkoff.ru2\x03\x31.0\x1a\x0e\x61pi.tinkoff.ai*\x02\x02\x04\x32\x10\x61pplication/json:\x10\x61pplication/jsonb\x06proto3')
,
- dependencies=[google_dot_api_dot_annotations__pb2.DESCRIPTOR,])
+ dependencies=[google_dot_api_dot_annotations__pb2.DESCRIPTOR,protoc__gen__openapiv2_dot_options_dot_annotations__pb2.DESCRIPTOR,])
_AUDIOENCODING = _descriptor.EnumDescriptor(
name='AudioEncoding',
full_name='tinkoff.cloud.tts.v1.AudioEncoding',
filename=None,
file=DESCRIPTOR,
- create_key=_descriptor._internal_create_key,
values=[
_descriptor.EnumValueDescriptor(
name='ENCODING_UNSPECIFIED', index=0, number=0,
serialized_options=None,
- type=None,
- create_key=_descriptor._internal_create_key),
+ type=None),
_descriptor.EnumValueDescriptor(
name='LINEAR16', index=1, number=1,
serialized_options=None,
- type=None,
- create_key=_descriptor._internal_create_key),
+ type=None),
_descriptor.EnumValueDescriptor(
name='ALAW', index=2, number=8,
serialized_options=None,
- type=None,
- create_key=_descriptor._internal_create_key),
+ type=None),
_descriptor.EnumValueDescriptor(
name='RAW_OPUS', index=3, number=11,
serialized_options=None,
- type=None,
- create_key=_descriptor._internal_create_key),
+ type=None),
],
containing_type=None,
serialized_options=None,
- serialized_start=884,
- serialized_end=1112,
+ serialized_start=1185,
+ serialized_end=1413,
)
_sym_db.RegisterEnumDescriptor(_AUDIOENCODING)
@@ -74,15 +71,14 @@
filename=None,
file=DESCRIPTOR,
containing_type=None,
- create_key=_descriptor._internal_create_key,
fields=[
_descriptor.FieldDescriptor(
name='name', full_name='tinkoff.cloud.tts.v1.Voice.name', index=0,
number=2, type=9, cpp_type=9, label=1,
- has_default_value=False, default_value=b"".decode('utf-8'),
+ has_default_value=False, default_value=_b("").decode('utf-8'),
message_type=None, enum_type=None, containing_type=None,
is_extension=False, extension_scope=None,
- serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key),
+ serialized_options=None, file=DESCRIPTOR),
],
extensions=[
],
@@ -95,8 +91,8 @@
extension_ranges=[],
oneofs=[
],
- serialized_start=86,
- serialized_end=181,
+ serialized_start=134,
+ serialized_end=229,
)
@@ -106,7 +102,6 @@
filename=None,
file=DESCRIPTOR,
containing_type=None,
- create_key=_descriptor._internal_create_key,
fields=[
],
extensions=[
@@ -120,8 +115,8 @@
extension_ranges=[],
oneofs=[
],
- serialized_start=183,
- serialized_end=223,
+ serialized_start=231,
+ serialized_end=271,
)
@@ -131,7 +126,6 @@
filename=None,
file=DESCRIPTOR,
containing_type=None,
- create_key=_descriptor._internal_create_key,
fields=[
_descriptor.FieldDescriptor(
name='voices', full_name='tinkoff.cloud.tts.v1.ListVoicesResponses.voices', index=0,
@@ -139,7 +133,7 @@
has_default_value=False, default_value=[],
message_type=None, enum_type=None, containing_type=None,
is_extension=False, extension_scope=None,
- serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key),
+ serialized_options=None, file=DESCRIPTOR),
],
extensions=[
],
@@ -152,8 +146,90 @@
extension_ranges=[],
oneofs=[
],
- serialized_start=225,
- serialized_end=291,
+ serialized_start=273,
+ serialized_end=339,
+)
+
+
+_TEMPLATEINPUT_SLOTSENTRY = _descriptor.Descriptor(
+ name='SlotsEntry',
+ full_name='tinkoff.cloud.tts.v1.TemplateInput.SlotsEntry',
+ filename=None,
+ file=DESCRIPTOR,
+ containing_type=None,
+ fields=[
+ _descriptor.FieldDescriptor(
+ name='key', full_name='tinkoff.cloud.tts.v1.TemplateInput.SlotsEntry.key', index=0,
+ number=1, type=9, cpp_type=9, label=1,
+ has_default_value=False, default_value=_b("").decode('utf-8'),
+ message_type=None, enum_type=None, containing_type=None,
+ is_extension=False, extension_scope=None,
+ serialized_options=None, file=DESCRIPTOR),
+ _descriptor.FieldDescriptor(
+ name='value', full_name='tinkoff.cloud.tts.v1.TemplateInput.SlotsEntry.value', index=1,
+ number=2, type=9, cpp_type=9, label=1,
+ has_default_value=False, default_value=_b("").decode('utf-8'),
+ message_type=None, enum_type=None, containing_type=None,
+ is_extension=False, extension_scope=None,
+ serialized_options=None, file=DESCRIPTOR),
+ ],
+ extensions=[
+ ],
+ nested_types=[],
+ enum_types=[
+ ],
+ serialized_options=_b('8\001'),
+ is_extendable=False,
+ syntax='proto3',
+ extension_ranges=[],
+ oneofs=[
+ ],
+ serialized_start=463,
+ serialized_end=507,
+)
+
+_TEMPLATEINPUT = _descriptor.Descriptor(
+ name='TemplateInput',
+ full_name='tinkoff.cloud.tts.v1.TemplateInput',
+ filename=None,
+ file=DESCRIPTOR,
+ containing_type=None,
+ fields=[
+ _descriptor.FieldDescriptor(
+ name='template', full_name='tinkoff.cloud.tts.v1.TemplateInput.template', index=0,
+ number=1, type=9, cpp_type=9, label=1,
+ has_default_value=False, default_value=_b("").decode('utf-8'),
+ message_type=None, enum_type=None, containing_type=None,
+ is_extension=False, extension_scope=None,
+ serialized_options=None, file=DESCRIPTOR),
+ _descriptor.FieldDescriptor(
+ name='slots', full_name='tinkoff.cloud.tts.v1.TemplateInput.slots', index=1,
+ number=2, type=11, cpp_type=10, label=3,
+ has_default_value=False, default_value=[],
+ message_type=None, enum_type=None, containing_type=None,
+ is_extension=False, extension_scope=None,
+ serialized_options=None, file=DESCRIPTOR),
+ _descriptor.FieldDescriptor(
+ name='backup_phrase', full_name='tinkoff.cloud.tts.v1.TemplateInput.backup_phrase', index=2,
+ number=3, type=9, cpp_type=9, label=1,
+ has_default_value=False, default_value=_b("").decode('utf-8'),
+ message_type=None, enum_type=None, containing_type=None,
+ is_extension=False, extension_scope=None,
+ serialized_options=None, file=DESCRIPTOR),
+ ],
+ extensions=[
+ ],
+ nested_types=[_TEMPLATEINPUT_SLOTSENTRY, ],
+ enum_types=[
+ ],
+ serialized_options=None,
+ is_extendable=False,
+ syntax='proto3',
+ extension_ranges=[],
+ oneofs=[
+ ],
+ serialized_start=342,
+ serialized_end=507,
)
@@ -163,22 +239,21 @@
filename=None,
file=DESCRIPTOR,
containing_type=None,
- create_key=_descriptor._internal_create_key,
fields=[
_descriptor.FieldDescriptor(
name='text', full_name='tinkoff.cloud.tts.v1.SynthesisInput.text', index=0,
number=1, type=9, cpp_type=9, label=1,
- has_default_value=False, default_value=b"".decode('utf-8'),
+ has_default_value=False, default_value=_b("").decode('utf-8'),
message_type=None, enum_type=None, containing_type=None,
is_extension=False, extension_scope=None,
- serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key),
+ serialized_options=None, file=DESCRIPTOR),
_descriptor.FieldDescriptor(
name='ssml', full_name='tinkoff.cloud.tts.v1.SynthesisInput.ssml', index=1,
number=2, type=9, cpp_type=9, label=1,
- has_default_value=False, default_value=b"".decode('utf-8'),
+ has_default_value=False, default_value=_b("").decode('utf-8'),
message_type=None, enum_type=None, containing_type=None,
is_extension=False, extension_scope=None,
- serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key),
+ serialized_options=None, file=DESCRIPTOR),
],
extensions=[
],
@@ -191,8 +266,8 @@
extension_ranges=[],
oneofs=[
],
- serialized_start=293,
- serialized_end=337,
+ serialized_start=509,
+ serialized_end=553,
)
@@ -202,15 +277,14 @@
filename=None,
file=DESCRIPTOR,
containing_type=None,
- create_key=_descriptor._internal_create_key,
fields=[
_descriptor.FieldDescriptor(
name='name', full_name='tinkoff.cloud.tts.v1.VoiceSelectionParams.name', index=0,
number=2, type=9, cpp_type=9, label=1,
- has_default_value=False, default_value=b"".decode('utf-8'),
+ has_default_value=False, default_value=_b("").decode('utf-8'),
message_type=None, enum_type=None, containing_type=None,
is_extension=False, extension_scope=None,
- serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key),
+ serialized_options=None, file=DESCRIPTOR),
],
extensions=[
],
@@ -223,8 +297,8 @@
extension_ranges=[],
oneofs=[
],
- serialized_start=339,
- serialized_end=415,
+ serialized_start=555,
+ serialized_end=631,
)
@@ -234,7 +308,6 @@
filename=None,
file=DESCRIPTOR,
containing_type=None,
- create_key=_descriptor._internal_create_key,
fields=[
_descriptor.FieldDescriptor(
name='audio_encoding', full_name='tinkoff.cloud.tts.v1.AudioConfig.audio_encoding', index=0,
@@ -242,28 +315,28 @@
has_default_value=False, default_value=0,
message_type=None, enum_type=None, containing_type=None,
is_extension=False, extension_scope=None,
- serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key),
+ serialized_options=None, file=DESCRIPTOR),
_descriptor.FieldDescriptor(
name='sample_rate_hertz', full_name='tinkoff.cloud.tts.v1.AudioConfig.sample_rate_hertz', index=1,
number=5, type=5, cpp_type=1, label=1,
has_default_value=False, default_value=0,
message_type=None, enum_type=None, containing_type=None,
is_extension=False, extension_scope=None,
- serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key),
+ serialized_options=None, file=DESCRIPTOR),
],
extensions=[
],
nested_types=[],
enum_types=[
],
- serialized_options=None,
+ serialized_options=_b('\222A\023\n\021\322\001\016audio_encoding'),
is_extendable=False,
syntax='proto3',
extension_ranges=[],
oneofs=[
],
- serialized_start=418,
- serialized_end=575,
+ serialized_start=634,
+ serialized_end=815,
)
@@ -273,7 +346,6 @@
filename=None,
file=DESCRIPTOR,
containing_type=None,
- create_key=_descriptor._internal_create_key,
fields=[
_descriptor.FieldDescriptor(
name='input', full_name='tinkoff.cloud.tts.v1.SynthesizeSpeechRequest.input', index=0,
@@ -281,21 +353,28 @@
has_default_value=False, default_value=None,
message_type=None, enum_type=None, containing_type=None,
is_extension=False, extension_scope=None,
- serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key),
+ serialized_options=None, file=DESCRIPTOR),
_descriptor.FieldDescriptor(
name='voice', full_name='tinkoff.cloud.tts.v1.SynthesizeSpeechRequest.voice', index=1,
number=2, type=11, cpp_type=10, label=1,
has_default_value=False, default_value=None,
message_type=None, enum_type=None, containing_type=None,
is_extension=False, extension_scope=None,
- serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key),
+ serialized_options=None, file=DESCRIPTOR),
_descriptor.FieldDescriptor(
name='audio_config', full_name='tinkoff.cloud.tts.v1.SynthesizeSpeechRequest.audio_config', index=2,
number=3, type=11, cpp_type=10, label=1,
has_default_value=False, default_value=None,
message_type=None, enum_type=None, containing_type=None,
is_extension=False, extension_scope=None,
- serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key),
+ serialized_options=None, file=DESCRIPTOR),
+ _descriptor.FieldDescriptor(
+ name='template_input', full_name='tinkoff.cloud.tts.v1.SynthesizeSpeechRequest.template_input', index=3,
+ number=4, type=11, cpp_type=10, label=1,
+ has_default_value=False, default_value=None,
+ message_type=None, enum_type=None, containing_type=None,
+ is_extension=False, extension_scope=None,
+ serialized_options=None, file=DESCRIPTOR),
],
extensions=[
],
@@ -308,8 +387,8 @@
extension_ranges=[],
oneofs=[
],
- serialized_start=578,
- serialized_end=772,
+ serialized_start=818,
+ serialized_end=1073,
)
@@ -319,15 +398,14 @@
filename=None,
file=DESCRIPTOR,
containing_type=None,
- create_key=_descriptor._internal_create_key,
fields=[
_descriptor.FieldDescriptor(
name='audio_content', full_name='tinkoff.cloud.tts.v1.SynthesizeSpeechResponse.audio_content', index=0,
number=1, type=12, cpp_type=9, label=1,
- has_default_value=False, default_value=b"",
+ has_default_value=False, default_value=_b(""),
message_type=None, enum_type=None, containing_type=None,
is_extension=False, extension_scope=None,
- serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key),
+ serialized_options=None, file=DESCRIPTOR),
],
extensions=[
],
@@ -340,8 +418,8 @@
extension_ranges=[],
oneofs=[
],
- serialized_start=774,
- serialized_end=823,
+ serialized_start=1075,
+ serialized_end=1124,
)
@@ -351,15 +429,14 @@
filename=None,
file=DESCRIPTOR,
containing_type=None,
- create_key=_descriptor._internal_create_key,
fields=[
_descriptor.FieldDescriptor(
name='audio_chunk', full_name='tinkoff.cloud.tts.v1.StreamingSynthesizeSpeechResponse.audio_chunk', index=0,
number=1, type=12, cpp_type=9, label=1,
- has_default_value=False, default_value=b"",
+ has_default_value=False, default_value=_b(""),
message_type=None, enum_type=None, containing_type=None,
is_extension=False, extension_scope=None,
- serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key),
+ serialized_options=None, file=DESCRIPTOR),
],
extensions=[
],
@@ -372,18 +449,22 @@
extension_ranges=[],
oneofs=[
],
- serialized_start=825,
- serialized_end=881,
+ serialized_start=1126,
+ serialized_end=1182,
)
_LISTVOICESRESPONSES.fields_by_name['voices'].message_type = _VOICE
+_TEMPLATEINPUT_SLOTSENTRY.containing_type = _TEMPLATEINPUT
+_TEMPLATEINPUT.fields_by_name['slots'].message_type = _TEMPLATEINPUT_SLOTSENTRY
_AUDIOCONFIG.fields_by_name['audio_encoding'].enum_type = _AUDIOENCODING
_SYNTHESIZESPEECHREQUEST.fields_by_name['input'].message_type = _SYNTHESISINPUT
_SYNTHESIZESPEECHREQUEST.fields_by_name['voice'].message_type = _VOICESELECTIONPARAMS
_SYNTHESIZESPEECHREQUEST.fields_by_name['audio_config'].message_type = _AUDIOCONFIG
+_SYNTHESIZESPEECHREQUEST.fields_by_name['template_input'].message_type = _TEMPLATEINPUT
DESCRIPTOR.message_types_by_name['Voice'] = _VOICE
DESCRIPTOR.message_types_by_name['ListVoicesRequest'] = _LISTVOICESREQUEST
DESCRIPTOR.message_types_by_name['ListVoicesResponses'] = _LISTVOICESRESPONSES
+DESCRIPTOR.message_types_by_name['TemplateInput'] = _TEMPLATEINPUT
DESCRIPTOR.message_types_by_name['SynthesisInput'] = _SYNTHESISINPUT
DESCRIPTOR.message_types_by_name['VoiceSelectionParams'] = _VOICESELECTIONPARAMS
DESCRIPTOR.message_types_by_name['AudioConfig'] = _AUDIOCONFIG
@@ -414,6 +495,21 @@
})
_sym_db.RegisterMessage(ListVoicesResponses)
+TemplateInput = _reflection.GeneratedProtocolMessageType('TemplateInput', (_message.Message,), {
+
+ 'SlotsEntry' : _reflection.GeneratedProtocolMessageType('SlotsEntry', (_message.Message,), {
+ 'DESCRIPTOR' : _TEMPLATEINPUT_SLOTSENTRY,
+ '__module__' : 'tinkoff.cloud.tts.v1.tts_pb2'
+ # @@protoc_insertion_point(class_scope:tinkoff.cloud.tts.v1.TemplateInput.SlotsEntry)
+ })
+ ,
+ 'DESCRIPTOR' : _TEMPLATEINPUT,
+ '__module__' : 'tinkoff.cloud.tts.v1.tts_pb2'
+ # @@protoc_insertion_point(class_scope:tinkoff.cloud.tts.v1.TemplateInput)
+ })
+_sym_db.RegisterMessage(TemplateInput)
+_sym_db.RegisterMessage(TemplateInput.SlotsEntry)
+
SynthesisInput = _reflection.GeneratedProtocolMessageType('SynthesisInput', (_message.Message,), {
'DESCRIPTOR' : _SYNTHESISINPUT,
'__module__' : 'tinkoff.cloud.tts.v1.tts_pb2'
@@ -458,6 +554,8 @@
DESCRIPTOR._options = None
+_TEMPLATEINPUT_SLOTSENTRY._options = None
+_AUDIOCONFIG._options = None
_TEXTTOSPEECH = _descriptor.ServiceDescriptor(
name='TextToSpeech',
@@ -465,9 +563,8 @@
file=DESCRIPTOR,
index=0,
serialized_options=None,
- create_key=_descriptor._internal_create_key,
- serialized_start=1115,
- serialized_end=1526,
+ serialized_start=1416,
+ serialized_end=1827,
methods=[
_descriptor.MethodDescriptor(
name='ListVoices',
@@ -476,8 +573,7 @@
containing_service=None,
input_type=_LISTVOICESREQUEST,
output_type=_LISTVOICESRESPONSES,
- serialized_options=b'\202\323\344\223\002\025\022\023/v1/tts:list_voices',
- create_key=_descriptor._internal_create_key,
+ serialized_options=_b('\202\323\344\223\002\025\022\023/v1/tts:list_voices'),
),
_descriptor.MethodDescriptor(
name='Synthesize',
@@ -486,8 +582,7 @@
containing_service=None,
input_type=_SYNTHESIZESPEECHREQUEST,
output_type=_SYNTHESIZESPEECHRESPONSE,
- serialized_options=b'\202\323\344\223\002\027\"\022/v1/tts:synthesize:\001*',
- create_key=_descriptor._internal_create_key,
+ serialized_options=_b('\202\323\344\223\002\027\"\022/v1/tts:synthesize:\001*'),
),
_descriptor.MethodDescriptor(
name='StreamingSynthesize',
@@ -497,7 +592,6 @@
input_type=_SYNTHESIZESPEECHREQUEST,
output_type=_STREAMINGSYNTHESIZESPEECHRESPONSE,
serialized_options=None,
- create_key=_descriptor._internal_create_key,
),
])
_sym_db.RegisterServiceDescriptor(_TEXTTOSPEECH)
diff --git a/python/tinkoff/cloud/tts/v1/tts_pb2_grpc.py b/python/tinkoff/cloud/tts/v1/tts_pb2_grpc.py
index 2826304..ecfb82c 100644
--- a/python/tinkoff/cloud/tts/v1/tts_pb2_grpc.py
+++ b/python/tinkoff/cloud/tts/v1/tts_pb2_grpc.py
@@ -1,138 +1,80 @@
# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
-"""Client and server classes corresponding to protobuf-defined services."""
import grpc
from tinkoff.cloud.tts.v1 import tts_pb2 as tinkoff_dot_cloud_dot_tts_dot_v1_dot_tts__pb2
class TextToSpeechStub(object):
- """Speech synthesis.
- """
-
- def __init__(self, channel):
- """Constructor.
-
- Args:
- channel: A grpc.Channel.
- """
- self.ListVoices = channel.unary_unary(
- '/tinkoff.cloud.tts.v1.TextToSpeech/ListVoices',
- request_serializer=tinkoff_dot_cloud_dot_tts_dot_v1_dot_tts__pb2.ListVoicesRequest.SerializeToString,
- response_deserializer=tinkoff_dot_cloud_dot_tts_dot_v1_dot_tts__pb2.ListVoicesResponses.FromString,
- )
- self.Synthesize = channel.unary_unary(
- '/tinkoff.cloud.tts.v1.TextToSpeech/Synthesize',
- request_serializer=tinkoff_dot_cloud_dot_tts_dot_v1_dot_tts__pb2.SynthesizeSpeechRequest.SerializeToString,
- response_deserializer=tinkoff_dot_cloud_dot_tts_dot_v1_dot_tts__pb2.SynthesizeSpeechResponse.FromString,
- )
- self.StreamingSynthesize = channel.unary_stream(
- '/tinkoff.cloud.tts.v1.TextToSpeech/StreamingSynthesize',
- request_serializer=tinkoff_dot_cloud_dot_tts_dot_v1_dot_tts__pb2.SynthesizeSpeechRequest.SerializeToString,
- response_deserializer=tinkoff_dot_cloud_dot_tts_dot_v1_dot_tts__pb2.StreamingSynthesizeSpeechResponse.FromString,
- )
+ """Speech synthesis
+ """
+ def __init__(self, channel):
+ """Constructor.
-class TextToSpeechServicer(object):
- """Speech synthesis.
+ Args:
+ channel: A grpc.Channel.
"""
+ self.ListVoices = channel.unary_unary(
+ '/tinkoff.cloud.tts.v1.TextToSpeech/ListVoices',
+ request_serializer=tinkoff_dot_cloud_dot_tts_dot_v1_dot_tts__pb2.ListVoicesRequest.SerializeToString,
+ response_deserializer=tinkoff_dot_cloud_dot_tts_dot_v1_dot_tts__pb2.ListVoicesResponses.FromString,
+ )
+ self.Synthesize = channel.unary_unary(
+ '/tinkoff.cloud.tts.v1.TextToSpeech/Synthesize',
+ request_serializer=tinkoff_dot_cloud_dot_tts_dot_v1_dot_tts__pb2.SynthesizeSpeechRequest.SerializeToString,
+ response_deserializer=tinkoff_dot_cloud_dot_tts_dot_v1_dot_tts__pb2.SynthesizeSpeechResponse.FromString,
+ )
+ self.StreamingSynthesize = channel.unary_stream(
+ '/tinkoff.cloud.tts.v1.TextToSpeech/StreamingSynthesize',
+ request_serializer=tinkoff_dot_cloud_dot_tts_dot_v1_dot_tts__pb2.SynthesizeSpeechRequest.SerializeToString,
+ response_deserializer=tinkoff_dot_cloud_dot_tts_dot_v1_dot_tts__pb2.StreamingSynthesizeSpeechResponse.FromString,
+ )
- def ListVoices(self, request, context):
- """Method for retrieving available voices list.
- """
- context.set_code(grpc.StatusCode.UNIMPLEMENTED)
- context.set_details('Method not implemented!')
- raise NotImplementedError('Method not implemented!')
-
- def Synthesize(self, request, context):
- """Method for the non-streaming synthesis.
- """
- context.set_code(grpc.StatusCode.UNIMPLEMENTED)
- context.set_details('Method not implemented!')
- raise NotImplementedError('Method not implemented!')
-
- def StreamingSynthesize(self, request, context):
- """Method for streaming synthesis.
- """
- context.set_code(grpc.StatusCode.UNIMPLEMENTED)
- context.set_details('Method not implemented!')
- raise NotImplementedError('Method not implemented!')
+class TextToSpeechServicer(object):
+ """Speech synthesis
+ """
-def add_TextToSpeechServicer_to_server(servicer, server):
- rpc_method_handlers = {
- 'ListVoices': grpc.unary_unary_rpc_method_handler(
- servicer.ListVoices,
- request_deserializer=tinkoff_dot_cloud_dot_tts_dot_v1_dot_tts__pb2.ListVoicesRequest.FromString,
- response_serializer=tinkoff_dot_cloud_dot_tts_dot_v1_dot_tts__pb2.ListVoicesResponses.SerializeToString,
- ),
- 'Synthesize': grpc.unary_unary_rpc_method_handler(
- servicer.Synthesize,
- request_deserializer=tinkoff_dot_cloud_dot_tts_dot_v1_dot_tts__pb2.SynthesizeSpeechRequest.FromString,
- response_serializer=tinkoff_dot_cloud_dot_tts_dot_v1_dot_tts__pb2.SynthesizeSpeechResponse.SerializeToString,
- ),
- 'StreamingSynthesize': grpc.unary_stream_rpc_method_handler(
- servicer.StreamingSynthesize,
- request_deserializer=tinkoff_dot_cloud_dot_tts_dot_v1_dot_tts__pb2.SynthesizeSpeechRequest.FromString,
- response_serializer=tinkoff_dot_cloud_dot_tts_dot_v1_dot_tts__pb2.StreamingSynthesizeSpeechResponse.SerializeToString,
- ),
- }
- generic_handler = grpc.method_handlers_generic_handler(
- 'tinkoff.cloud.tts.v1.TextToSpeech', rpc_method_handlers)
- server.add_generic_rpc_handlers((generic_handler,))
-
+ def ListVoices(self, request, context):
+ """Not implemented Method for retrieving available voice list.
+ """
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
+ context.set_details('Method not implemented!')
+ raise NotImplementedError('Method not implemented!')
- # This class is part of an EXPERIMENTAL API.
-class TextToSpeech(object):
- """Speech synthesis.
+ def Synthesize(self, request, context):
+ """Not implemented Method for fragment synthesis.
"""
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
+ context.set_details('Method not implemented!')
+ raise NotImplementedError('Method not implemented!')
- @staticmethod
- def ListVoices(request,
- target,
- options=(),
- channel_credentials=None,
- call_credentials=None,
- insecure=False,
- compression=None,
- wait_for_ready=None,
- timeout=None,
- metadata=None):
- return grpc.experimental.unary_unary(request, target, '/tinkoff.cloud.tts.v1.TextToSpeech/ListVoices',
- tinkoff_dot_cloud_dot_tts_dot_v1_dot_tts__pb2.ListVoicesRequest.SerializeToString,
- tinkoff_dot_cloud_dot_tts_dot_v1_dot_tts__pb2.ListVoicesResponses.FromString,
- options, channel_credentials,
- insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
+ def StreamingSynthesize(self, request, context):
+ """Method for streaming synthesis.
+ """
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
+ context.set_details('Method not implemented!')
+ raise NotImplementedError('Method not implemented!')
- @staticmethod
- def Synthesize(request,
- target,
- options=(),
- channel_credentials=None,
- call_credentials=None,
- insecure=False,
- compression=None,
- wait_for_ready=None,
- timeout=None,
- metadata=None):
- return grpc.experimental.unary_unary(request, target, '/tinkoff.cloud.tts.v1.TextToSpeech/Synthesize',
- tinkoff_dot_cloud_dot_tts_dot_v1_dot_tts__pb2.SynthesizeSpeechRequest.SerializeToString,
- tinkoff_dot_cloud_dot_tts_dot_v1_dot_tts__pb2.SynthesizeSpeechResponse.FromString,
- options, channel_credentials,
- insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
- @staticmethod
- def StreamingSynthesize(request,
- target,
- options=(),
- channel_credentials=None,
- call_credentials=None,
- insecure=False,
- compression=None,
- wait_for_ready=None,
- timeout=None,
- metadata=None):
- return grpc.experimental.unary_stream(request, target, '/tinkoff.cloud.tts.v1.TextToSpeech/StreamingSynthesize',
- tinkoff_dot_cloud_dot_tts_dot_v1_dot_tts__pb2.SynthesizeSpeechRequest.SerializeToString,
- tinkoff_dot_cloud_dot_tts_dot_v1_dot_tts__pb2.StreamingSynthesizeSpeechResponse.FromString,
- options, channel_credentials,
- insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
+def add_TextToSpeechServicer_to_server(servicer, server):
+ rpc_method_handlers = {
+ 'ListVoices': grpc.unary_unary_rpc_method_handler(
+ servicer.ListVoices,
+ request_deserializer=tinkoff_dot_cloud_dot_tts_dot_v1_dot_tts__pb2.ListVoicesRequest.FromString,
+ response_serializer=tinkoff_dot_cloud_dot_tts_dot_v1_dot_tts__pb2.ListVoicesResponses.SerializeToString,
+ ),
+ 'Synthesize': grpc.unary_unary_rpc_method_handler(
+ servicer.Synthesize,
+ request_deserializer=tinkoff_dot_cloud_dot_tts_dot_v1_dot_tts__pb2.SynthesizeSpeechRequest.FromString,
+ response_serializer=tinkoff_dot_cloud_dot_tts_dot_v1_dot_tts__pb2.SynthesizeSpeechResponse.SerializeToString,
+ ),
+ 'StreamingSynthesize': grpc.unary_stream_rpc_method_handler(
+ servicer.StreamingSynthesize,
+ request_deserializer=tinkoff_dot_cloud_dot_tts_dot_v1_dot_tts__pb2.SynthesizeSpeechRequest.FromString,
+ response_serializer=tinkoff_dot_cloud_dot_tts_dot_v1_dot_tts__pb2.StreamingSynthesizeSpeechResponse.SerializeToString,
+ ),
+ }
+ generic_handler = grpc.method_handlers_generic_handler(
+ 'tinkoff.cloud.tts.v1.TextToSpeech', rpc_method_handlers)
+ server.add_generic_rpc_handlers((generic_handler,))