MCPcopy
hub / github.com/pyload/pyload / _postprocess

Method _postprocess

module/plugins/hoster/YoutubeCom.py:652–727  ·  view source on GitHub ↗
(self, video_filename, audio_filename, subtitles_files)

Source from the content-addressed store, hash-verified

650 return srt_files
651
652 def _postprocess(self, video_filename, audio_filename, subtitles_files):
653 final_filename = video_filename
654 subs_embed = self.config.get("subs_embed")
655
656 self.pyfile.setCustomStatus("postprocessing")
657 self.pyfile.setProgress(0)
658
659 if self.ffmpeg.found:
660 if audio_filename is not None:
661 video_suffix = os.path.splitext(video_filename)[1]
662 final_filename = os.path.join(os.path.dirname(video_filename),
663 self.file_name +
664 (video_suffix if video_suffix == os.path.splitext(audio_filename)[1]
665 else ".mkv"))
666
667 self.ffmpeg.add_stream(('v', video_filename))
668 self.ffmpeg.add_stream(('a', audio_filename))
669
670 if subtitles_files and subs_embed:
671 for subtitle in subtitles_files:
672 self.ffmpeg.add_stream(('s',) + subtitle)
673
674 self.ffmpeg.set_start_time(self.start_time)
675 self.ffmpeg.set_output_filename(final_filename)
676
677 self.pyfile.name = os.path.basename(final_filename)
678 self.pyfile.size = os.path.getsize(video_filename) + \
679 os.path.getsize(audio_filename) #: Just an estimate
680
681 if self.ffmpeg.run():
682 self.remove(video_filename, trash=False)
683 self.remove(audio_filename, trash=False)
684 if subtitles_files and subs_embed:
685 for subtitle in subtitles_files:
686 self.remove(subtitle[0])
687
688 else:
689 self.log_warning(_("ffmpeg error"), self.ffmpeg.error_message)
690 final_filename = video_filename
691
692 elif self.start_time[0] != 0 or self.start_time[1] != 0 or subtitles_files and subs_embed:
693 inputfile = video_filename + "_"
694 final_filename = video_filename
695 os.rename(video_filename, inputfile)
696
697 self.ffmpeg.add_stream(('v', video_filename))
698 self.ffmpeg.set_start_time(self.start_time)
699
700 if subtitles_files and subs_embed:
701 for subtitle in subtitles_files:
702 self.ffmpeg.add_stream(('s', subtitle))
703
704 self.pyfile.name = os.path.basename(final_filename)
705 self.pyfile.size = os.path.getsize(inputfile) #: Just an estimate
706
707 if self.ffmpeg.run():
708 self.remove(inputfile, trash=False)
709 if subtitles_files and subs_embed:

Callers 1

processMethod · 0.95

Calls 12

setCustomStatusMethod · 0.80
setProgressMethod · 0.80
joinMethod · 0.80
add_streamMethod · 0.80
set_start_timeMethod · 0.80
set_output_filenameMethod · 0.80
log_warningMethod · 0.80
set_permissionsMethod · 0.80
_Function · 0.50
getMethod · 0.45
runMethod · 0.45
removeMethod · 0.45

Tested by

no test coverage detected