Re: [FFmpeg-devel] Does FFplay support HEVC interlaced bitstream display?

2015-12-01 Thread Andy Furniss

Fan Yingming wrote:

Hi, everyone.

I noticed that HEVC support interlaced field encoding, but FFplay
didn't support HEVC interlaced bitstream display.

We know FFplay play h264 interlaced bitstream perfectly.

I'd like to know if FFplay support HEVC interlaced bitstream
display. And will FFmpeg support that?


I don't think so.

It is possible to play hevc interlaced with ffmpeg via mpv but you'll
have to set up your own filter chain and possibly adjust for field order.

I've done it on a homemade (libx265) test. libx265 only takes a certain
field order and expects fields, plus interlaced support is (was) flagged
as experimental. It did seem to work though, it was a while ago so this
is just a paste from notes on the playback side - basically you need to
weave the fields that the decoder outputs as weaved frames is what other
decoders output.

mpv -fs --vf=lavfi=[tinterlace=merge,setsar=1/1,yadif=1] hevc-interl-5M.mkv

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] Does FFplay support HEVC interlaced bitstream display?

2015-12-01 Thread wm4
On Tue, 1 Dec 2015 12:12:13 +
Andy Furniss  wrote:

> Fan Yingming wrote:
> > Hi, everyone.
> >
> > I noticed that HEVC support interlaced field encoding, but FFplay
> > didn't support HEVC interlaced bitstream display.
> >
> > We know FFplay play h264 interlaced bitstream perfectly.
> >
> > I'd like to know if FFplay support HEVC interlaced bitstream
> > display. And will FFmpeg support that?  
> 
> I don't think so.
> 
> It is possible to play hevc interlaced with ffmpeg via mpv but you'll
> have to set up your own filter chain and possibly adjust for field order.
> 
> I've done it on a homemade (libx265) test. libx265 only takes a certain
> field order and expects fields, plus interlaced support is (was) flagged
> as experimental. It did seem to work though, it was a while ago so this
> is just a paste from notes on the playback side - basically you need to
> weave the fields that the decoder outputs as weaved frames is what other
> decoders output.
> 
> mpv -fs --vf=lavfi=[tinterlace=merge,setsar=1/1,yadif=1] hevc-interl-5M.mkv

Exactly the same (without the lavfi wrapper of course) should work on
ffplay.

So does this mean the HEVC decoder outputs separate fields only? This
is really odd, although I can understand why.
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] Does FFplay support HEVC interlaced bitstream display?

2015-12-01 Thread Hendrik Leppkes
On Tue, Dec 1, 2015 at 1:36 PM, wm4  wrote:
> On Tue, 1 Dec 2015 12:12:13 +
> Andy Furniss  wrote:
>
>> Fan Yingming wrote:
>> > Hi, everyone.
>> >
>> > I noticed that HEVC support interlaced field encoding, but FFplay
>> > didn't support HEVC interlaced bitstream display.
>> >
>> > We know FFplay play h264 interlaced bitstream perfectly.
>> >
>> > I'd like to know if FFplay support HEVC interlaced bitstream
>> > display. And will FFmpeg support that?
>>
>> I don't think so.
>>
>> It is possible to play hevc interlaced with ffmpeg via mpv but you'll
>> have to set up your own filter chain and possibly adjust for field order.
>>
>> I've done it on a homemade (libx265) test. libx265 only takes a certain
>> field order and expects fields, plus interlaced support is (was) flagged
>> as experimental. It did seem to work though, it was a while ago so this
>> is just a paste from notes on the playback side - basically you need to
>> weave the fields that the decoder outputs as weaved frames is what other
>> decoders output.
>>
>> mpv -fs --vf=lavfi=[tinterlace=merge,setsar=1/1,yadif=1] hevc-interl-5M.mkv
>
> Exactly the same (without the lavfi wrapper of course) should work on
> ffplay.
>
> So does this mean the HEVC decoder outputs separate fields only? This
> is really odd, although I can understand why.

The reason for that is that HEVC doesn't actually have any interlaced
coding tools, just some metadata to flag a stream as interlaced.
So an interlaced stream is just a stream of half-height frames at twice the fps.

I thought there was a patch to assemble them back into frames, though.
Maybe it was never applied.

- Hendrik
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] Does FFplay support HEVC interlaced bitstream display?

2015-12-01 Thread Andy Furniss

Hendrik Leppkes wrote:

On Tue, Dec 1, 2015 at 1:36 PM, wm4  wrote:

On Tue, 1 Dec 2015 12:12:13 + Andy Furniss
 wrote:


Fan Yingming wrote:

Hi, everyone.

I noticed that HEVC support interlaced field encoding, but
FFplay didn't support HEVC interlaced bitstream display.

We know FFplay play h264 interlaced bitstream perfectly.

I'd like to know if FFplay support HEVC interlaced bitstream
display. And will FFmpeg support that?


I don't think so.

It is possible to play hevc interlaced with ffmpeg via mpv but
you'll have to set up your own filter chain and possibly adjust
for field order.

I've done it on a homemade (libx265) test. libx265 only takes a
certain field order and expects fields, plus interlaced support
is (was) flagged as experimental. It did seem to work though, it
was a while ago so this is just a paste from notes on the
playback side - basically you need to weave the fields that the
decoder outputs as weaved frames is what other decoders output.

mpv -fs --vf=lavfi=[tinterlace=merge,setsar=1/1,yadif=1]
hevc-interl-5M.mkv


Exactly the same (without the lavfi wrapper of course) should work
on ffplay.


Yea, I guess, just posting what I new worked for me.



So does this mean the HEVC decoder outputs separate fields only?
This is really odd, although I can understand why.


The reason for that is that HEVC doesn't actually have any
interlaced coding tools, just some metadata to flag a stream as
interlaced. So an interlaced stream is just a stream of half-height
frames at twice the fps.

I thought there was a patch to assemble them back into frames,
though. Maybe it was never applied.


With very recent mpv/ffmpeg my test still outputs fields.

On the "just metadata" comment - you do have to feed (IIRC) top field
first so I would hope there is some spatial handling of the bobbing in
there somewhere, but then "my hope" may not match with reality :-)

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] Does FFplay support HEVC interlaced bitstream display?

2015-12-01 Thread Andy Furniss

Andy Furniss wrote:


On the "just metadata" comment - you do have to feed (IIRC) top field
first so I would hope there is some spatial handling of the bobbing in
there somewhere, but then "my hope" may not match with reality :-)


Of course I am thinking of libx265 here - maybe the spec says nothing.


___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel