Strona 1 z 1

ffmpeg i urywanie filmu przy kodowaniu

: 04 wrz 2023, 23:12
autor: prymula
Cześć
Tym razem jestem tu z małym problemem. Problemem dotyczącym tworzenia multimediów w Ubu. Napisałem prosty skrypt, do tworzenia prezentacji zdjęć (slide show). Moim domyślnym distrem jest Fedora. Gdy odpalam skrypt w Fedorze to nie ma problemu. Film jest tworzony, jest wszystko cacy. Schody pojawiły się gdy spróbowałem odpalić skrypt w Ubuntu. Skrypt wykorzystuje do kodowania ffmpeg. W Fedorze korzystam z wersji z Core czyli ffmpeg-free i argumentem odnoszącym się do wykorzystywanego kodeka jest w tym wypadku libopenh264. Doszedłem do tego że ffmpeg w Ubuntu jest inne, argumentem dla tego kodeka jest libx264. Tak, niby koduje, ale plik wyjściowy jest bardzo mały, dosłownie dwie klatki, dosłownie wyrwane z kontekstu. Napisze jeszcze że moja Fedora to 38, natomiast Lubuntu do testów to 22.04.
Dla zainteresowanych i dociekliwych zamieszczam link do kodu:
https://repo.ct8.pl/hg/pub/prymula/scri ... eslideshow

ps1. Napiszę jeszcze że w wersji dla Ubuntu musiałem zmienić parametry obrazu z 725 na 724. W Fedorze nie miało to znaczenia.
ps2. Wersja w repozytorium zawiera wersje z Fedory.

Re: ffmpeg i urywanie filmu przy kodowaniu

: 07 wrz 2023, 07:52
autor: prymula
Witam ponowne
Dostosowując skrypt dla Okienek, wpadłem na szatański sposób, z wykorzystaniem zewnętrznego pliku do wczytania potrzebnych fotografii. Z tego wniosek, że wersja ffmpeg z Ubuntu, kiepsko działa z parametrem '-pattern_type glob'. Jeśli to się to komuś przyda, oto proszę, prawidłowe wywołanie ffmpeg dla Ubu:

ffmpeg -f concat -r 1 -safe 0 -i list.txt -framerate 1 -c:v mpeg4 -crf 20 -pix_fmt yuv420p output.mp4

z tym że plik list.txt wygląda tak:

file IMG0001.jpg
file IMG0010.jpg
file IMG0023.jpg

Pozdrowionka !

ps. pakiet DEB w repozytorium już jest, walczę "tylko" z dowiązaniem symbolicznym. Więc póki co, uruchamia się pełną ścieżką. :!:
https://software.opensuse.org//download ... eslideshow

Do zrobienia w najbliższym czasie to wczytywanie zdjęć zarówno z rozszerzeniem 'jpg' jak i 'JPG' - póki co rozpoznaje jedynie rozszerzenie napisane z małej litery.
Jak by coś to można zastosować takie polecenie powłoki:

Kod: Zaznacz cały

rename JPG jpg *.JPG