[Cin] Fwd: [FFmpeg-devel] qsvenc.c & AV_CODEC_FLAG_INTERLACED_DCT

Andrew Randrianasulu randrianasulu at gmail.com
Fri Nov 22 18:54:18 CET 2024


пт, 22 нояб. 2024 г., 20:37 Terje Hanssen <terjejhanssen at gmail.com>:

>
>
>
> On 11/22/24 18:12, Andrew Randrianasulu wrote:
>
>
>
> пт, 22 нояб. 2024 г., 20:07 Terje Hanssen <terjejhanssen at gmail.com>:
>
>>
>>
>>
>> On 11/22/24 17:58, Andrew Randrianasulu wrote:
>>
>>
>>
>> пт, 22 нояб. 2024 г., 19:55 Terje Hanssen <terjejhanssen at gmail.com>:
>>
>>>
>>>
>>>
>>> On 11/22/24 18:41, Andrew Randrianasulu wrote:
>>>
>>> On Fri, Nov 22, 2024 at 2:52 PM Terje Hanssen <terjejhanssen at gmail.com> <terjejhanssen at gmail.com> wrote:
>>>
>>> On 11/22/24 08:45, Andrew Randrianasulu wrote:
>>>
>>>
>>>
>>> ---------- Forwarded message ---------
>>> От: Wang, Fei W <fei.w.wang-at-intel.com at ffmpeg.org> <fei.w.wang-at-intel.com at ffmpeg.org>
>>> Date: пт, 22 нояб. 2024 г., 09:10
>>> Subject: Re: [FFmpeg-devel] qsvenc.c & AV_CODEC_FLAG_INTERLACED_DCT
>>> To: ffmpeg-devel at ffmpeg.org <ffmpeg-devel at ffmpeg.org> <ffmpeg-devel at ffmpeg.org>
>>>
>>>
>>> On Thu, 2024-11-21 at 11:50 +0300, Andrew Randrianasulu wrote:
>>>
>>> Hello.
>>>
>>>
>>> Recently I teached cinelerra-gg to use qsv encoders in ffmpeg
>>> (libavcodec)
>>> and some test were working but some not.
>>>
>>> We nailed it down to top-field first  material, like HDV files. bff
>>> files
>>> like consumer version of DV and progressive worked fine.
>>>
>>> I looked at source and ... I thought condition at
>>> http://git.ffmpeg.org/gitweb/ffmpeg.git/blob/HEAD:/libavcodec/qsvenc.c#l852
>>>
>>>
>>> must contain case for bff, but I tried this and it was reportedly not
>>> helping?
>>>
>>>
>>> We currently set flags = ildct+ilme on interlaced streams, I hope to
>>> avoid
>>> special-casing qsv encoders, but may be we have no other choice?
>>>
>>> I asked user (Terje) to add +ildct flag to his normal system ffmpeg
>>> line
>>> and it started to fail too:
>>> https://lists.cinelerra-gg.org/pipermail/cin/2024-November/009123.html
>>>
>>> AV1 doesn't support interlaced frame.
>>>
>>>
>>> We can dual check to transcode hdv to av1_qsv again, as I did with ffmpeg in this posthttps://www.mail-archive.com/cin@lists.cinelerra-gg.org/msg08314.html
>>>
>>> My issue now currently on Kaby Lake is that I have no hdv.m2t file stored and could not find a download link with example hdv. Suggestion?
>>>
>>>
>>> https://archive.org/download/hdv01
>>>
>>>
>>> Thanks, I downloaded FX1_01.mpg, which even its wrong file extension is
>>> a 1080i50 HDV  recorded on a predecessor of my own Sony FX7-E camcorder.)
>>>
>>> mediainfo FX1_01.mpg | egrep -i "scan|bit|format|FileExtension"
>>> Format                                   : MPEG-TS
>>> Overall bit rate mode                    : Variable
>>> Overall bit rate                         : 26.1 Mb/s
>>> Maximum Overall bit rate                 : 33.0 Mb/s
>>> FileExtension_Invalid                    : ts m2t m2s m4t m4s tmf ts tp
>>> trp ty
>>> Format                                   : MPEG Video
>>> Format version                           : Version 2
>>> Format profile                           : Main at High 1440
>>> Format settings                          : CustomMatrix / BVOP
>>> Format settings, BVOP                    : Yes
>>> Format settings, Matrix                  : Custom
>>> Format settings, GOP                     : M=3, N=12
>>> Format settings, picture structure       : Frame
>>> Bit rate mode                            : Constant
>>> Bit rate                                 : 24.5 Mb/s
>>> Maximum bit rate                         : 25.0 Mb/s
>>> Bit depth                                : 8 bits
>>> Scan type                                : Interlaced
>>> Scan order                               : Top Field First
>>> Bits/(Pixel*Frame)                       : 0.629
>>> Format                                   : MPEG Audio
>>> Format version                           : Version 1
>>> Format profile                           : Layer 2
>>> Bit rate mode                            : Constant
>>> Bit rate                                 : 384 kb/s
>>> Format                                   : MPEG Video / MPEG Audio /  /
>>>
>>>
>>> But unhappily, the HDV --> av1_qsv transcoding I previous did on
>>> i17-12700/DG2 WS
>>> https://www.mail-archive.com/cin@lists.cinelerra-gg.org/msg08314.html
>>>
>>> HDV --> av1_qsv -global_quality 25
>>> -----------------------------------
>>> ffmpeg -hide_banner -qsv_device /dev/dri/renderD128 -i hdv09_04.m2t
>>> -pix_fmt nv12 -c:v av1_qsv -global_quality 25
>>> hdv09_04_av1_qsv_format_nv12_gq25.mp4
>>>
>>> ffprobe -hide_banner hdv09_04_av1_qsv_format_nv12_gq25.mp4
>>>   Stream #0:0[0x1](und): Video: av1 (libdav1d) (Main) (av01 /
>>> 0x31307661), yuv420p(tv, bt709, top coded first (swapped)), 1440x1080, 7902
>>> kb/s, SAR 4:3 DAR 16:9, 24.99 fps, 25 tbr, 12800 tbn (default)
>>>
>>> is not possible on my legacy KBL i7-8550U Intel UHD Graphics 620
>>>
>>> [av1_qsv @ 0x5641dd0f5440] This version of runtime doesn't support AV1
>>> encoding
>>>
>>> as confirmed by these limited capabilites
>>>
>>> vainfo | grep -i enc
>>> libva info: VA-API version 1.22.0
>>> libva info: Trying to open /usr/lib64/dri/iHD_drv_video.so
>>> libva info: Found init function __vaDriverInit_1_22
>>> libva info: va_openDriver() returns 0
>>>       VAProfileMPEG2Simple            :    VAEntrypointEncSlice
>>>       VAProfileMPEG2Main              :    VAEntrypointEncSlice
>>>       VAProfileH264Main               :    VAEntrypointEncSlice
>>>       VAProfileH264Main               :    VAEntrypointEncSliceLP
>>>       VAProfileH264High               :    VAEntrypointEncSlice
>>>       VAProfileH264High               :    VAEntrypointEncSliceLP
>>>       VAProfileJPEGBaseline           :    VAEntrypointEncPicture
>>>       VAProfileH264ConstrainedBaseline:    VAEntrypointEncSlice
>>>       VAProfileH264ConstrainedBaseline:    VAEntrypointEncSliceLP
>>>       VAProfileVP8Version0_3          :    VAEntrypointEncSlice
>>>       VAProfileHEVCMain               :    VAEntrypointEncSlice
>>>       VAProfileHEVCMain10             :    VAEntrypointEncSlice
>>>
>>> By the way, neither this attempt claims about unsupported or wrong image
>>> structure format !?
>>>
>>
>>
>> may be it not even come to this line and abort earlier? (in compiled
>> languages functions can be executed out of order they appear in file)
>>
>>
>> HDV --> av1_qsv transcoded as referenced above on the newer i17-12700/DG2
>>
>
> ??
>
> you mean why default ffmpeg does not trip over this line?
>
> it silently ignores interlace and makes something flagged as interlaced
> but actually not?
>
>
> We can have a closer look at the av1_qsv output, possibly with loglevel
> verbose or debug on that WS, when I'm back again. I don't know what ffmpeg
> really does here, but as far it is accelerated (fps=561 for cfhd.mkv),
> viewable and playable, it will be good?
>


