class_docstr: Constructs a Whisper processor which wraps a Whisper feature extractor and a Whisper tokenizer into a single
  processor.
  
  [`WhisperProcessor`] offers all the functionalities of [`WhisperFeatureExtractor`] and [`WhisperTokenizer`]. See
  the [`~WhisperProcessor.__call__`] and [`~WhisperProcessor.decode`] for more information.
  
  Args:
      feature_extractor (`WhisperFeatureExtractor`):
          An instance of [`WhisperFeatureExtractor`]. The feature extractor is a required input.
      tokenizer (`WhisperTokenizer`):
          An instance of [`WhisperTokenizer`]. The tokenizer is a required input.
code: def get_decoder_prompt_ids(
      self, task=None, language=None, no_timestamps=True
  ):
      forced_decoder_tokens = ""
  
      if language is not None:
          if (
              f"<|{language}|>"
              not in self.tokenizer.additional_special_tokens
          ):
              raise ValueError(
                  f"{language} is not supported. The language should be one of the following: '<|en|>',"
                  " '<|zh|>', '<|de|>', '<|es|>', '<|ru|>', '<|ko|>', '<|fr|>', '<|ja|>', '<|pt|>', '<|tr|>',"
                  " '<|pl|>', '<|ca|>', '<|nl|>', '<|ar|>', '<|sv|>', '<|it|>', '<|id|>', '<|hi|>', '<|fi|>',"
                  " '<|vi|>', '<|iw|>', '<|uk|>', '<|el|>', '<|ms|>', '<|cs|>', '<|ro|>', '<|da|>', '<|hu|>',"
                  " '<|ta|>', '<|no|>', '<|th|>', '<|ur|>', '<|hr|>', '<|bg|>', '<|lt|>', '<|la|>', '<|mi|>',"
                  " '<|ml|>', '<|cy|>', '<|sk|>', '<|te|>', '<|fa|>', '<|lv|>', '<|bn|>', '<|sr|>', '<|az|>',"
                  " '<|sl|>', '<|kn|>', '<|et|>', '<|mk|>', '<|br|>', '<|eu|>', '<|is|>', '<|hy|>', '<|ne|>',"
                  " '<|mn|>', '<|bs|>', '<|kk|>', '<|sq|>', '<|sw|>', '<|gl|>', '<|mr|>', '<|pa|>', '<|si|>',"
                  " '<|km|>', '<|sn|>', '<|yo|>', '<|so|>', '<|af|>', '<|oc|>', '<|ka|>', '<|be|>', '<|tg|>',"
                  " '<|sd|>', '<|gu|>', '<|am|>', '<|yi|>', '<|lo|>', '<|uz|>', '<|fo|>', '<|ht|>', '<|ps|>',"
                  " '<|tk|>', '<|nn|>', '<|mt|>', '<|sa|>', '<|lb|>', '<|my|>', '<|bo|>', '<|tl|>', '<|mg|>',"
                  " '<|as|>', '<|tt|>', '<|haw|>', '<|ln|>', '<|ha|>', '<|ba|>', '<|jw|>', '<|su|>'"
              )
          forced_decoder_tokens += f"<|{language}|>"
  
      if task is not None:
          if (
              f"<|{task}|>"
              not in self.tokenizer.additional_special_tokens
          ):
              raise ValueError(
                  f"'{task}' is not supported. The language should be in : {{'transcribe', 'translate'}}"
              )
          forced_decoder_tokens += f"<|{task}|>"
  
      forced_decoder_tokens += (
          "<|notimestamps|>" if no_timestamps else ""
      )
      ids = self.tokenizer.encode(forced_decoder_tokens)
      forced_decoder_ids = [
          (rank + 1, token) for rank, token in enumerate(ids)
      ]
      return forced_decoder_ids
  
imports: from ...processing_utils import ProcessorMixin
label_desc: Use image node_id 2 for calling the WhisperProcessor obj's underlying member method code with example usage: obj.get_decoder_prompt_ids(task, language, no_timestamps) and returns: forced_decoder_ids