yadif deinterlacing: i50 to p50

915 views
Skip to first unread message

djjd01

unread,
May 3, 2011, 11:05:20 AM5/3/11
to ffmbc-discuss
Hi again,
next problem i can't solve on my own. Was googleing for hours without
a success:
I'm trying to convert a DNxHD 1080i50 to MPG2 720p50, turing fields in
deinterlaced progressiv frames, so that movements stay smooth. That's
what my command line look like:

C:\FFmbc\bin>ffmbc -i d:\tests\Hofer_8bit.mov -vf
yadif=1:1,scale=1280:720 -r 50 -vcodec mpeg2video -pix_fmt bgr24 -b
18000k -minrate 18000k -maxrate 18000k -bufsize 36408333 -y
test720p50.mpg
FFmpeg version FFmbc-0.5, Copyright (c) 2000-2010 the FFmpeg
developers
built on Nov 22 2010 01:04:07 with gcc 4.4.2
configuration: --enable-gpl --enable-version3 --enable-libgsm --
enable-pthreads --enable-libvorbis --enable-libtheora --enable-
libspeex --enable-libmp3lame --enable-libopenjpeg --enable-
libschroedinger --enable-libopencore_amrwb --enable-libopencore_amrnb
--enable-libvpx --disable-decoder=libvpx --arch=x86 --enable-runtime-
cpudetect --enable-libxvid --enable-libx264 --extra-libs='-lx264 -
lpthread' --enable-librtmp --extra-libs='-lrtmp -lpolarssl -lws2_32 -
lwinmm' --target-os=mingw32 --enable-avisynth --cross-prefix=i686-
mingw32- --cc='ccache i686-mingw32-gcc' --enable-memalign-hack
libavutil 50.31. 0 / 50.31. 0
libavcore 0. 9. 0 / 0. 9. 0
libavcodec 52.91. 1 / 52.91. 1
libavformat 52.78. 5 / 52.78. 5
libavdevice 52. 2. 2 / 52. 2. 2
libavfilter 1.47. 1 / 1.47. 1
libswscale 0.12. 0 / 0.12. 0
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'd:\tests\Hofer_8bit.mov':
Metadata:
major_brand: qt
minor_version: 537199360
compatible_brands: qt
Duration: 00:00:15.04, start: 0.000000, bitrate: 183502 kb/s
Stream #0.0(eng): Video: dnxhd, yuv422p, 1920x1080i tff, tbc N/A,
183500 kb/s, fps 25.000
Stream #0.1(eng): Data: tmcd / 0x64636D74
[buffer @ 01a99200] w:1920 h:1080 pixfmt:yuv422p
[yadif @ 01a99590] mode:1 parity:1
[scale @ 01a99f50] w:1920 h:1080 fmt:yuv422p -> w:1280 h:720
fmt:yuv420p flags:0x4 interlaced:0
[mpeg2video @ 01a832a0] Warning vbv_delay will be set to 0xFFFF (=VBR)
as the specified vbv buffer is too large for the given bitrate!
Output #0, mpeg, to 'test720p50.mpg':
Metadata:
encoder: FFmbc 0.5
Stream #0.0(eng): Video: mpeg2video, yuv420p, 1280x720p, tbc 1/50,
q=2-31, 18000 kb/s
Stream mapping:
Stream #0.0 -> #0.0
Press [q] to stop encoding
*** drop!
*** 1 dup!

.... and i receive drops and dups!!

My goal is to convert every field to a deinterlaced frame. Conceringng
the documentation of yadif value 1 should do that (1 : double
framerate (bob), temporal and spatial interlacing check). I aslo tried
other values and combinations but i always get duplicated or dropped
fields. Has anybody got an idea?

Thanks in advance!

Bouke (VideoToolShed)

unread,
May 3, 2011, 12:37:32 PM5/3/11
to ffmbc-...@googlegroups.com

----- Original Message -----
From: "djjd01" <djj...@gmail.com>
To: "ffmbc-discuss" <ffmbc-...@googlegroups.com>
Sent: Tuesday, May 03, 2011 5:05 PM
Subject: [ffmbc-discuss] yadif deinterlacing: i50 to p50


> Hi again,
> next problem i can't solve on my own. Was googleing for hours without
> a success:
> I'm trying to convert a DNxHD 1080i50 to MPG2 720p50, turing fields in
> deinterlaced progressiv frames, so that movements stay smooth. That's
> what my command line look like:

