Help with the making of a gomtv.net plugin?
#1
Hello,
I'm working on a plugin to stream videos from gomtv.net. However, I've hit a stumbling block.. While I can download and then play videos, I cannot stream videos.

I believe the issue is that XBMC is using curl to get the mimetype prior to launching dvdplayer to play the file. The problem is that there is a key that is "assigned", but it is good for one use only. So by trying to grab the file multiple times (once for the mimetype and again to actually play the file) it is failing. Here's a snippet from the debug log. Not sure if anyone has any thoughts/suggestions on working around this.

Code:
00:53:47 T:4028 M:4294967295    INFO: XCURL::DllLibCurlGlobal::easy_aquire - Created session to http://211.43.144.142
00:53:47 T:4028 M:4294967295   DEBUG: CFileCurl::GetMimeType - http://211.43.144.142/stream.gom?bid=1215&nodeid=10855&level=50&ispay=1&uno=74309&uip=76.28.104.59&title=TSL_Rain%20vs%20oGsEnsnare%20[Round%20of%2032%20match%202]%20Set1&key=8b3546d9f2ae9eda0ab7d88fc216693e -> video/x-flv
00:53:47 T:4028 M:4294967295  NOTICE: DVDPlayer: Opening: http://211.43.144.142/stream.gom?bid=1215&nodeid=10855&level=50&ispay=1&uno=74309&uip=76.28.104.59&title=TSL_Rain%20vs%20oGsEnsnare%20[Round%20of%2032%20match%202]%20Set1&key=8b3546d9f2ae9eda0ab7d88fc216693e
00:53:47 T:4028 M:4294967295 WARNING: CDVDMessageQueue(player)::Put MSGQ_NOT_INITIALIZED
00:53:47 T:5044 M:4294967295   DEBUG: thread start, auto delete: 0
00:53:47 T:5044 M:4294967295  NOTICE: Creating InputStream
00:53:47 T:5044 M:4294967295   DEBUG: CFileCache::Open - opening <stream.gom> using cache
00:53:47 T:5044 M:4294967295   DEBUG: FileCurl::Open(00E1AE18) http://211.43.144.142/stream.gom?bid=1215&nodeid=10855&level=50&ispay=1&uno=74309&uip=76.28.104.59&title=TSL_Rain%20vs%20oGsEnsnare%20[Round%20of%2032%20match%202]%20Set1&key=8b3546d9f2ae9eda0ab7d88fc216693e
00:53:47 T:4028 M:4294967295   DEBUG: ------ Window Init (DialogBusy.xml) ------
00:53:47 T:4028 M:4294967295   DEBUG: ------ Window Deinit (DialogProgress.xml) ------
00:53:48 T:5044 M:4294967295 WARNING: XFILE::CFileCurl::CReadState::FillBuffer: curl failed with code 22
00:53:48 T:5044 M:4294967295   ERROR: CFileCurl::CReadState::Open, didn't get any data from stream.
00:53:48 T:5044 M:4294967295   DEBUG: FileCurl::Close(00E1AE18) http://211.43.144.142/stream.gom?bid=1215&nodeid=10855&level=50&ispay=1&uno=74309&uip=76.28.104.59&title=TSL_Rain%20vs%20oGsEnsnare%20[Round%20of%2032%20match%202]%20Set1&key=8b3546d9f2ae9eda0ab7d88fc216693e
00:53:48 T:5044 M:4294967295   ERROR: XFILE::CFileCache::Open - failed to open source <http://211.43.144.142/stream.gom?bid=1215&nodeid=10855&level=50&ispay=1&uno=74309&uip=76.28.104.59&title=TSL_Rain%20vs%20oGsEnsnare%20[Round%20of%2032%20match%202]%20Set1&key=8b3546d9f2ae9eda0ab7d88fc216693e>
00:53:48 T:5044 M:4294967295   ERROR: CDVDPlayer::OpenInputStream - error opening [http://211.43.144.142/stream.gom?bid=1215&nodeid=10855&level=50&ispay=1&uno=74309&uip=76.28.104.59&title=TSL_Rain%20vs%20oGsEnsnare%20[Round%20of%2032%20match%202]%20Set1&key=8b3546d9f2ae9eda0ab7d88fc216693e]
00:53:48 T:5044 M:4294967295  NOTICE: CDVDPlayer::OnExit()
00:53:48 T:5044 M:4294967295  NOTICE: CDVDPlayer::OnExit() deleting input stream
00:53:48 T:5044 M:4294967295   DEBUG: Thread 5044 terminating
00:53:48 T:4028 M:4294967295   DEBUG: CAnnouncementManager - Announcement: PlaybackStopped from xbmc
00:53:48 T:4028 M:4294967295   ERROR: Playlist Player: skipping unplayable item: 0, path [http://211.43.144.142/stream.gom?bid=1215&nodeid=10855&level=50&ispay=1&uno=74309&uip=76.28.104.59&title=TSL_Rain%20vs%20oGsEnsnare%20[Round%20of%2032%20match%202]%20Set1&key=8b3546d9f2ae9eda0ab7d88fc216693e]
00:53:48 T:4028 M:4294967295   DEBUG: Playlist Player: no more playable items... aborting playback
00:53:48 T:4028 M:4294967295   DEBUG: SDLKeyboard: scancode: 56, sym: 308, unicode: 0, modifier: 0
00:53:48 T:4028 M:4294967295   DEBUG: CWinEventsWin32::WndProcWindow is active
00:53:48 T:4028 M:4294967295   DEBUG: CWinEventsWin32::WndProcWindow lost focus
00:53:48 T:4028 M:4294967295  NOTICE: CDVDPlayer::CloseFile()
00:53:48 T:4028 M:4294967295 WARNING: CDVDMessageQueue(player)::Put MSGQ_NOT_INITIALIZED
00:53:48 T:4028 M:4294967295  NOTICE: DVDPlayer: waiting for threads to exit
00:53:48 T:4028 M:4294967295  NOTICE: DVDPlayer: finished waiting
00:53:48 T:3152 M:4294967295    INFO: Scriptresult: Success
00:53:48 T:3152 M:4294967295    INFO: Python script stopped
00:53:48 T:3152 M:4294967295   DEBUG: Thread 3152 terminating
00:53:48 T:4028 M:4294967295   DEBUG: python thread 8 destructed
00:53:48 T:4028 M:4294967295   DEBUG: ------ Window Deinit (DialogBusy.xml) ------
Reply
#2
I think I found the answer to this Smile

Code:
listItem.setProperty('mimetype', 'video/x-flv')


appears to do the trick.
Reply
#3
Thank you so much for working on this! Please tell me that it will support their premium VOD service when we log in! I run xbmc on my tv computer but hate always needing to leave it to watch SCII. With this I can finally always be in xbmc Big Grin

Please keep us updated on your great work on this!!!
Reply
#4
ZERO <ibis>' Wrote:Thank you so much for working on this! Please tell me that it will support their premium VOD service when we log in! I run xbmc on my tv computer but hate always needing to leave it to watch SCII. With this I can finally always be in xbmc Big Grin
Please keep us updated on your great work on this!!!

It does work for premium vod's (I've tested /w gsl season 2 pass, should work fine w/ gsl s1 pass, too). There are some minor w/ it not playing older VODs, partly due to the way GOMtv validates users. It creates a one-time key for you to use. For some reason XBMC will start streaming the older vod's but fails and then retries, which fails due to already having used the key. It wont save resume position, due to the URL changing each time you play it. Wish I knew why XBMC didnt like some of the older vods, but the mediainfo seems to be the same between the ones that fail and the ones that work, so I'm at a bit of a loss. Of course, if I download the vod's it'll play them fine.

There might be a way to extend the functionality using onAction(), but I'm really not very familiar w/ xbmc or python development, so I'm not sure I'll pursue that.

Anyways, the work I've done is based on an older gomtv.net plugin I found (which no longer works). I was hoping to get approval from the creator prior to releasing an updated version. If I don't hear anything soon, I'll likely proceed w/ releasing it anyways.
Reply
#5
TY for working on this. New to XBMC but I would LOVE to be able to stream some SC2 action through it.
Reply
#6
Really appreciate the work you're putting in. Would love to watch the GSL via XBMC
Reply
#7
Any progress? Big Grin I can't wait for this! Thanks for your work!
Reply
#8
As Code S i starting up today I'm very interested in this plugin
Reply
#9
Any updates? Or can we assume this project is dead?
Reply
#10
This project needs to come back to life.
Reply
#11
Drir Wrote:This project needs to come back to life.

I've begun work on one.

Right now it works for watching vods, with the assumption that you have an account and that you've bought a season ticket (that's what i've developed it with).

See https://bitbucket.org/henrik/plugin.video.gomtv.net/src
Reply
#12
kids addons:
http://forum.xbmc.org/showthread.php?tid=90858
if you scan through the thread, there are various ones people have made
Reply

Logout Mark Read Team Forum Stats Members Help
Help with the making of a gomtv.net plugin?0