WIP: ancillary: pass through decoders and packetizers
2 unresolved threads
2 unresolved threads
On top of !7072
- Added ancillary passthrough for all packetizers
- Added vlc_ancillary_queue: a helper for asynchronous decoders that can't have a context (like MediaCodec)
- Implemented ancillary passthrough in avcodec via frame_info
- Implemented simple ancillary passthrough in faad.c (lot of decoders modules will be alike)
- Implemented ancillary passthrough in mediacodec via vlc_ancillary_queue
- Implemented ancillary passthrough in videotoolbox via frame_info
WIP:
- Need to find a proper way to get rid of the timestamp_Fifo helper in MediaCodec, any idea @fcartegnie ?
- If you agree, I will forward ancillaries in all other decoders modules
Edited by Thomas Guillem
Merge request reports
Activity
Filter activity
changed milestone to %4.0
added Component::Core: Input label
Depends on !7072
- Resolved by Thomas Guillem
timestamp_Fifo is used to work around the lack of PTS on our side. MediaCodec documentation says that it need PTS and no PTS.
no DTS?
- Resolved by Thomas Guillem
- Resolved by Thomas Guillem
added 9 commits
- 54b1653d - frame: add vlc_frame_ChainGatherAncillaries()
- eff4a4f3 - frame: gather ancillaries from vlc_frame_ChainGather()
- 045101e0 - ancillary: add vlc_ancillary_queue
- c09e4c20 - packetizer: forward ancillaries
- 8fcb00d1 - avcodec: forward all input ancillaries to the output
- 758c2d3e - WIP: mediacodec: remove timestamp_Fifo
- b258ea90 - mediacodec: forward ancillaries
- 204a394e - faad: forward ancillaries
- d2a7b934 - videotoolbox: forward ancillaries
Toggle commit list- Resolved by Denis Charmet
Maybe found a proper workaround for MediaCodec timestamp_Fifo. I guess MediaCodec doesn't care about PTS vs DTS, but he cares about TS always incrementing (the DTS can increase and decrease). So if there is no PTS, I could start from the first DTS and use the date_t API to increase the PTS.
cf. !7088
added MRStatus::NotCompliant label
mentioned in merge request !7088