Nie widziałem tego Mogę usunąć to pytanie i opublikować tam swoją odpowiedź. Czy to w porządku?
Frederico Schardong,
Nie jestem nawet pewien, czy jest to najlepsza witryna wymiany stosów do tego celu. Chcę tylko podzielić się tym, co zrobiłem.
Frederico Schardong
Podobne pytanie znajduje się na askubuntu.com . Odpowiedzi są tu najczęściej omawiane w momencie pisania, ale to oczywiście może się zmienić w przyszłości.
anarcat
Odpowiedzi:
11
Ffmpeg to zrobi. Jeśli masz obrazy, img001.jpg, img002.jpg, img003.jpg, ...w wierszu poleceń wykonaj:
ffmpeg -i img*.jpg output.mpeg
Istnieje więcej opcji podanych na ffmpeg --helpstronach podręcznika lub w Internecie. Pozwalają one kontrolować szybkość klatek i format wyjściowy.
Użycie tego powoduje błąd, ponieważ traktuje on ostatnie .jpgpliki jak plik wyjściowy. Rozumiem File 'DSCF6134.JPG' already exists. Overwrite ? [y/N]- nie tak świetnie. Moim rozwiązaniem było wygenerowanie listy plików \ls *.JPG | sed "s/^/file '/;s/$/'/" > files.txti załadowanie jej ffmpeg -f concat -i files.txt output.mpeg.
anarcat
W przypadku innych wersji ffmpeg następująca wersja działa bez próby przesłonięcia obrazów:ffmpeg -pattern_type glob -i "picture*.jpg" output.mpeg
Patrick R.
9
Najpierw zmieniamy nazwy wszystkich plików * .JPG na podstawie daty ich utworzenia. Czasami aparaty zmieniają nazwę pliku lub po prostu ich zamawianie nie jest tym, czego chcemy. Jednak zmiana nazwy przed datą utworzenia zawsze działa:
jhead -n%Y%m%d-%H%M%S *.JPG
Następnie umieszczamy tę listę w pliku:
ls -1tr | grep -v files.txt > files.txt
A następnie użyj, mencoderaby utworzyć AVIwideo przy użyciu 20 klatek na sekundę. Pamiętaj, że wygeneruje to ogromny plik wideo, zwykle mniej więcej tego samego rozmiaru wszystkich zsumowanych zdjęć.
Zwykle robię zdjęcia w trybie poklatkowym z najniższą rozdzielczością mojego aparatu (5 MP), który ma współczynnik proporcji 4: 3. Aby wygenerować prawidłowe wideo 1080p, obraz jest najpierw ponownie skalowany do 1920 pikseli szerokości, a następnie przycinam go do 1080 wysokości. W ten sposób nie zmieniam zawartości zdjęć, po prostu kadruję:
W przypadku segfault przydałaby się znajomość twojej wersji ffmpeg.
Unapiedra
Jeśli tak jak ja, nagrałeś w formacie 3: 2 (moje zdjęcia D750 to 6016x4016) i potrzebujesz go w formacie 16: 9 (dla filmów 4k) 3840x2160, możesz użyć FFMPEG do Pillerboksa do wideo i podkładania czarnych linii tramwajowych po bokach za pomocą tego polecenia - ffmpeg -i output.avi -qscale 0 -vf "scale = 3840: 2160: force_original_aspect_ratio = spadek, pad = 3840: 2160: (ow-iw) / 2: (oh-ih) / 2" output-final.avi - Wideo będzie większy, ale bez utraty jakości, ponieważ jest to zmniejszanie skali
Rob
w twoim ffmpegpoleceniu -sameqopcja jest teraz zastąpiona przez-qscale 0
transang
3
Blender to dobre rozwiązanie, jeśli masz do czynienia z timelapseem ruchu (hyperlapse) lub niestabilnym materiałem filmowym. Ma możliwości śledzenia ruchu, dzięki czemu możesz wybrać stały punkt do śledzenia przez cały czas. Możesz także rozwiązać problemy z rotacją.
Kdenlive może również generować timelapsy za pomocą Add Slideshow Clipmenu, jak wyjaśniono w tym samouczku .
Zgodnie z tym samym miejscu , OpenShot posiada podobną funkcjonalność, ale nie polecam, bo to jest „zbyt buggy”. Mimo to, jeśli jest to preferowany edytor wideo, z przyjemnością dowiesz się, że możesz po prostu przeciągnąć i upuścić sekwencję poprawnie nazwanych plików (001.jpg do NNN.jpg) w oknie openshot, aby zaimportować je również jako timelapse.
Odpowiedzi:
Ffmpeg to zrobi. Jeśli masz obrazy,
img001.jpg, img002.jpg, img003.jpg, ...
w wierszu poleceń wykonaj:ffmpeg -i img*.jpg output.mpeg
Istnieje więcej opcji podanych na
ffmpeg --help
stronach podręcznika lub w Internecie. Pozwalają one kontrolować szybkość klatek i format wyjściowy.źródło
.jpg
pliki jak plik wyjściowy. RozumiemFile 'DSCF6134.JPG' already exists. Overwrite ? [y/N]
- nie tak świetnie. Moim rozwiązaniem było wygenerowanie listy plików\ls *.JPG | sed "s/^/file '/;s/$/'/" > files.txt
i załadowanie jejffmpeg -f concat -i files.txt output.mpeg
.ffmpeg -pattern_type glob -i "picture*.jpg" output.mpeg
Najpierw zmieniamy nazwy wszystkich plików * .JPG na podstawie daty ich utworzenia. Czasami aparaty zmieniają nazwę pliku lub po prostu ich zamawianie nie jest tym, czego chcemy. Jednak zmiana nazwy przed datą utworzenia zawsze działa:
Następnie umieszczamy tę listę w pliku:
A następnie użyj,
mencoder
aby utworzyćAVI
wideo przy użyciu 20 klatek na sekundę. Pamiętaj, że wygeneruje to ogromny plik wideo, zwykle mniej więcej tego samego rozmiaru wszystkich zsumowanych zdjęć.Zwykle robię zdjęcia w trybie poklatkowym z najniższą rozdzielczością mojego aparatu (5 MP), który ma współczynnik proporcji 4: 3. Aby wygenerować prawidłowe wideo 1080p, obraz jest najpierw ponownie skalowany do 1920 pikseli szerokości, a następnie przycinam go do 1080 wysokości. W ten sposób nie zmieniam zawartości zdjęć, po prostu kadruję:
Powodem, dla którego używam mencodera do łączenia zdjęć jest to, że dostałem
segmentation fault
ffmpeg.źródło
ffmpeg
poleceniu-sameq
opcja jest teraz zastąpiona przez-qscale 0
Blender to dobre rozwiązanie, jeśli masz do czynienia z timelapseem ruchu (hyperlapse) lub niestabilnym materiałem filmowym. Ma możliwości śledzenia ruchu, dzięki czemu możesz wybrać stały punkt do śledzenia przez cały czas. Możesz także rozwiązać problemy z rotacją.
źródło
Możesz być także zainteresowany projektem timelapse-darktable . Ułatwia to post-processing obrazów za pomocą Darktable i tworzenie timelapse serii. Instrukcje korzystania z niego można znaleźć tutaj: https://code.google.com/p/timelapse-darktable/wiki/generateTimelapse
źródło
Możesz użyć mencodera. Opcje są dość oczywiste:
Jeśli wszystkie znajdują się w katalogu bieżącym z uporządkowanymi nazwami, a chcesz mieć listę w pliku /tmp/files.txt:
ls -1 *jpg > /tmp/files.txt
Jeśli chcesz, aby plik wyjściowy miał postać /tmp/test.avi z prędkością 30 klatek na sekundę:
mencoder -nosound -ovc lavc -lavcopts vcodec=mpeg4 -o /tmp/test.avi -mf type=jpeg:fps=30 mf://@/tmp/files.txt
źródło
Kdenlive może również generować timelapsy za pomocą
Add Slideshow Clip
menu, jak wyjaśniono w tym samouczku .Zgodnie z tym samym miejscu , OpenShot posiada podobną funkcjonalność, ale nie polecam, bo to jest „zbyt buggy”. Mimo to, jeśli jest to preferowany edytor wideo, z przyjemnością dowiesz się, że możesz po prostu przeciągnąć i upuścić sekwencję poprawnie nazwanych plików (001.jpg do NNN.jpg) w oknie openshot, aby zaimportować je również jako timelapse.
źródło