How about using another demuxer element instead?
(i.e. qtdemux, for mp4 playback pipeline)
As the log is saying, aiurdemux very looks the cause.
After the previous post, in checking the problem of my HLS playback pipeline,
I found it is likely to crash in changing bitrate;
In other words, in trying to play another video stream,
whose resolution, bitrate, or such conditions are different.
Not having verified in detail yet, but, for my HLS pipeline (with imxv4l2sink),
setting "connection-speed" property to some fixed value helped too much;
This means: I forced it to stick to the very one bitrate.
Considering this,
aiurdemux looks causing conflict or some trouble between the two different videos.
In your case, the mp4 file and the ogv file you gave.
So, passing either one of the videos to another demuxer might avoid such situation.
I don't know why it happens with imxv4l2sink and does not with overlaysink,
but it might be because imxv4l2sink would not follow the change of its input, perhaps
(In my case, even video resolution was different...).
Not sure.