Not sure, but should you not have quotes around your Yadif/scale stuff?
... -vf "yadif=1:1,scale=1280:720" -r etc...

Bouke

Baptiste Coudurier

unread,
May 3, 2011, 4:30:40 PM5/3/11
to ffmbc-...@googlegroups.com, djjd01
On 05/03/2011 08:05 AM, djjd01 wrote:
> Hi again,
> next problem i can't solve on my own. Was googleing for hours without
> a success:
> I'm trying to convert a DNxHD 1080i50 to MPG2 720p50, turing fields in
> deinterlaced progressiv frames, so that movements stay smooth. That's
> what my command line look like:
>
> C:\FFmbc\bin>ffmbc -i d:\tests\Hofer_8bit.mov -vf
> yadif=1:1,scale=1280:720 -r 50 -vcodec mpeg2video -pix_fmt bgr24 -b

Why do you use yadif=1:1 ? This is field output.
Did you try yadif=0:1 ?

--
Baptiste COUDURIER
Key fingerprint 8D77134D20CC9220201FC5DB0AC9325C5C1ABAAA
FFmpeg maintainer http://www.ffmpeg.org

Bouke (VideoToolShed)

unread,
May 3, 2011, 4:36:51 PM5/3/11
to ffmbc-...@googlegroups.com

----- Original Message -----
From: "Baptiste Coudurier" <baptiste....@gmail.com>
To: <ffmbc-...@googlegroups.com>
Cc: "djjd01" <djj...@gmail.com>
Sent: Tuesday, May 03, 2011 10:30 PM
Subject: Re: [ffmbc-discuss] yadif deinterlacing: i50 to p50


> On 05/03/2011 08:05 AM, djjd01 wrote:
>> Hi again,
>> next problem i can't solve on my own. Was googleing for hours without
>> a success:
>> I'm trying to convert a DNxHD 1080i50 to MPG2 720p50, turing fields in
>> deinterlaced progressiv frames, so that movements stay smooth. That's
>> what my command line look like:
>>
>> C:\FFmbc\bin>ffmbc -i d:\tests\Hofer_8bit.mov -vf
>> yadif=1:1,scale=1280:720 -r 50 -vcodec mpeg2video -pix_fmt bgr24 -b
>
> Why do you use yadif=1:1 ? This is field output.

That is what he wanted, one field original into one frame output.
Makes sense in my book...
(but i don't know about the syntax, never tried it, only used Avisynth to do
this magic (and AE of course...))

Bouke

djjd01

unread,
May 4, 2011, 6:29:14 AM5/4/11
to ffmbc-discuss
> > Why do you use yadif=1:1 ? This is field output.
>
> That is what he wanted, one field original into one frame output.
> Makes sense in my book...
> (but i don't know about the syntax, never tried it, only used Avisynth to do
> this magic (and AE of course...))

i'm trying this way:
i50-video: 1A,1B | 2A,2B | 3A,3B ... ==> new converted p50-video: 1A |
1B | 2A | 2B | 3A | 3B ...
To get a good looking frame of e.g. field 1A, the field should be
deinterlaced using for example line interpolation or just resized so
that the lines disappear.
As a result of this kind of encoding, the movements but mainly slow
panning and zoom should appear smoother.

Like Bouke suggested i used qoutes with the vf-command (-vf "...") but
unfortunately this doesn't help.
I also tried yadif=0:1 but then the deinterlaced fields are duplicated
(=> 1A+1B | 1A+1B | 2A+2B | 2A+2B | 3A+3B | 3A+3B ...)
If i use yadif=1:1 i get drops and dups (not sure but i think => 1A
interpol. | 1A interpol | 2A interpol. | 2A interpol. | 3A interpol. |
3A interpol ... but strange, the result using yadif=1:1 looks like
using yadif=0:1 !!!???).

Any ideas???

djjd01

unread,
Jun 8, 2011, 4:20:50 AM6/8/11
to ffmbc-discuss
I've found a comiled version of release 0.6-rc3.
Now i50 to p50 with yadif works perfect. Just have to type yadif=1
instead of yadif=1:1.

So sorry that i didn't read the release notes quite well enough.
ffmbc is really great work!!!
Reply all
Reply to author
Forward
0 new messages