welll ..may be?

If it works good enough for  those goals may be you can just set cingg's
format to progressive even if autodetect says interlaced, and try to render.




>
>
>
>
>
>
>
>>
>>
>>
>>
>>>
>>> You may add deinterlace filter
>>> before encoder after apply this patch:https://patchwork.ffmpeg.org/project/ffmpeg/list/?series=13372
>>>
>>> cmd:
>>> ffmpeg -hide_banner -qsv_device /dev/dri/renderD128 -
>>> hwaccel_output_format qsv -i input.mp4 -pix_fmt nv12 -vf
>>> vpp_qsv=deinterlace=advanced -c:v av1_qsv -f null -
>>>
>>> Thanks
>>> Fei
>>>
>>>
>>> _______________________________________________
>>> ffmpeg-devel mailing listffmpeg-devel at ffmpeg.orghttps://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>>>
>>> To unsubscribe, visit link above, or emailffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".
>>>
>>> _______________________________________________
>>> ffmpeg-devel mailing listffmpeg-devel at ffmpeg.orghttps://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>>>
>>> To unsubscribe, visit link above, or emailffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".
>>>
>>>
>>>
>>>
>>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.cinelerra-gg.org/pipermail/cin/attachments/20241122/b27ea8f0/attachment-0001.htm>


More information about the Cin mailing list