def generate_video_part(self, txnId): if not self.config.LOCAL: os.chdir("/var/task/") W, H = self.config.VIDEO_SIZE bgImage = mpy.ImageClip(self.config.SB_LOGO_PATH_PREFIX + "bg_1.png") fiu_logo = mpy.ImageClip(self.config.SB_LOGO_PATH_PREFIX + self.image_map.get(self.input_map.get("fiu"))). \ set_position((W/2-150, H/5)).resize(height=self.config.ICON_SIZE) arrow_gif = VideoFileClip(self.config.SB_LOGO_PATH_PREFIX + self.image_map.get("left_arrow")). \ set_position((W/2-30, H/5)).resize(height=self.config.ICON_SIZE) account_logo = mpy.ImageClip(self.config.SB_LOGO_PATH_PREFIX + self.image_map.get(self.input_map.get("account")[0])). \ set_position((W/2+100, H/5)).resize(height=self.config.ICON_SIZE) self.text_to_speech(self.fill_text(self.fill_text(Frame1.lang_map.get('audio1'), 1), 2), Frame1.lang_map.get('lan'), txnId) audioclip = AudioFileClip(self.config.SB_AUDIO_PATH_PREFIX + "audio-" + txnId + "-1.mp3") Frame1.map['text1'] = self.fill_text(self.fill_text(Frame1.lang_map.get('text1'), 1), 2) straight_text(Frame1.map['text1'], Frame1.lang_map.get('font'), Frame1.lang_map.get('fontsize1'), txnId, 1, self.config) text = mpy.ImageClip(self.config.SB_LOGO_PATH_PREFIX_WRITE+'-text-1-' + txnId+'.png') video = mpy.CompositeVideoClip( [ bgImage, fiu_logo, arrow_gif, account_logo, text.set_position(('center', fiu_logo.size[1] + 40)), ], size=self.config.VIDEO_SIZE). \ on_color( color=self.config.WHITE, col_opacity=1).set_duration(audioclip.duration) new_audioclip = CompositeAudioClip([audioclip]) video.audio = new_audioclip os.remove(self.config.SB_AUDIO_PATH_PREFIX + 'audio-' + txnId + '-1.mp3') os.remove(self.config.SB_LOGO_PATH_PREFIX_WRITE+'-text-1-' + txnId+'.png') return video, 1
def generate_video_part(self, txnId): if not self.config.LOCAL: os.chdir("/var/task/") W, H = self.config.VIDEO_SIZE bgImage = mpy.ImageClip(self.config.SB_LOGO_PATH_PREFIX + "bg_5.png") type_logo = mpy.ImageClip(self.config.SB_LOGO_PATH_PREFIX + self.image_map.get(self.input_map.get("type"))). \ set_position((W/2-50, H/5)).resize(width=self.config.ICON_SIZE) self.text_to_speech(self.fill_text(self.fill_text(Frame5.lang_map.get('audio5'), 1), 2), Frame5.lang_map.get('lan'), txnId) audioclip = AudioFileClip(self.config.SB_AUDIO_PATH_PREFIX + "audio-" + txnId + "-5.mp3") Frame5.map['text5'] = self.fill_text(self.fill_text(Frame5.lang_map.get('text5'), 1), 2) straight_text(Frame5.map['text5'], Frame5.lang_map.get('font'), Frame5.lang_map.get('fontsize5'), txnId, 5, self.config) text = mpy.ImageClip(self.config.SB_LOGO_PATH_PREFIX_WRITE+'-text-5-' + txnId+'.png') video = mpy.CompositeVideoClip( [ bgImage, type_logo, text.set_position(('center', type_logo.size[1] + 40)), ], size=self.config.VIDEO_SIZE). \ on_color( color=self.config.WHITE, col_opacity=1).set_duration(audioclip.duration) new_audioclip = CompositeAudioClip([audioclip]) video.audio = new_audioclip os.remove(self.config.SB_AUDIO_PATH_PREFIX + 'audio-' + txnId + '-5.mp3') os.remove(self.config.SB_LOGO_PATH_PREFIX_WRITE+'-text-5-' + txnId+'.png') return video, 5
def generate_video_part(self, txnId): if not self.config.LOCAL: os.chdir("/var/task/") W, H = self.config.VIDEO_SIZE calendar(self.config, 'fifrom', txnId) calendar(self.config, 'fito', txnId) bgImage = mpy.ImageClip(self.config.SB_LOGO_PATH_PREFIX + "bg_7.png") calendar_from_logo = mpy.ImageClip(self.config.SB_LOGO_PATH_PREFIX_WRITE + 'fifrom-' + txnId + '.png'). \ set_position((W / 2 - 170, H / 4)).resize(width=self.config.ICON_SIZE) calendar_to_logo = mpy.ImageClip(self.config.SB_LOGO_PATH_PREFIX_WRITE + 'fito-' + txnId + '.png'). \ set_position((W / 2 + 80, H / 4)).resize(width=self.config.ICON_SIZE) self.text_to_speech(self.fill_text(self.fill_text(Frame4.lang_map.get('audio4'), 1), 2), Frame4.lang_map.get('lan'), txnId) audioclip = AudioFileClip(self.config.SB_AUDIO_PATH_PREFIX + "audio-" + txnId + "-4.mp3") Frame4.map['text4'] = self.fill_text(self.fill_text(Frame4.lang_map.get('text4'), 1), 2) straight_text(Frame4.map['text4'], Frame4.lang_map.get('font'), Frame4.lang_map.get('fontsize4'), txnId, 4, self.config) text = mpy.ImageClip(self.config.SB_LOGO_PATH_PREFIX_WRITE + '-text-4-' + txnId + '.png') video = mpy.CompositeVideoClip( [ bgImage, calendar_from_logo, calendar_to_logo, text.set_position(('center', calendar_to_logo.size[1] + 20)), ], size=self.config.VIDEO_SIZE). \ on_color( color=self.config.WHITE, col_opacity=1).set_duration(audioclip.duration) new_audioclip = CompositeAudioClip([audioclip]) video.audio = new_audioclip os.remove(self.config.SB_AUDIO_PATH_PREFIX + 'audio-' + txnId + '-4.mp3') os.remove(self.config.SB_LOGO_PATH_PREFIX_WRITE + '-text-4-' + txnId + '.png') os.remove(self.config.SB_LOGO_PATH_PREFIX_WRITE + 'fifrom-' + txnId + '.png') os.remove(self.config.SB_LOGO_PATH_PREFIX_WRITE + 'fito-' + txnId + '.png') return video, 4
def generate_video_part(self, txnId): if not self.config.LOCAL: os.chdir("/var/task/") W, H = self.config.VIDEO_SIZE bgImage = mpy.ImageClip(self.config.SB_LOGO_PATH_PREFIX + "bg_2.png") fipList = self.input_map.get("fip") fip_x_position = 0 fip_y_position = 0 fip_img_path = '' num_images_pow = pow(2, len(fipList)) if len(fipList) == 1: fip_x_position = W / 4 - self.config.BANK_ICON_SIZE / 3 fip_img_path = self.config.SB_LOGO_PATH_PREFIX + self.image_map.get( fipList[0]) fip_y_position = H / 4 single = True else: fip_x_position = W / 6 - self.config.BANK_ICON_SIZE / 3 fip_y_position = int(H / num_images_pow) self.concatenate_images(fipList, txnId) fip_img_path = self.config.SB_LOGO_PATH_PREFIX_WRITE + 'combined-' + txnId + '-banks.png' single = False height_final_image = self.config.BANK_ICON_SIZE * int( math.ceil(len(fipList) / 2)) fip_logo = mpy.ImageClip(fip_img_path).set_position( (fip_x_position, fip_y_position)).resize(height=height_final_image) self.text_to_speech(self.fill_text(Frame2.lang_map.get('audio2')), Frame2.lang_map.get('lan'), txnId) audioclip = AudioFileClip(self.config.SB_AUDIO_PATH_PREFIX + "audio-" + txnId + "-2.mp3") Frame2.map['text2'] = self.fill_text(Frame2.lang_map.get('text2')) straight_text(Frame2.map['text2'], Frame2.lang_map.get('font'), Frame2.lang_map.get('fontsize2'), txnId, 2, self.config) text = mpy.ImageClip(self.config.SB_LOGO_PATH_PREFIX_WRITE + '-text-2-' + txnId + '.png') video = mpy.CompositeVideoClip( [ bgImage, fip_logo, text.set_position((W / 5 + 50, H / 5)), ], size=self.config.VIDEO_SIZE). \ on_color( color=self.config.WHITE, col_opacity=1).set_duration(audioclip.duration) new_audioclip = CompositeAudioClip([audioclip]) video.audio = new_audioclip os.remove(self.config.SB_AUDIO_PATH_PREFIX + 'audio-' + txnId + '-2.mp3') os.remove(self.config.SB_LOGO_PATH_PREFIX_WRITE + '-text-2-' + txnId + '.png') if not single: os.remove(fip_img_path) return video, 2
def generate_video_part(self, txnId): if not self.config.LOCAL: os.chdir("/var/task/") W, H = self.config.VIDEO_SIZE bgImage = mpy.ImageClip(self.config.SB_LOGO_PATH_PREFIX + "bg_3.png") phone_logo = mpy.ImageClip(self.config.SB_LOGO_PATH_PREFIX + self.image_map.get('phone')).\ set_position((W/2-self.config.ICON_SIZE*2, H/5)).resize(height=self.config.ICON_SIZE) if 'gif' in self.image_map.get(self.input_map.get('mode')): mode_logo = VideoFileClip(self.config.SB_LOGO_PATH_PREFIX + self.image_map.get(self.input_map.get('mode'))). \ set_position((W/2-self.config.ICON_SIZE/2, H/5)).resize(height=self.config.ICON_SIZE) else: mode_logo = mpy.ImageClip(self.config.SB_LOGO_PATH_PREFIX + self.image_map.get(self.input_map.get('mode'))). \ set_position((W / 2 - self.config.ICON_SIZE / 2, H / 5)).resize(height=self.config.ICON_SIZE) data_logo = mpy.ImageClip(self.config.SB_LOGO_PATH_PREFIX + self.image_map.get(','.join(self.input_map.get("datatype")))).\ set_position((W/2+self.config.ICON_SIZE, H/5)).resize(height=self.config.ICON_SIZE) self.text_to_speech(self.fill_text(self.fill_text(Frame3.lang_map.get('audio3'), 1), 2), Frame3.lang_map.get('lan'), txnId) audioclip = AudioFileClip(self.config.SB_AUDIO_PATH_PREFIX + "audio-" + txnId + "-3.mp3") Frame3.map['text3'] = self.fill_text(self.fill_text(Frame3.lang_map.get('text3'), 1), 2) straight_text(Frame3.map['text3'], Frame3.lang_map.get('font'), Frame3.lang_map.get('fontsize3'), txnId, 3, self.config) text = mpy.ImageClip(self.config.SB_LOGO_PATH_PREFIX_WRITE+'-text-3-' + txnId+'.png') video = mpy.CompositeVideoClip( [ bgImage, phone_logo, mode_logo, data_logo, text.set_position(('center', mode_logo.size[1] + 40)), ], size=self.config.VIDEO_SIZE). \ on_color( color=self.config.WHITE, col_opacity=1).set_duration(audioclip.duration) new_audioclip = CompositeAudioClip([audioclip]) video.audio = new_audioclip os.remove(self.config.SB_AUDIO_PATH_PREFIX + 'audio-' + txnId + '-3.mp3') os.remove(self.config.SB_LOGO_PATH_PREFIX_WRITE+'-text-3-' + txnId+'.png') return video, 3