To reproduce
- Call
AMFComponent::Drain()
- Call
AMFComponent::QueryOutput() until AMF_EOF is returned.
- Call
AMFComponent::SubmitInput()
At this point the AMFComponent::SubmitInput() will keep returning AMF_EOF. This can be recovered by AMFComponent::ReInit(), but this is not what documentation says.
In AMFComponent::QueryOutput() we can read:
When draining has been initiated (see AMFComponent::Drain for more detail) and the last output sample has been retrieved, QueryOutput returns AMF_EOF. This indicates the end of the drain operation, after which input samples can continue to be submitted.
In AMFComponent::SubmitInput() we can read:
AMF_INPUT_FULL when the output is not properly drained
and we see that AMF_EOF is not documented to be valid return value from submit.
My understanding is that after draining completes, there shouldn't be a need to call reinit, and SubmitInput() shouldn't return AMF_EOF, as it makes little sense.
Thanks,
Kacper
To reproduce
AMFComponent::Drain()AMFComponent::QueryOutput()untilAMF_EOFis returned.AMFComponent::SubmitInput()At this point the
AMFComponent::SubmitInput()will keep returningAMF_EOF. This can be recovered byAMFComponent::ReInit(), but this is not what documentation says.In
AMFComponent::QueryOutput()we can read:In
AMFComponent::SubmitInput()we can read:and we see that
AMF_EOFis not documented to be valid return value from submit.My understanding is that after draining completes, there shouldn't be a need to call reinit, and
SubmitInput()shouldn't returnAMF_EOF, as it makes little sense.Thanks,
Kacper