Hello community,
I'm playing audio/video playback by gstreamer on SABRE-AI + SABRE_BASE board.
OS I tested is a Linux BSP L4.9.11.
But my customers environment is a Android N7.1.2.
To stop playback by "Q" or "ESC" key pressed, both ESAI_TX_FS and ESAI_TX_CLK signal level
will changed by stop timing. Sometime keep Hi level and sometime will go Low level.
It seems that data transfer will be stopped middle of 1 Frame(L+R data).
Is it a normal operation?
I think when stopping playback, it stops after transferring the last data and keep
last signal state every time.
Could it do by current BSP?
Best regards,
Ishii.
Solved! Go to Solution.
Most likely, the audio driver is designed so as it stops playback at the random point and does not reset the ESAI module. To make the driver always stop playbak at definite point (e.g. at the end of a frame), the driver code should be modified accordingly.
Have a great day,
Artur
Most likely, the audio driver is designed so as it stops playback at the random point and does not reset the ESAI module. To make the driver always stop playbak at definite point (e.g. at the end of a frame), the driver code should be modified accordingly.
Have a great day,
Artur
Hello Artur,
Thank you for your response.
Is it based on the software driver design? (not hardware limitation?)
To implement this function, which is a realistic method?
* to reset ESAI module after stop playback.
* to add control method to stop DMA link point.
* to use some method to stop DMA safty.
* some others.
I am looking forward to hearing from you.
Best regards,
Ishii.
Q. Is it based on the software driver design? (not hardware limitation?)
A. Yes.
Q. to reset ESAI module after stop playback
A. This is the easiest way to solve the issue.
Best Regards,
Artur
Hello Artur,
Thank you for your quick response.
I will inform it to my customer.
Best regards,
Ishii.