Comando para converter arquivos em MKV para MP4.
ffmpeg -i "arquivo_original.mkv" -c:v copy -c:a copy "arquivo_novo.mp4"
Comando para converter arquivos em MKV para MP4.
ffmpeg -i "arquivo_original.mp4" -c:v copy -c:a copy "arquivo_novo.mkv"
No meu PC tenho o costume de abrir a pasta onde esta o arquivo direto pelo terminal, isso facilita a vida quanto a necessidade de passar todo o caminho para o arquivo.
Tive alguns problemas que ainda não parei para pesquisar o que houve.
Para arquivos Dual audio a opção -map deve ser utilizada.
Para localizar os Streams digite
ffprobe "arquivo.extensão"
Busque as linhas "Stream #....."
No meu exemplo apareceram
"...Stream #0:0(eng): Video ......"
"...Stream #0:1(por): Audio ......"
"...Stream #0:2(eng): Audio ......"
"...Stream #0:3(por): Subtitle ..."
Temos em um único arquivo o Video em inglês, dois audios em português e inglês e a legenda em portiguês. (bem pelo que eu entendi).
Para conversão de tudo isso, acredito que fique assim.
ffmpeg -i "arquivo_original.extensão" -c:v copy -c:a copy -map 0:0 -map 0:1 -map 0:2 -map 0:3 "arquivo_novo.extensão"
Colocando legenda.. fica maior ainda.. mais funciona.
ffmpeg -i "arquivo_original.extensão" -i "arquivo_legenda.srt" -c:v copy -c:a copy -map 0:0 -map 0:1 -map 0:2 -map 0:3 "arquivo_novo.extensão"
Fica meio grande mais funciona bem.
"Quem tem preguiça de comando grande, também tem preguiça de aprender"
Fonte onde busquei informações.: https://www.todoespacoonline.com/w/2015/03/mkv-para-mp4-ou-mp4-para-mkv-sem-perda-de-qualidade/
ffmpeg -i video_1920.mp4 -vf scale=640:360 video_640.mp4 -hide_bannerUsei este comando para um vídeo em mp4 de 720P, 750MB, e após um tempo...24min, 140mb.
Gostei.. funcionou bem...
"Atualizando" ..... 01/06/2022.
Vai vendo.. consegui colocar vários vídeos juntos...
Fiz assim.
Coloquei todos os vídeos em uma pasta.
Criei um arquivo de texto com os nomes dos vídeos e salvei como TXT. Já fiz isso de buscar um comando para listar todos os arquivos de uma pasta em um arquivo.. mais achei que era mais facil digitar, por ser só 5 arquivos. mesmo assim nao lembro como faz isso..logo digitei.. putz são 8:30 da matina.. tava como sono ainda...
O texto do arquivo lista.txt ficou assim.
file '20220531_11.mkv'
file '20220531_22.mkv'
file '20220531_33.mkv'
file '20220531_44.mkv'
file '20220531_55.mkv'
Depois usei o ffmpeg com o atributo concat assim
ffmpeg -f concat -i lista.txt 20223105_full.mkv
o comando fica mais complexo quando vc tem que colocar atributos de vídeo, audio, legenda e o que for, porem o simples também funciona. Em geral os 5 vídeos juntos ficaram até menores do que eles separados... o audio que eu acho que nao ficou muito bom.. mais vale a pena ver o que pode ser feito... vou pesquisar...mais gostei..
ta ai as fontes
https://aoredordoburacotudoebeira.wordpress.com/2020/09/22/usando-ffmpeg-para-juntar-varios-arquivos-de-videos/
https://www.edivaldobrito.com.br/como-extrair-e-juntar-arquivos-de-video-usando-o-ffmpeg/
https://www.linuxadictos.com/pt/como-juntar-v%C3%ADdeos-no-linux-usando-ffmpeg.html
Vou colocar essa fonte porque tentei e consegui fazer isso com varios videos.
https://www.vivaolinux.com.br/dica/Converter-varios-videos-em-lote-facilmente
Estando na pasta dos arquivos faça o comando
for i in *.mkv; do ffmpeg -i "$i" "${i%.*}.avi"; done
Substitui o .mkv por .mp4 e o .avi para .mkv pois meus videos estao em mp4 e quero em mkv.
vamos ver no que dá.