Wpis z mikrobloga

via Wykop Mobilny (Android)
  • 0
Hej mirki, w sumie mam problem związany z Firefoxem i ffmpeg, dokładniej z wyświetlaniem filmów które ffmpeg przechwyci. Na wszelkich przeglądarkach bazujących na chromium działa od strzała, na każdym kodeku, jaki próbowałem ale Firefox wywala błąd video jakby plik był uszkodzony. Czy ktoś ma działająca komendę do ffmpeg aby Firefox akceptował kodek video? #ffmpeg #firefox #linux
  • 23
ffmpeg -i plik.avi -c:v libx264 -crf jaki_crf_wariacie -movflags +faststart -preset slow out.mp4
Ogólnie to mp4 powinno brać, albo webm (i kodeków nie dawaj swoich to ffmpeg domyślnie wybierze)

Preset slow możesz olać
#!/bin/bash
filename=$1
[ -z "$1" ] && filename="$(date +"%Y-%m-%dT%H-%M-%S").mp4"
geometry=$(slop -f "-video_size %wx%h -i :0.0+%x,%y")
ffmpeg \
-framerate 30\
-f x11grab $geometry "$filename"\
-pix_fmt yuv4\
-c:v libx264\
-preset slow\
-crf 22\
-pix_fmt yuv420p\
-c:a libvo_aacenc
@Utylizacja: ha, nie pomyślałem o tym

Media resource file:///home/***/2021-09-26T18-56-02.mp4 could not be decoded, error: Error Code: NS_ERROR_DOM_MEDIA_FATAL_ERR (0x806e0005)
Details: auto mozilla::SupportChecker::AddMediaFormatChecker(const mozilla::TrackInfo &)::(anonymous class)::operator()() const: Decoder may not have the capability to handle the requested video format with YUV444 chroma subsampling.
@PortowySzczur: Tam masz jeszcze coś pokopane w tym skrypcie, kolejność argumentów musi się zgadzać.
Spróbuj tego:

#!/bin/bash
filename=$1
[ -z "$1" ] && filename="$(date +"%Y-%m-%dT%H-%M-%S").mp4"
geometry=$(slop -f "-video_size %wx%h -i :0.0+%x,%y")
ffmpeg \
-framerate 30 \
-f x11grab $geometry \
-pix_fmt yuv420p \
-preset slow \
-crf 22 \
-c:a aac \
"$filename"
@Utylizacja: hmm, testowałeś to? teraz to nic nie działa ;d pewnie losowe rozdzielczości są średnio wspierane a tylko takie da mi zaznaczanie ekranu ;d

[libx264 @ 0x5635cf503d80] height not divisible by 2 (948x517)
Error initializing output stream 0:0 -- Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height
@PortowySzczur: No wiem, ale na początku to w ogóle nie mogłem tego odpalić XD Jak wycelujesz dobrze z rozmiarem okna to działa. Na pewno na początku dobre to wkleiłeś?
Wtedy wyskakiwało mi:

:0.0+62,92: Protocol not found
Did you mean file::0.0+62,92?
@Utylizacja: brzmi jakbyś nie miał x11grab zainstalowanego ;d

Input #0, x11grab, from ':0.0+1130,665':
Duration: N/A, start: 1632677601.627139, bitrate: 470041 kb/s
Stream #0:0: Video: rawvideo (BGR[0] / 0x524742), bgr0, 948x517, 470041 kb/s, 29.97 fps, 29.97 tbr, 1000k tbn, 1000k tbc

no dobra, musiałbym znaleźć jakiś tool który wyświetla okno lub trzyma stałe ratio. Dzięki za analizę skryptu bo faktycznie nie wskakiwało w dodatkowe parametry po pliku najwyraźniej