Opened 8 years ago

Closed 8 months ago

#5818 closed enhancement (invalid)

encoing to interlaced with nvenc

Reported by: Milan Cizek Owned by:
Priority: wish Component: avcodec
Version: git-master Keywords: nvenc, bounty
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

I have question or future request.
I need convert input stream in 50i to H264 or HEVC to 50i output.
I read, NVENC compiled in FFmpeg does not support interlaced encoding.
Only chance how do it is via standalone encoders available here do.

Is a chance to incorporate interlaced output via nvenc_hevc / nvenc_264 encorers?

N-81449-g0edfd8e
built on Linux stream.local 3.19.0-28-generic #30~14.04.1-Ubuntu SMP

Change History (11)

comment:1 by Carl Eugen Hoyos, 8 years ago

Component: ffmpegavcodec
Keywords: iterlaced removed
Priority: normalwish

comment:2 by Milan Cizek, 8 years ago

We provide $150 reward for this. :-)

comment:3 by Milan Cizek, 8 years ago

We provide $150 reward for this. :-)

comment:4 by Milan Cizek, 8 years ago

We provide $150 reward for this. :-)

comment:5 by Milan Cizek, 8 years ago

Keywords: bounty added

$200 reward.

comment:6 by Timo R., 8 years ago

Does interlaced encoding with NVENC work with any other tool?
To my knowledge, it is properly implemented in ffmpeg, but just doesn't work for unknown reasons.

comment:7 by alexpigment, 7 years ago

oromit: Not to hijack this bug, but it works with Staxrip. As you said, it "seems to be implemented" in FFMPEG from what I can tell, but the resultant video seems as if half of the fields are being thrown away. In other words, it's got the temporal resolution of 30p but with combing artifacts.

For what it's worth, MediaInfo shows a field that says "Original Frame Rate: 59.940 (60000/1001)FPS" - which seems a bit odd considering the source video in my test is 29.97 interlaced. The working video from Staxrip doesn't have that same field at all.

comment:8 by Dennis E. Mungai, 5 years ago

You can attempt interlaced encoding on NVENC provided that:

(a). You're using an NVENC-capable GPU older than Turing. Turing GPUs inexplicably disabled interlaced encoding.

(b). The following flags are set before input:
-flags +ildct+ilme.

Alternatively (or in combination with the above), insert the filter
-vf tinterlace=interleave_top,fieldorder=tff and retest.

An older thread courtesy of Google which may still be relevant: https://devtalk.nvidia.com/default/topic/1043798/video-codec-and-optical-flow-sdk/possible-driver-bug-or-sdk-bug-related-to-encoding-interlaced-video-with-nvenc/

comment:9 by hydra3333, 5 years ago

Please see these
https://devtalk.nvidia.com/default/topic/1038493/video-codec-and-optical-flow-sdk/details-about-nvenc-in-turing-/post/5294637/#5294637
https://devtalk.nvidia.com/default/topic/1038493/video-codec-and-optical-flow-sdk/details-about-nvenc-in-turing-/post/5294809/#5294809

and
"The Turing core generation (GeForce RX20 series) does not support the interlaced output function."

it's the newer nvidia video cards which do not support hardware encoding of interlaced material via their nvenc technology, not "NVENC compiled in FFmpeg".

Last edited 5 years ago by hydra3333 (previous) (diff)

comment:10 by Marth64, 8 months ago

Closed due to >4 years inactivity, also root issue is a hardware limitation. Thank you.

comment:11 by Marth64, 8 months ago

Resolution: invalid
Status: newclosed
Note: See TracTickets for help on using tickets.