code: async def get_version(self, timeout: int = 15) -> Optional[str]:
          
          command = ["-version"]
          # open input for capture 1 frame
  
          is_open = await self.open(cmd=command, input_source=None, output="")
  
          # error after open?
          if not is_open:
              _LOGGER.warning("Error starting FFmpeg.")
              return
  
          # read output
          try:
              proc_func = functools.partial(self._proc.communicate, timeout=timeout)
              output, _ = await self._loop.run_in_executor(None, proc_func)
  
              result = re.search(r"ffmpeg version (\S*)", output.decode())
              if result is not None:
                  return result.group(1)
  
          except (subprocess.TimeoutExpired, ValueError):
              _LOGGER.warning("Timeout reading stdout.")
              self.kill()
  
          return None
docs: Execute FFmpeg process and parse the version information.
  
          Return full FFmpeg version string. Such as 3.4.2-tessus