AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / ubuntu / Perguntas / 1504524
Accepted
Gosha Spichkin
Gosha Spichkin
Asked: 2024-02-24 07:16:20 +0800 CST2024-02-24 07:16:20 +0800 CST 2024-02-24 07:16:20 +0800 CST

Como mesclar vídeo MP4 sem áudio com arquivo MP3 usando ferramentas CLI, considerando deslocamento

  • 772

Tenho um desafio que espero resolver com sua experiência. Possuo um arquivo de vídeo MP4 sem áudio e um arquivo de áudio MP3 separado que desejo sincronizar e mesclar com o vídeo. A complexidade é que o áudio e o vídeo não estão sincronizados no momento. Através da análise manual, determinei que um momento específico no arquivo de áudio (2:13:29) corresponde a um momento específico no vídeo (2:09:17). Gostaria de mesclar os arquivos de forma que os 4 minutos e 12 segundos iniciais do vídeo fiquem pretos, apenas com áudio.

Alguém poderia me orientar no processo de mesclar esses dois arquivos em um único arquivo de vídeo com áudio sincronizado no Ubuntu? Quaisquer utilitários de linha de comando que possam facilitar esta tarefa serão muito apreciados.

Tentei:

ffmpeg -i only_video.mp4 -itsoffset 252 -i only_audio.mp3 -c:v copy -c:a aac final_video_with_audio.mp4

Mas não recebo os primeiros 252 segundos apenas de áudio (com uma tela em branco), infelizmente...

Agradeço antecipadamente por sua ajuda!

video
  • 1 1 respostas
  • 42 Views

1 respostas

  • Voted
  1. Best Answer
    Pavel Geveiler
    2024-02-24T07:53:20+08:002024-02-24T07:53:20+08:00

    Veja como eu sugiro lidar com isso:

    1. Primeiro, crie um vídeo silencioso com duração de 252 segundos.
    2. Em seguida, codifique novamente o arquivo de vídeo existente para corresponder ao formato do vídeo silencioso.
    3. Mescle os dois vídeos para garantir que a duração do arquivo de vídeo corresponda à do arquivo de áudio.
    4. Adicione a trilha de áudio ao arquivo de vídeo mesclado.

    Você precisará de ffmpeg , que parece já ter, e mkvtoolnix , que pode ser instalado com o seguinte comando:

    sudo apt-get install mkvtoolnix
    

    Para criar o vídeo silencioso:

    ffmpeg -f lavfi -i color=c=black:s=1280x720:r=30:d=252 -f lavfi -i anullsrc=r=44100:cl=stereo -c:v libx264 -t 252 -pix_fmt yuv420p -c:a aac -b:a 128k -strict experimental 'silent_video.mp4'
    

    Para recodificar o arquivo de vídeo principal no mesmo formato do vídeo silencioso (pode levar algum tempo se você tiver um arquivo de vídeo grande):

    ffmpeg -i 'only_video.mp4' -c:v libx264 -c:a aac -strict experimental -b:a 128k 'only_video_converted.mp4'
    

    Para mesclar os dois arquivos de vídeo silenciosos em um (é por isso que precisamos instalar o mkvtoolnix : mkvmerge é uma ferramenta de mesclagem de vídeo muito fácil de usar):

    mkvmerge -o 'combined_video.mkv' 'silent_video.mp4' + 'only_video_converted.mp4'
    

    Para adicionar a trilha de áudio ao arquivo de vídeo:

    ffmpeg -i 'combined_video.mkv' -i 'only_audio.mp3' -c copy -map 0:v:0 -map 1:a:0 'final_video_with_audio.mkv'
    

    Seu vídeo com áudio sincronizado e apenas os primeiros 252 segundos de áudio está pronto!

    No meu teste com um vídeo de 33 segundos e um segmento de áudio de 49 segundos, os resultados foram os esperados. No entanto, esteja ciente de que os tempos de processamento podem aumentar significativamente com o tamanho do arquivo de vídeo.

    • 1

relate perguntas

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Existe um comando para listar todos os usuários? Também para adicionar, excluir, modificar usuários, no terminal?

    • 9 respostas
  • Marko Smith

    Como excluir um diretório não vazio no Terminal?

    • 4 respostas
  • Marko Smith

    Como descompactar um arquivo zip do Terminal?

    • 9 respostas
  • Marko Smith

    Como instalo um arquivo .deb por meio da linha de comando?

    • 11 respostas
  • Marko Smith

    Como instalo um arquivo .tar.gz (ou .tar.bz2)?

    • 14 respostas
  • Marko Smith

    Como listar todos os pacotes instalados

    • 24 respostas
  • Martin Hope
    Flimm Como posso usar o docker sem sudo? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    led-Zepp Como faço para salvar a saída do terminal em um arquivo? 2014-02-15 11:49:07 +0800 CST
  • Martin Hope
    ubuntu-nerd Como descompactar um arquivo zip do Terminal? 2011-12-11 20:37:54 +0800 CST
  • Martin Hope
    TheXed Como instalo um arquivo .deb por meio da linha de comando? 2011-05-07 09:40:28 +0800 CST
  • Martin Hope
    Ivan Como listar todos os pacotes instalados 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    David Barry Como determino o tamanho total de um diretório (pasta) na linha de comando? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher "Os seguintes pacotes foram retidos:" Por que e como resolvo isso? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford Como os PPAs podem ser removidos? 2010-07-30 01:09:42 +0800 CST

Hot tag

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve