@athoik
You just give me an idea make it all a bit more services based.
At this time we are using a single player in e2 called servicemp3.cpp to play so what all trough gstreamer.
But to make the player ok for all type off media is very difficult.
Like for fix media full prerol and audio,sub selection should be done before passing to play state. If done there is no need off (+- dirty work-arounds) into mediasink self.
Then one for the website media or actually all streamed media.
Then one service for the cd playing. Currently we are rid off the virtual mounting (has been deprecated in linux kernel since long) libcdio is used to make a playlist from the audio cd when the audio cd is dected now the cd is not mounted anymore.
But if a separate cpp for audio cd only is made the optimum settings can be done and instead off threading the cd track by track we will tread the cd as an entity and the jump between tracks will just be done by seek.
This all will be a lot of work , but once it's done the base like say e2 media player can be easily used for all .
But the advantage is that we have a typicall media related type player (in cpp)
one for cd playing
one for file media playing
one for website and live streams playing.
one for dvd is already present.