Opened 13 years ago
Closed 13 years ago
#388 closed defect (worksforme)
Bug with deinterlacing!
Reported by: | Silent Rain | Owned by: | Michael Niedermayer |
---|---|---|---|
Priority: | normal | Component: | undetermined |
Version: | unspecified | Keywords: | |
Cc: | Blocked By: | ||
Blocking: | Reproduced by developer: | no | |
Analyzed by developer: | no |
Description
This is a very old bug :( Please fix it.
Bug: http://jpegshare.net/b7/38/b73888ca1b37692bd722e5d559ffdf6c.jpg.html
Should be as follows: http://jpegshare.net/05/7a/057a530eb58aca6a117c165e3583ac3a.jpg.html
Bug: http://jpegshare.net/f2/cc/f2ccc3092373d45cf9b8c39154d71dfb.jpg.html
Should be as follows: http://jpegshare.net/48/91/4891e0393a06446937f9e82465b83712.jpg.html
Here is the file for the test:
Part 1: http://www.mediafire.com/?hka7b7g815938fk
Part 2: http://www.mediafire.com/?777535vz1j79w7o
Change History (3)
comment:1 by , 13 years ago
Component: | FFmpeg → undetermined |
---|---|
Priority: | important → normal |
Status: | new → open |
comment:2 by , 13 years ago
That file is interlaced video but FFmpeg is cannot detect interlace(AVFrame.interlaced_frame is 0).
comment:3 by , 13 years ago
Resolution: | → worksforme |
---|---|
Status: | open → closed |
(ffmpeg command line and console output is still missing making this an invalid ticket.)
While the content of your sample may be interlaced (I agree it is), the stream is encoded as progressive frames, afaict, so how should FFmpeg be able to know the stream is interlaced?
Note that the 25fps progressive material that TV stations broadcast here via DVB is encoded as interlaced frames "50i" (50 fields per second, so every sane decoder delivers 25 progressive frames per second), so FFmpeg - semantically incorrectly - sets interlaced_frame. Generally, afaict, you have to visually inspect the material to decide if it is interlaced or not.
Or in other words: You can take interlaced source material and encode it as progressive frames (try ffmpeg -i interlaced_file -qscale 2 to get a sample with maximum quality and still interlaced frames that yadif and vdpau deinterlace fine), so all flags in the stream show "progressive" as in your sample, or you can take progressive, 25fps material (or claim that 24fps material is actually 25fps) and "pull it up" to 50 fields per seconds, then encode it interlaced (with the respective fields set) as it is done in case of DVB broadcast of films here, but if you use a de-interlacer after decoding, you (may) worsen the picture quality; without a de-interlacer, you get exactly the original 25 fps progressive material (wrongly assuming a lossless encoder).
If you wanted to open a feature request for a video filter that reports if material is interlaced or not, please reword the ticket.
All necessary information missing;-(
Please add: What you want to do, which ffmpeg command line you are using (as short as possible), and how the output of this (failing) command looks like.