-
Notifications
You must be signed in to change notification settings - Fork 153
Description
To reproduce
- Call
AMFComponent::Drain() - Call
AMFComponent::QueryOutput()untilAMF_EOFis 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::Drainfor more detail) and the last output sample has been retrieved,QueryOutputreturnsAMF_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_FULLwhen 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