[Risolto] Ruotare un video usando ffmpeg - nonno Pietro - 22/02/2022
Buongiorno a tutti
Voglio creare un dvd utilizzando dei filmati da smartphone vari, con orientazioni diverse. Ho trovato in rete che è possibile farlo utilizzando ffmpeg con righe di comando simili a questa (per la rotazione a destra):
ffmpeg -i input.avi -vf "transpose=3" -sameq -y output.avi
Input.avi dovrebbe essere il filmato origine e output.avi il formato di arrivo, ma mi chiedo se il comando funziona anche per i .mp4 e se i file origine debbono essere nella home o se deve essere esposto il loro indirizzo completo.
Grazie in anticipo
RE: Ruotare un video usando ffmpeg - Septem - 23/02/2022
Ciao Nonno Pietro,
con ffmpeg puoi modificare anche gli mp4.
Al posto di "input.avi" ed "output.avi" devi mettere il nome dei tuoi video, origine e destinazione, e se lanci il comando dalla cartella in cui hai gli originali non serve l'indirizzo completo.
RE: Ruotare un video usando ffmpeg - maxbigsi - 23/02/2022
Ciao nonno Pietro, che software usi per creare il dvd ? potresti ruotare direttamente i video all'interno del programma se questo lo consente, oppure usare Avidemux per ruotarli, se vuoi farlo da riga di comando allora nessun problema
RE: Ruotare un video usando ffmpeg - nonno Pietro - 23/02/2022
Buongiorno e grazie maxbigsi,
normalmente uso Nero su Win, perché penso che Linux sia inferiore a win per quanto riguarda il trattamento dei filmati. Trovo on-line che Nero dovrebbe permettere di ruotare i filmati, ma le procedure che mi indicano non riesco ad applicarle sulla mia versione del programma.
Cosa intendi con precisione quando mi dici che da terminale non c'è nessun problema?
Un caro saluto
RE: Ruotare un video usando ffmpeg - dxgiusti - 23/02/2022
(22/02/2022, 13:18)nonno Pietro Ha scritto: Buongiorno a tutti
Voglio creare un dvd utilizzando dei filmati da smartphone vari, con orientazioni diverse. Ho trovato in rete che è possibile farlo utilizzando ffmpeg con righe di comando simili a questa (per la rotazione a destra):
ffmpeg -i input.avi -vf "transpose=3" -sameq -y output.avi
Input.avi dovrebbe essere il filmato origine e output.avi il formato di arrivo, ma mi chiedo se il comando funziona anche per i .mp4 e se i file origine debbono essere nella home o se deve essere esposto il loro indirizzo completo.
Grazie in anticipo dove sono i file non interessa. l'importante è aprire il terminale nella cartella dei stessi.
.mp4? non dovrebbero esserci problemi, fai una prova e vedi.
RE: Ruotare un video usando ffmpeg - maxbigsi - 23/02/2022
(23/02/2022, 08:08)maxbigsi Ha scritto: Ciao nonno Pietro, che software usi per creare il dvd ? potresti ruotare direttamente i video all'interno del programma se questo lo consente, oppure usare Avidemux per ruotarli, se vuoi farlo da riga di comando allora nessun problema Il nessun problema si riferiva al fatto che è sempre buono usare il terminale per imparare qualcosa in più
RE: Ruotare un video usando ffmpeg - nonno Pietro - 23/02/2022
Bene, ho fatto la prova come suggeriva dxgiusti ed ecco il risultato:
Codice: pietro@nonno-desktop:~$ cd Scrivania
pietro@nonno-desktop:~/Scrivania$ cd 2016_silvia
pietro@nonno-desktop:~/Scrivania/2016_silvia$ ffmpeg -i 20161113173317.mpg -vf "transpose=3" -sameq -y prova.mpeg
ffmpeg version 4.2.4-1ubuntu0.1 Copyright (c) 2000-2020 the FFmpeg developers
built with gcc 9 (Ubuntu 9.3.0-10ubuntu2)
configuration: --prefix=/usr --extra-version=1ubuntu0.1 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --arch=amd64 --enable-gpl --disable-stripping --enable-avresample --disable-filter=resample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librsvg --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opencl --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-nvenc --enable-chromaprint --enable-frei0r --enable-libx264 --enable-shared
WARNING: library configuration mismatch
avcodec configuration: --prefix=/usr --extra-version=1ubuntu0.1 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --arch=amd64 --enable-gpl --disable-stripping --enable-avresample --disable-filter=resample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librsvg --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opencl --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-nvenc --enable-chromaprint --enable-frei0r --enable-libx264 --enable-shared --enable-version3 --disable-doc --disable-programs --enable-libaribb24 --enable-liblensfun --enable-libopencore_amrnb --enable-libopencore_amrwb --enable-libtesseract --enable-libvo_amrwbenc
libavutil 56. 31.100 / 56. 31.100
libavcodec 58. 54.100 / 58. 54.100
libavformat 58. 29.100 / 58. 29.100
libavdevice 58. 8.100 / 58. 8.100
libavfilter 7. 57.100 / 7. 57.100
libavresample 4. 0. 0 / 4. 0. 0
libswscale 5. 5.100 / 5. 5.100
libswresample 3. 5.100 / 3. 5.100
libpostproc 55. 5.100 / 55. 5.100
Option 'sameq' was removed. If you are looking for an option to preserve the quality (which is not what -sameq was for), use -qscale 0 or an equivalent quality factor option.
Failed to set value '1' for option 'sameq': Invalid argument
Error parsing global options: Invalid argument
pietro@nonno-desktop:~/Scrivania/2016_silvia$ 20161113173317.mpg20161113173317.mpg20161113173317.mpg20161113173317.mpg20161113173317.mpg20161113173317.mpg
Se non capisco male, alla fine mi dice che i file .mpeg non possono essere usati, non capisco bene cosa debbo fare.
Un grazie a tutti
RE: Ruotare un video usando ffmpeg - dxgiusti - 23/02/2022
Citazione:L'opzione 'sameq' è stata rimossa. Se stai cercando un'opzione per preservare la qualità (che non è ciò a cui serviva -sameq), usa -qscale 0 o un'opzione del fattore di qualità equivalente.
Impossibile impostare il valore '1' per l'opzione 'sameq': argomento non valido
questo è quello che ti dice.
guardando un poco sul web, leggo che sameq non andrebbe mai usato anzi non esiste proprio ( è stato rimosso ) da ffmpeg.
RE: Ruotare un video usando ffmpeg - nonno Pietro - 24/02/2022
Buongiorno a tutti
Grazie dxgiusti, ho tentato col tuo comando, col seguende risultato (posto solo le ultime righe):
Codice: Please use -q:a or -q:v, -qscale is ambiguous
Expected number for q:v but found: O
A tentativi ho finalmente copiato il file mpeg:
Codice: pietro@nonno-desktop:~/Scrivania/2016_silvia$ ffmpeg -i 20161113173317.mpg -vf "transpose=3" -q:v 0 prova.mpeg
Ho introdotto lo 0 dopo -q:v e il filmato è stato girato a destra. Con numeri diversi (farò la prova) probabilmente la rotazione sarà diversa.
Mi è comparso il seguente avviso:
Codice: [mpeg @ 0x55c05a3b0d00] VBV buffer size not set, using default size of 230KB
If you want the mpeg file to be compliant to some specification
Like DVD, VCD or others, make sure you set the correct buffer size
Non comprendo bene se è necessaria qualche azione e come farla.
RE: Ruotare un video usando ffmpeg - Sargon6 - 25/02/2022
Vedi se qualcuna di queste istruzioni ti può essere utile...
Codice: ffmpeg -i videoin.mp4 -vf "transpose=0" -q:a 0 -q:v 0 transpose_0q.mp4 # Ruota di 90 gradi in senso orario e specchia l'intero video mantenendone inalterata la qualità
ffmpeg -i videoin.mp4 -vf "transpose=1" -q:a 0 -q:v 0 transpose_1q.mp4 # Ruota di 90 gradi in senso orario l'intero video mantenendone inalterata la qualità
ffmpeg -i videoin.mp4 -vf "transpose=2" -q:a 0 -q:v 0 transpose_2q.mp4 # Ruota di 90 gradi in senso antiorario l'intero video mantenendone inalterata la qualità
ffmpeg -i videoin.mp4 -vf "transpose=3" -q:a 0 -q:v 0 transpose_3q.mp4 # Ruota di 90 gradi in senso antiorario e specchia l'intero video mantenendone inalterata la qualità
ffmpeg -i videoin.mp4 -vf "rotate=45*PI/180" -q:a 0 -q:v 0 rotate_45q.mp4 # Ruota di 45 gradi in senso orario la sola immagine mantenendone inalterata la qualità
ffmpeg -i videoin.mp4 -vf "rotate=90*PI/180" -q:a 0 -q:v 0 rotate_90q.mp4 # Ruota di 90 gradi in senso orario la sola immagine mantenendone inalterata la qualità
|