예제 #1
0
 def convert_next_segment(self):
     # Figure out begin and end
     ebutt3_doc = self.get_segment(begin=self.last_segment_end, end=self.last_segment_end + self._segment_length)
     if ebutt3_doc is not None:
         ebuttd_bindings = self._ebuttd_converter.convert_element(ebutt3_doc.binding, dataset={})
         ebuttd_doc = EBUTTDDocument.create_from_raw_binding(ebuttd_bindings)
         ebuttd_doc.validate()
     else:
         ebuttd_doc = self._default_ebuttd_doc
     self.increment_last_segment_end(self._segment_length)
     self._outbound_carriage_impl.emit_document(ebuttd_doc)
 def convert_next_segment(self):
     # Figure out begin and end
     ebutt3_doc = self.get_segment(
         begin=self.last_segment_end,
         end=self.last_segment_end + self._segment_length
     )
     if ebutt3_doc is not None:
         ebuttd_bindings = self._ebuttd_converter.convert_element(ebutt3_doc.binding, dataset={})
         ebuttd_doc = EBUTTDDocument.create_from_raw_binding(ebuttd_bindings)
         ebuttd_doc.validate()
     else:
         ebuttd_doc = self._default_ebuttd_doc
     self.increment_last_segment_end(self._segment_length)
     self._outbound_carriage_impl.emit_document(ebuttd_doc)
예제 #3
0
    def process_document(self, document, **kwargs):
        # Convert each received document into EBU-TT-D
        if self.is_document(document):
            self.limit_sequence_to_one(document)

            converted_doc = EBUTTDDocument.create_from_raw_binding(
                self._ebuttd_converter.convert_document(document.binding))
            # Specify the time_base since the FilesystemProducerImpl can't derive it otherwise.
            # Hard coded to 'media' because that's all that's permitted in EBU-TT-D. Alternative
            # would be to extract it from the EBUTTDDocument but since it's the only permitted
            # value that would be an unnecessary overhead...
            self.producer_carriage.emit_data(data=converted_doc,
                                             sequence_identifier='default',
                                             time_base='media',
                                             **kwargs)
예제 #4
0
 def convert_data(self, data, **kwargs):
     return EBUTTDDocument.create_from_raw_binding(
         self._converter.convert_document(data)), kwargs