校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > python實現多個視頻文件合成畫中畫效果

python實現多個視頻文件合成畫中畫效果

熱門標簽:高德地圖標注收入咋樣 沈陽防封電銷電話卡 企業微信地圖標注 B52系統電梯外呼顯示E7 萊蕪電信外呼系統 地圖標注多個 銀川電話機器人電話 鶴壁手機自動外呼系統違法嗎 怎么辦理400客服電話

本文實例為大家分享了多個視頻文件合成畫中畫效果的python代碼,供大家參考,具體內容如下

Step 1 從視頻中分離出音頻(MP4->mp3)

def separateMp4ToMp3(tmp):
   mp4 = tmp.replace('.tmp', '.mp4')
   print('---> Separate the video clip {0}'.format(mp4))

   mp3 = tmp.replace('.tmp', '.mp3')
   if os.path.exists(mp3):
      print '\n\t{0} is detected. Skip. \n\tPlease delete .mp3 file if you need re-separate.'.format(mp3)
      return

   cmd = 'ffmpeg -i {0} -f mp3 -vn -loglevel fatal {1}'.format(mp4, mp3)
   print '\t{0}'.format(cmd)

   x = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
   
   for log in x.stdout.readlines():
      print '[ffmpeg info] {0}'.format(log)
   for log in x.stderr.readlines():
      print '[ffmpeg error] {0}'.format(log)

   print '\tSuccess! {0} -> {1}\n'.format(mp4, mp3)

Step 2 根據時間軸多個音頻合成一份音頻(MP3->mp3)

def composeMp3ToMp3(arr = []):
   if len(arr) =0 :
      print('--->Operate audio array is empty!')
      return
   
   thisDir = os.path.dirname(arr[0])
   if (os.path.exists(thisDir + "/composeAudio.mp3")):
      print('--->{0}/composeAudio.mp3 is exist, if you need re-gennerate,Please delete it!'.format(thisDir))
      return
      
   print('---> Compose the audio :')
   var = ''
   for tem in arr:
      if os.path.exists(tem) == False:
         print '\n\t{0} is not exist! \n\tPlease make sure audio file be exist if you need compose.'.format(tem)
         return
      var = var + " -i " + tem
      
   if var == '':
      print '\n\t{0} is empty. \n\tPlease check .mp3 file if you need compose.'.format(var)
      return
      
   cmd = 'ffmpeg {0} -filter_complex amix=inputs=2:duration=first:dropout_transition=2 -f mp3 -loglevel fatal {1}/composeAudio.mp3'.format(var, thisDir)
   print '\t{0}'.format(cmd)
   x = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
   
   for log in x.stdout.readlines():
      print '[ffmpeg info] {0}'.format(log)
   for log in x.stderr.readlines():
      print '[ffmpeg error] {0}'.format(log)

   print '\tSuccess! {0} -> {1}\n'.format(var, thisDir + "/composeAudio.mp3")

Step 3 多個視頻合成畫中畫效果無聲>(MP4->mp4)

