code: def stream(cls, source_file, error_handling=ERROR_PASS):
          
          string_buffer = []
          for index, line in enumerate(chain(source_file, '\n')):
              if line.strip():
                  string_buffer.append(line)
              else:
                  source = string_buffer
                  string_buffer = []
                  if source and all(source):
                      try:
                          yield SubRipItem.from_lines(source)
                      except Error as error:
                          error.args += (''.join(source), )
                          cls._handle_error(error, error_handling, index)
docs: stream(source_file, [error_handling])
  
          This method yield SubRipItem instances a soon as they have been parsed
          without storing them. It is a kind of SAX parser for .srt files.
  
          `source_file` -> Any iterable that yield unicode strings, like a file
              opened with `codecs.open()` or an array of unicode.
  
          Example:
              >>> import pysrt
              >>> import codecs
              >>> file = codecs.open('movie.srt', encoding='utf-8')
              >>> for sub in pysrt.stream(file):
              ...     sub.text += "\nHello !"
              ...     print unicode(sub)