I still want to get more information off the streams I pass to VLCKit.
Well one is inside [self.mediaplayer.media tracksInformation] dictionary.
One issue is persistent - the frame rate (calculated with frame_rate_num / frame_rate_denom) is still incorrect TS streams with 720p (like ARD HD) are still shown with 100 fps - but it is 50 fps.
Anyway...
For now I use
Code: Select all
[self.mediaplayer setMedia:[VLCMedia mediaWithURL:url]];
self.mediaplayer.media.delegate = self;
[self.mediaplayer.media parseWithOptions:VLCMediaParseLocal|VLCMediaFetchLocal];
// I start playback later in code making sure this happens from a background thread/queue
As soon as I change to
Code: Select all
[self.mediaplayer.media parseWithOptions:VLCMediaParseLocal|VLCMediaFetchLocal|VLCMediaParseNetwork|VLCMediaFetchNetwork];
Maybe some threading issue - I will try to put it into background queue.
At the end - I have the issue during playback of the stream using audio-passthrough with 5.1 audio, that the UI sounds (when changing focussed elements, like UIButtons) can't get mixed correctly and the sound is distorted, which is a mess when sound gets to HomeCinema Equipment at high volume.
To circumvent this I first like to know the channel setup of the audio tracks and then try to force the UI sounds into stereo mix-down or multi-channel audio.
But overall - the issue with parsing the stream and the lack of information about the channel setup for the audio tracks currently does not allow me to configure an AVAudioSession correctly.
Any hints - any bugfix ahead?
Regards,
SSB
(My patch to enforce bitcode compilation is still not committed - with nightlies I can't archive my app for AppStore).