GStreamer on TI DaVinci and OMAP
Details for commit #9093
Date: 2014-07-31 07:31:50
Fixed: the decoder sometimes generates a dummy buffer when receiving an EOS and pushes it downstream.
The dummy buffer has a generated timestamp based on the duration of a frame, e.g. 3333333.
Since the dummy buffer is pushed downstream, the sink element receives one last buffer which has no data.
If we call get_position(), and get the response from the basesink, the returned value will be based on the timestamp of the last buffer, therefore, we would get 33333333.
Solution: extend gstdmaitransport buffer to add a flag called isDummy to the buffer. By default set it to false and when we generate a dummy buffer we set it to true.
On the chain function of the decoder, we check for the codecIsFlushed flag and for the isDummy flag, if both are true, we do not push the buffer downstream.
|File||Previous version||New version||Diff|
|Item ID||Associated Item||Comment|
|No Associated Items Found|