:mod:`airflow.contrib.operators.gcp_speech_to_text_operator`
============================================================

.. py:module:: airflow.contrib.operators.gcp_speech_to_text_operator


Module Contents
---------------

.. py:class:: GcpSpeechToTextRecognizeSpeechOperator(audio, config, project_id=None, gcp_conn_id='google_cloud_default', retry=None, timeout=None, *args, **kwargs)

   Bases: :class:`airflow.models.BaseOperator`

   Recognizes speech from audio file and returns it as text.

   .. seealso::
       For more information on how to use this operator, take a look at the guide:
       :ref:`howto/operator:GcpSpeechToTextRecognizeSpeechOperator`

   :param config: information to the recognizer that specifies how to process the request. See more:
       https://googleapis.github.io/google-cloud-python/latest/speech/gapic/v1/types.html#google.cloud.speech_v1.types.RecognitionConfig
   :type config: dict or google.cloud.speech_v1.types.RecognitionConfig
   :param audio: audio data to be recognized. See more:
       https://googleapis.github.io/google-cloud-python/latest/speech/gapic/v1/types.html#google.cloud.speech_v1.types.RecognitionAudio
   :type audio: dict or google.cloud.speech_v1.types.RecognitionAudio
   :param project_id: Optional, Google Cloud Platform Project ID where the Compute
       Engine Instance exists.  If set to None or missing, the default project_id from the GCP connection is
       used.
   :type project_id: str
   :param gcp_conn_id: Optional, The connection ID used to connect to Google Cloud
       Platform. Defaults to 'google_cloud_default'.
   :type gcp_conn_id: str
   :param retry: (Optional) A retry object used to retry requests. If None is specified,
           requests will not be retried.
   :type retry: google.api_core.retry.Retry
   :param timeout: (Optional) The amount of time, in seconds, to wait for the request to complete.
       Note that if retry is specified, the timeout applies to each individual attempt.
   :type timeout: float

   .. attribute:: template_fields
      :annotation: = ['audio', 'config', 'project_id', 'gcp_conn_id', 'timeout']

      

   
   .. method:: _validate_inputs(self)



   
   .. method:: execute(self, context)




