Req using external player for DVBViewer
#1
Hi,

Maybe, that my request is more a android-request - I dont know, how it works on other platforms.

The DVBViewer PVR is using the upnp-stream of the DVBViewer backend.

If you are using the upnp-server of DVBViewer, then you can use it to stream DVB-channels. This works with the kodi-DVDPlayer but it works with all external players which are able to play from upnp sources as well (like MXPlayer!!).

But if you try to use the MXPlayer as PVR-Player so it can not work:

The reason seems to be this (described with this example):
12:16:53 T:1709326920 DEBUG: opening live stream on url 'pvr://stream/tv/45.ts'
12:16:53 T:1709326920 DEBUG: PVRFile - virtual bool XFILE::CPVRFile::Open(const CURL&) - playback has started on filename pvr://channels/tv/Alle Kanäle/pvr.dvbviewer_46.pvr
12:16:53 T:1709326920 DEBUG: CCurlFile::GetMimeType - http://192.168.x.y:7522/upnp/channelstream/45.ts -> video/mpeg
12:16:53 T:1709326920 DEBUG: CFileCache::Open - opening <upnp/channelstream/45.ts> using cache
12:16:53 T:1709326920 DEBUG: CurlFile::Open(0x63256b10) http://192.168.x.y:7522/upnp/channelstream/45.ts
12:16:54 T:1528517640 DEBUG: ------ Window Init (DialogBusy.xml) ------
12:16:57 T:1673477560 NOTICE: Thread FileCache start, auto delete: false
12:16:57 T:1709326920 DEBUG: CDVDInputStreamPVRManager::Open - stream opened: http://192.168.x.y:7522/upnp/channelstream/45.ts

The reason seems to be, that the MXPlayer - or all other externals - does not know what a url pvr//... is. The DVDPlayer is able to "translate" this to the correct upnp-streams.
If the MxPlayer would get this upnp-stream - then the player could play the channel.

So - it should be possible with not so much effort to handover the upnp-address to the external player.
The DVDPlayer or a new kodi-function with the same result should therefore first "translate" the PVR-address to the backend-stream address.

Btw.... if this would change generally, it could work for other backends with http-streams as well, when the external player is able to work with this kind of streams.

Thank you

SaEt9000
Reply
#2
Why do you want/need to use an external player?
Reply
#3
no question: the best solution is always running kodi with full compatible kodi-DVDplayer.
But there are a lot of systems - especially android-player - where are some issues with the internal DVDPlayer. It depends from chipset and firmware.

F.i. I am using a Himedia Player.
These players working well with its own factory-player and with MXPlayer.
Kodi-player works as well for a lot of video-files -but there are issues with ts-files and some h264-channels.

Using an external player is a workaround - but it is better then nothing :-)

That is why kodi has implemented the option to use external player by configurating a playercorefactory.xml . And there you can choose an external player for pvr. But this can not work without additional configuration in kodi or in dvbViewer add-on.
As workaround there is a little app: the XBMC Wrapper. This app works as external player and wraps the pvr to the real upnp stream. But it is vey complicated and on my system kodi is crashing by using this wrapper.

SaEt9000
Reply
#4
If you have issues with the internal player you should file a bug report on trac.kodi.tv.
Reply
#5
(2015-05-03, 15:41)SaEt9000 Wrote: So - it should be possible with not so much effort to handover the upnp-address to the external player.
The pvr://-URLs are required. Otherwise Kodi doesn't trigger the GetLiveStreamURL function of the PVR, which is necessary for knowing which channel is currently being played.
Reply
#6
So i understood it as well.

But if you take a look on the part of my log in the first post of this thread:
Nothing should be changed - but only in the moment when the stream is opened.

Then there should be the internal question (if/then external player yes or not) - if it is " yes": handover the stream http://192.168.x.y:7522/upnp/channelstream/XX.ts to the external player.
Else: go on as usual (what meens open the stream with internal player).

Good idea?

SaEt9000
Reply
#7
No, you didn't understand. The PVR is already working exactly the way you want it to work.
On startup the channels with pvr:// urls are passed to Kodi. On channel switch Kodi calls the GetLiveStreamURL function, which will return the channels upnp (or rtsp) url.

Furthermore: PVRs don't have access to Kodis internals. So they are not able to detect the current player. But this isn't a dvbviewer specific issue anyway.

I'm not really familiar with Kodis internal player interface, but Kodi should resolve the pvr://-urls (using GetLiveStreamURL like with the internal player) before passing them to external players.
Reply
#8
Hi,

i made now some tests again, but there is actually no way to use external player (MXPlayer on android) for DVBViewer PVR.
The problem seems to be, that the interpretation of pvr:// url is part of the "DVDPlayer-engine" and so the url is not resolving before passing them to the player..
So - no external player is able to understand that.

But I think you are right: that is not a problem of DVBviewer PVR but of kodi.

SaEt9000
Reply

Logout Mark Read Team Forum Stats Members Help
using external player for DVBViewer0