Intel® Integrated Performance Primitives
Deliberate problems developing high-performance vision, signal, security, and storage applications.
6712 Discussions

DataReader::SetPosition/GetPosition required?

Intel_C_Intel
Employee
251 Views
Hi,

I'm porting a stream reading application to version 5.2 and it seems that there are some changes in the area of the DataReader requirements. Specifically, it looks like the MPEG2TSParser *requires* the DataReader to support the SetPosition/GetPosition interface and returning UMC_ERR_FAILED is not an option any more. Is that true and intentional?

What strategy should I employ to work with (live) streams that don't support the positioning interface?

Thank you very much for any help,
Tilman
0 Kudos
3 Replies
Vladimir_Dudnik
Employee
251 Views

Hello,

please take a look on comments provided by our experts:

There is implicit requirement for DataReader when it operates with live streams: GetSize() should return 0. This prevents MPEG2TSParser from calling SetPostion.

GetPosition doesnt return UMC::Status, it returns Ipp64u-value that is current position in the stream. Correctness of this value isnt required for live streaming.

Regards,
Vladimir

0 Kudos
Ali_Gökalp_P_
Beginner
251 Views
We've implemented DataReader to read from a stream source ,and of course it doesn't support to get absolute position or size.Problem is we demux transmitted MPEG2TS data that includes video and private stream and we can get video data but no private stream.

When we used FileReader(and passing transmitted data file as parameter) instead of "StreamReader" we implemented, we can succesfully capture video and private stream data.

Is this an error related with GetSize() returning 0 or anything else?
0 Kudos
Vladimir_Dudnik
Employee
251 Views

there is recomendation from our expert to check implementation of MovePosition(Ipp64u) function in your StreamReader. It should have similar behaviour as in DataReader. This function is used by TS parser.

Regards,
Vladimir

0 Kudos
Reply