Hi,
I am currently switching audio tracks in an audio file with different audio formats (The file which I am using has audio_0: AC-3, audio_1: AAC). Currently working on a MP4 file having multiple audio streams/tracks.
1. I do switching from Audio #0 --> #1.
2. I do switching from Audio #1 --> #0.
3. I do switching from Audio #0 --> #1.
4. I do switching from Audio #1 --> #0.
I get the "Got ERROR: Internal data flow error." on switching.
check_last_log.check_last_logI get the above sometimes while switching for the first time. But now consistently i am getting the issue on the fourth switch.
After activating the target audio pad, I check the caps of the pad in the pad_activate function. It is the caps of the target audio track only - "Seems Fine till here".
After that I get the error and the playback exits.
On debugging I found out that while pushing stream-start event from audio_switch:src to audio-queue:sink, the return is either GST_FLOW_EOS/GST_FLOW_NOT_NEGOTIATED which after few logs leads to GST_FLOW_FLUSHING on the gst_pad_push buffer api.
The problem is that the issue I face does not have the same pattern.
I could not attach complete log. I have attached from the part where I add probe on my audio-queue:src pad and then perform switching.
Please can anyone clear my doubt of what and where is the issue, because the same code works for a file with 8 aac audio streams.
Also Is it OK if I get GST_FLOW_FLUSHING error and the playback being continued even after that issue.
Thank You In Advance