The way you are calling `get_video_source` is not how you are supposed to call a method on a object in Python. Line 41-54 could be improved like this:

```python

match = re.search("videoFlashconnectionUrl = \"(.+?)\";", res.text)
if not match:
    raise NoStreamsError(self.url)
server = match.group(1)

match = re.search("videoFlashSource = \"(.+?)\";", res.text)
if not match:
    raise NoStreamsError(self.url)

if "pssimn24live" in server:
    playpath = "stream1"
else:
    playpath = match.group(1)
```

This also makes the `get_video_source` and `is_live_stream` methods obsolete.

I can't check live page since it returns 404 for me, but is hardcoding the live playpath to "stream1" really necessary? Is it not contained in "videoFlashSource" on the page?