Python видео без звука при отправке из WhatsApp - PullRequest
0 голосов
/ 27 мая 2020

У меня особая проблема c при отправке моих видео из Whatsapp на iPhone (все остальное работает: android, веб-приложение на windows и ma c). Ниже вы можете увидеть мой код, каждый раз, когда я отправляю свое видео из приложения Whatsapp на iPhone, оно кажется без звука на iPhone устройствах, я отмечу, что если я отправлю то же видео через диск, например, оно работает отлично.

Я также добавлю, что обычные видео в формате mp4 передаются со звуком. Спасибо :)

with codecs.open(self.fileName + '.txt', 'r', encoding='utf8') as stampFile:
  for line in stampFile:
      if self.stop:
          return
      self.counter += 1
      time = line.split(";")
      currStart = timeClass.calculateTimeToSec(time[0])
      currEnd = timeClass.calculateTimeToSec(time[1])
      currStart = max(currStart, 0)
      currEnd = max(currEnd, 0)
      if currEnd <= currStart:
          return
      clip = VideoFileClip(self.mediaFilePath)
      if currStart >= clip.duration:
          return
      currStart = min(currStart, clip.duration - 1)
      currEnd = min(currEnd, clip.duration)
      clip = clip.subclip(currStart, min(currEnd, clip.duration))
      path = self.dirName + "\\BBrief-Clips" + "/BBrief-" + str(self.counter) + "-" + self.mediaFileName
        #threading.Thread(target=lambda: clip.write_videofile(path, codec='libx264')).start()
        clip.write_videofile(path, codec='libx264')
        if prevClip is None:
            prevClip = clip
            clip = fadeout(clip, 1)
        else:
            clip = clip.set_start(prevClip.end)
            clip = fadein(clip, 1)
            clip = fadeout(clip, 1)
            prevClip = clip
        clips.append(clip)
        duration += currStart - currEnd

    path = self.dirName + "\\Singel-BBrief" + "/BBrief-" + self.mediaFileName
    CompositeVideoClip(clips).write_videofile(path, codec='libx264')
    T.sleep(1)
    self.counter += 1
    for clip in clips:
        clip.close()

1 Ответ

0 голосов
/ 31 мая 2020

Мне удалось решить это решение, изменив выходной файл на MOV.

path = self.dirName + "mediaFileName"[:-4]+".MOV"
    CompositeVideoClip(clips).write_videofile(path, codec='libx264')
...