欧美阿v视频在线大全_亚洲欧美中文日韩V在线观看_www性欧美日韩欧美91_亚洲欧美日韩久久精品

主頁 > 知識(shí)庫(kù) > python實(shí)現(xiàn)多個(gè)視頻文件合成畫中畫效果

python實(shí)現(xiàn)多個(gè)視頻文件合成畫中畫效果

熱門標(biāo)簽:高德地圖標(biāo)注收入咋樣 沈陽防封電銷電話卡 企業(yè)微信地圖標(biāo)注 B52系統(tǒng)電梯外呼顯示E7 萊蕪電信外呼系統(tǒng) 地圖標(biāo)注多個(gè) 銀川電話機(jī)器人電話 鶴壁手機(jī)自動(dòng)外呼系統(tǒng)違法嗎 怎么辦理400客服電話

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

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 根據(jù)時(shí)間軸多個(gè)音頻合成一份音頻(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 多個(gè)視頻合成畫中畫效果無聲>(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')

源碼下載

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • Python實(shí)現(xiàn)雙軸組合圖表柱狀圖和折線圖的具體流程
  • 用Python做個(gè)個(gè)性的動(dòng)畫掛件讓桌面不單調(diào)
  • 如何用Python寫一個(gè)簡(jiǎn)單的通訊錄
  • 自己用python做的一款超炫酷音樂播放器
  • Python做個(gè)自定義動(dòng)態(tài)壁紙還可以放視頻
  • 分析總結(jié)Python數(shù)據(jù)化運(yùn)營(yíng)KMeans聚類
  • python中的zip模塊
  • 總結(jié)分析python數(shù)據(jù)化運(yùn)營(yíng)關(guān)聯(lián)規(guī)則
  • python項(xiàng)目--使用Tkinter的日歷GUI應(yīng)用程序
  • 如何使用Python做個(gè)自定義動(dòng)態(tài)壁紙

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

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《python實(shí)現(xiàn)多個(gè)視頻文件合成畫中畫效果》,本文關(guān)鍵詞  python,實(shí)現(xiàn),多個(gè),視頻,文件,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《python實(shí)現(xiàn)多個(gè)視頻文件合成畫中畫效果》相關(guān)的同類信息!
  • 本頁收集關(guān)于python實(shí)現(xiàn)多個(gè)視頻文件合成畫中畫效果的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    欧美阿v视频在线大全_亚洲欧美中文日韩V在线观看_www性欧美日韩欧美91_亚洲欧美日韩久久精品
  • <rt id="w000q"><acronym id="w000q"></acronym></rt>
  • <abbr id="w000q"></abbr>
    <rt id="w000q"></rt>
    亚洲一区二区五区| 中文字幕 日本| 国产传媒视频在线| www久久精品| 美日韩一区二区三区| 午夜一区二区三区免费| 4438成人网| 水野朝阳av一区二区三区| 欧美xxxx日本和非洲| 精品视频在线免费观看| 一区二区三区四区精品在线视频 | 一区二区三区日韩在线观看| 成人av网站大全| 亚洲成人生活片| 亚洲人吸女人奶水| 99精品国产热久久91蜜凸| 色av一区二区| 日本不卡在线视频| 亚洲精品国产一区黑色丝袜| 26uuu精品一区二区三区四区在线| 免费xxxx性欧美18vr| 国产精品免费无码| 国产欧美视频在线观看| 国产成人午夜片在线观看高清观看| 国产精品成人69xxx免费视频| 国产精品欧美久久久久无广告 | 韩国女主播成人在线观看| 91精品国自产在线| 久久综合久久综合久久综合| 国产原创一区二区三区| 91麻豆精品成人一区二区| 亚洲视频在线观看三级| av不卡中文字幕| 日韩欧美亚洲国产另类| 国产一区二区三区国产| 亚洲成人生活片| 亚洲国产日韩综合久久精品| 国产麻豆xxxvideo实拍| 乱码一区二区三区| 日韩三级免费观看| 国产一区二区美女诱惑| 欧美黄色aaa| 亚洲午夜一区二区| 在线免费观看麻豆| 国产精品麻豆久久久| 免费人成视频在线播放| 91精品福利在线一区二区三区| 另类人妖一区二区av| 亚洲一区电影在线观看| 亚洲激情网站免费观看| 亚洲第一页av| 中文字幕在线观看一区| 日本道中文字幕| 精品国产伦理网| 成a人片亚洲日本久久| 欧美日高清视频| 国产揄拍国内精品对白| 欧美主播一区二区三区美女| 日韩av电影免费观看高清完整版| sm捆绑调教视频| 亚洲成在人线免费| a级黄色免费视频| 一区二区理论电影在线观看| 全黄一级裸体片| 亚洲色图视频免费播放| 国产亚洲无码精品| 中文字幕在线观看不卡视频| 国产精品九九视频| 国产精品盗摄一区二区三区| 国产精品无码一区二区三| 日本一区二区动态图| 中文字幕精品视频在线| 中文字幕欧美日韩一区| 亚洲熟女乱综合一区二区三区| 国产精品蜜臀在线观看| 五月婷婷综合在线观看| 亚洲人被黑人高潮完整版| 三上悠亚影音先锋| 一区二区三区日韩精品| 天天操天天干天天操天天干| 亚洲sss视频在线视频| 久久国产高清视频| 日本不卡高清视频| 欧美午夜精品久久久久久孕妇 | 久久九九国产精品| 91传媒理伦片在线观看| 国产精品成人在线观看| 国产肥白大熟妇bbbb视频| 亚洲主播在线观看| 日韩成人毛片视频| 国产一区二区福利| 日韩欧美国产综合一区| 蜜桃视频无码区在线观看| 国产精品色噜噜| 中文字幕免费高清| 婷婷国产v国产偷v亚洲高清| 色婷婷亚洲综合| 国产一区二区精品久久99| 欧美一区二区不卡视频| 99re成人精品视频| 国产精品色噜噜| 亚洲色图日韩精品| 久99久精品视频免费观看| 在线不卡免费av| 女人扒开双腿让男人捅| 日韩美女视频19| 久久人妻无码aⅴ毛片a片app| 美女精品自拍一二三四| 在线电影一区二区三区| 性折磨bdsm欧美激情另类| 亚洲欧美怡红院| 精品国产国产综合精品| 国产综合色在线| 精品国产精品一区二区夜夜嗨| 国产一级二级在线观看| 亚洲高清免费视频| 欧美亚洲综合一区| 91免费精品国自产拍在线不卡| 中文字幕在线观看一区| 欧美大片xxxx| 高清不卡一二三区| 国产精品丝袜久久久久久app| 日本成人精品视频| 国产精品69毛片高清亚洲| 久久久久国产精品麻豆ai换脸| 日本性高潮视频| 国内精品国产成人| 久久久久国产精品麻豆| 国产破处视频在线观看| 国产中文字幕一区| 国产欧美日韩精品a在线观看| 99久久久无码国产精品不卡| 国产一区二区三区免费在线观看 | 久久99久久99精品免视看婷婷| 日韩一区二区三区高清免费看看| 呦呦视频在线观看| 麻豆精品一二三| www国产成人免费观看视频 深夜成人网| 久久精品成人av| 蜜桃视频在线一区| 久久嫩草精品久久久精品| 国产第一页精品| 福利一区福利二区| 亚洲美女视频在线观看| 欧美日韩综合在线| 欧美大片免费播放器| 美女网站在线免费欧美精品| 久久―日本道色综合久久| xxxxx99| 国产成人免费网站| 亚洲人成在线观看一区二区| 精品视频在线免费| 波多野结衣一本| 精品一区二区在线播放| 国产欧美日韩视频在线观看| 一区二区视频免费看| 免费看三级黄色片| 免费av网站大全久久| 国产日韩v精品一区二区| 一本一本久久a久久精品综合麻豆| 中文字幕在线观看视频www| 五月综合激情网| 久久久久综合网| 色婷婷久久久久swag精品| 性感美女一区二区三区| 麻豆免费精品视频| 国产精品久久久久久久午夜片 | 农村末发育av片一区二区| 男人的天堂亚洲一区| 中文字幕不卡在线| 欧美日韩亚洲综合一区二区三区| 亚洲一区二区观看| 成人av在线观| 日本一区中文字幕| 国产精品久久久久久久午夜片| 欧美蜜桃一区二区三区| youjizz亚洲女人| 99久久综合网| 精品无人码麻豆乱码1区2区| 亚洲欧美欧美一区二区三区| 日韩一二三四区| 老女人性淫交视频| 给我看免费高清在线观看| 粗大黑人巨茎大战欧美成人| 亚洲国产精品久久人人爱| 久久久不卡网国产精品一区| 在线观看区一区二| 中文字幕黄色网址| 免费在线观看日韩av| 国产一区91精品张津瑜| 亚洲在线视频网站| 国产日韩欧美精品综合| 欧美电影在线免费观看| 久久久精品少妇| 黄色短视频在线观看| 波多野结衣中文一区| 久久精品99国产精品日本| 一区二区三区在线观看网站| 久久久99精品免费观看| 欧美一区二区大片|