def composeMp4ToMp4(arr = []):
   if len(arr) = 0:
      print('--->Operate video array is empty!')
      return
   
   thisDir = os.path.dirname(arr[0])
   if (os.path.exists(thisDir + "/composeVideo.mp4")):
      print('--->{0}/composeVideo.mp4 is exist, if you need re-gennerate,Please delete it!'.format(thisDir))
      return
   
   print('---> Compose the video :')
   var = ''
   temparr = []
   for tem in arr:
      if os.path.exists(tem) == False:
         print '\n\t{0} is not exist! \n\tPlease make sure video file be exist if you need compose.'.format(tem)
         return
      
      #split image
      png = tem.replace('.mp4', '.png')
      tempcmd="ffmpeg -i {0} -ss 00:00:2.435 -loglevel fatal -vframes 1 {1}".format(tem, png)
      print '\t{0}'.format(tempcmd)
      x = subprocess.Popen(tempcmd, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
      x.wait()
      for log in x.stdout.readlines():
         print'[ffmpeg info] {0}'.format(log)
      for log in x.stderr.readlines():
         print'[ffmpeg error] {0}'.format(log)
      
      img = Image.open(png)
      imgSize = img.size
      #ipad
      if (imgSize[0] > imgSize[1]) :
         temparr.append(tem)
      #mobile
      else:
         var = var + " -i " + tem
      img.close()
      
   if (len(temparr) > 0):
      for tem in temparr:
         var = var + " -i " + tem
   
   if var == '':
      print '\n\t{0} is empty. \n\tPlease check video file if you need compose.'.format(var)
      return
   
   cmd = 'ffmpeg ' + var + ' -filter_complex "[1:v]scale=w=176:h=144:force_original_aspect_ratio=decrease[ckout];[0:v]' \

        '[ckout]overlay=x=W-w-10:y=10[out]" -map "[out]" -movflags faststart -loglevel fatal ' + thisDir + '/composeVideo.mp4'.format(var, thisDir)
   print '\t{0}'.format(cmd)
   x = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
   
   for log in x.stdout.readlines():
      print '[ffmpeg info] {0}'.format(log)
   for log in x.stderr.readlines():
      print '[ffmpeg error] {0}'.format(log)
   
   print '\tSuccess!\n {0} -> {1}\n'.format(var, thisDir + "/composeVideo.mp4")

Step 4 音頻與視頻合成

def communicateAudioVideo(folder):
   if (os.path.exists(folder + "/communicateVideo.mp4")):
      print('--->{0}/communicateVideo.mp4 is exist, if you need re-gennerate,Please delete it!'.format(folder))
      return
   
   if ((os.path.exists(folder + "/composeVideo.mp4") == False) or
         (os.path.exists(folder + "/composeAudio.mp3") == False)):
      print('--->{0}/composeVideo.mp4  or composeAudio.mp3 must be exist!'.format(folder))
      return
   
   print('---> Communicate the video :')
   cmd = 'ffmpeg -i ' + folder + '/composeVideo.mp4 -i ' + folder + '/composeAudio.mp3 -f mp4 ' \

         ' -loglevel fatal ' + folder +'/communicateVideo.mp4'
   print '\t{0}'.format(cmd)
   x = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
   
   for log in x.stdout.readlines():
      print '[ffmpeg info] {0}'.format(log)
   for log in x.stderr.readlines():
      print '[ffmpeg error] {0}'.format(log)
   
   print '\tSuccess!\n {0}  and {1} -> {2}\n'.format(folder + '/composeVideo.mp4', folder + '/composeAudio.mp3', folder +'/communicateVideo.mp4')

源碼下載

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • Python實現雙軸組合圖表柱狀圖和折線圖的具體流程
  • 用Python做個個性的動畫掛件讓桌面不單調
  • 如何用Python寫一個簡單的通訊錄
  • 自己用python做的一款超炫酷音樂播放器
  • Python做個自定義動態壁紙還可以放視頻
  • 分析總結Python數據化運營KMeans聚類
  • python中的zip模塊
  • 總結分析python數據化運營關聯規則
  • python項目--使用Tkinter的日歷GUI應用程序
  • 如何使用Python做個自定義動態壁紙

標簽:呼倫貝爾 葫蘆島 湘西 烏魯木齊 安慶 三亞 銀川 呼倫貝爾

巨人網絡通訊聲明:本文標題《python實現多個視頻文件合成畫中畫效果》,本文關鍵詞  python,實現,多個,視頻,文件,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《python實現多個視頻文件合成畫中畫效果》相關的同類信息!
  • 本頁收集關于python實現多個視頻文件合成畫中畫效果的相關信息資訊供網民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    久久久噜噜噜久久中文字幕色伊伊 | 成人免费视频app| 久久黄色级2电影| 免费观看91视频大全| 日本vs亚洲vs韩国一区三区 | 三级一区在线视频先锋| 亚洲综合色区另类av| 亚洲午夜在线观看视频在线| 亚洲自拍偷拍综合| 亚洲国产成人av| 日本免费新一区视频 | 国产日韩影视精品| 国产精品女主播在线观看| 国产精品久久久久久久久果冻传媒| 国产精品私房写真福利视频| 中文字幕视频一区| 一二三四社区欧美黄| 无码av免费一区二区三区试看| 五月婷婷综合激情| 国产曰批免费观看久久久| 成人激情午夜影院| 欧美日韩不卡一区二区| 日韩欧美一卡二卡| 亚洲视频小说图片| 亚洲超碰97人人做人人爱| 精品一区二区av| av爱爱亚洲一区| 欧美一级电影网站| 国产女主播在线一区二区| 亚洲午夜精品一区二区三区他趣| 日韩va欧美va亚洲va久久| 懂色av中文字幕一区二区三区| 91福利区一区二区三区| 欧美大尺度电影在线| 亚洲欧美区自拍先锋| 久久激情五月激情| 欧美色图片你懂的| 国产日产欧美一区| 日本中文字幕一区二区有限公司| 成人在线一区二区三区| 欧美另类z0zxhd电影| 久久人人爽爽爽人久久久| 亚洲成av人片在线观看无码| 成人一级黄色片| 日韩一区二区在线观看视频| 亚洲男同1069视频| 国产精品白丝jk黑袜喷水| 欧美精品日日鲁夜夜添| 亚洲视频狠狠干| 粉嫩av一区二区三区在线播放 | 国产黄色精品视频| 欧美日韩国产欧美日美国产精品| 国产精品久久久一区麻豆最新章节| 日韩国产欧美在线播放| 91成人国产精品| 国产精品国产三级国产aⅴ入口| 精品一区二区三区不卡 | 国产日本欧美一区二区| 日韩激情中文字幕| 欧美午夜精品一区二区蜜桃| 成人欧美一区二区三区小说| 国产一区二区导航在线播放| 91精品国产91久久久久久一区二区 | 国产91丝袜在线观看| 欧美一级二级三级乱码| 日韩在线a电影| 4438x成人网最大色成网站| 亚洲不卡av一区二区三区| 色婷婷综合久久久久中文 | 99综合电影在线视频| 久久精品一级爱片| 精品一区二区三区av| 久久综合色天天久久综合图片| 久久精品国产秦先生| 欧美成人欧美edvon| 精品一区二区免费在线观看| 欧美成人女星排名| 国产剧情一区在线| 中文字幕欧美区| 国产+成+人+亚洲欧洲自线| 欧美国产1区2区| av在线免费不卡| 亚洲视频在线观看三级| 色婷婷av一区二区三区软件| 亚洲一区二区三区四区不卡| 欧美欧美欧美欧美| 麻豆精品一二三| 日本一区二区三区高清不卡| 波多野结衣精品在线| 亚洲一区二区三区不卡国产欧美| 欧美日韩国产另类不卡| 久久99久久久久| 中日韩av电影| 欧美中文字幕亚洲一区二区va在线| 天堂成人免费av电影一区| 日韩一级精品视频在线观看| 高清beeg欧美| 亚洲国产一区二区三区青草影视| 日韩一区二区免费在线观看| 粉嫩av亚洲一区二区图片| 亚洲国产中文字幕| 精品久久久久一区二区国产| 99久久国产综合色|国产精品| 亚洲五码中文字幕| 久久综合九色综合97婷婷| 91免费观看国产| 日本不卡高清视频| 国产精品国产三级国产| 欧美高清www午色夜在线视频| 国产一区美女在线| 亚洲图片欧美综合| 日本一区二区三区在线观看| 欧美人xxxx| 91在线观看高清| 国产一区二区三区在线观看免费 | 欧美成人在线直播| kk眼镜猥琐国模调教系列一区二区| 亚洲综合男人的天堂| 久久蜜桃一区二区| 欧美久久一二三四区| 成人激情开心网| 国产在线精品一区二区不卡了| 亚洲午夜电影在线| 中文字幕日韩精品一区| 欧美变态口味重另类| 欧美视频在线一区| 99国产精品国产精品久久| 国产美女一区二区三区| 蜜桃av噜噜一区| 亚洲成av人影院| 夜夜嗨av一区二区三区网页| 亚洲国产精品传媒在线观看| 精品久久久影院| 日韩欧美综合在线| 欧美三电影在线| 91黄色激情网站| 91成人在线精品| 97se亚洲国产综合自在线| 床上的激情91.| 国产成人8x视频一区二区| 国产一区二区视频在线播放| 久久99久久久久久久久久久| 男男gaygay亚洲| 免费高清在线视频一区·| 天堂成人免费av电影一区| 天堂一区二区在线| 日本成人中文字幕在线视频| 午夜成人免费视频| 日本伊人色综合网| 蜜臀久久久99精品久久久久久| 日本伊人精品一区二区三区观看方式| 亚洲自拍偷拍综合| 五月天视频一区| 美女性感视频久久| 国产一区二区电影| 成人小视频在线观看| 粉嫩绯色av一区二区在线观看| 成人国产免费视频| 91老师国产黑色丝袜在线| 色菇凉天天综合网| 欧美狂野另类xxxxoooo| 日韩一区二区精品在线观看| 欧美r级电影在线观看| 久久久精品人体av艺术| 国产精品色噜噜| 亚洲一卡二卡三卡四卡五卡| 日韩1区2区日韩1区2区| 激情六月婷婷综合| 成人黄色777网| 欧美午夜影院一区| 精品久久免费看| 中文字幕视频一区二区三区久| 亚洲综合另类小说| 精品在线一区二区| 成人动漫精品一区二区| 日本道精品一区二区三区| 91精品国产一区二区三区香蕉 | 亚洲日本中文字幕区| 亚洲国产视频一区二区| 精品亚洲免费视频| 99re免费视频精品全部| 欧美一区二区三区色| 国产欧美日韩在线视频| 亚洲一区二区三区爽爽爽爽爽| 免费国产亚洲视频| 91亚洲精品一区二区乱码| 欧美精品九九99久久| 国产精品美女一区二区| 婷婷开心激情综合| 波多野结衣一区二区三区| 91精品欧美福利在线观看| 国产精品乱子久久久久| 日本不卡1234视频| 色综合天天综合给合国产| 91精品国产色综合久久久蜜香臀| 国产日韩精品视频一区| 日韩高清欧美激情| 在线欧美小视频| 国产精品久久久久久久久久免费看 | 欧美大胆一级视频|