NextPVR Forums

Full Version: Announce: BBC LARDY - New Dynamic Source
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2 3
Presenting BBC LARDY a new dynamic source for all you BBC UK radio lovers. BBC LARDY stands for BBC Listen Again Dynamicsource which as the name suggest gives you access to all the BBC Radio Listen Again streams from within GBPVR.

To install BBC LARDY just download the ZIP file attachment and unzip it to .....\Plugins\UbuStream\DynSource in your GBPVR installation directory. Run the BBCLARDT_Setup.bat file, then start the UbuStream configuration application and select the sections of the BBCLar Dynamic Source you want to add to you configuration from this list

[COLOR="Magenta"]
1Xtra Listen Again

6 Music Listen Again

Radio Ulster Listen Again

BBC 7 Listen Again

Radio 1 Listen Again

Radio 2 Listen Again

Radio 3 Listen Again

Radio 4 Listen Again

Five Live Listen Again

World Service Listen Again

[/COLOR]
and then click on the Execute Button. Then you are ready to go. Smile I have not included the live BBC Radio feeds as the URLs of these are fairly static and I expect you probably have them setup in a group already. in case you don't I have listed the URLs you'll need at the end of this post.

All the streams are in RealAudio format so I have set the default player to Real Player. I personally don't use that piece of bloatware :mad: and have as yet to find one of these streams that does not play with VLC, Media Player Classic with the RealAlternative DLLs or the Storm Codec Pack. I'm currently using VLC as to my ears it sounds less "ringy" with the lower bitrate streams than the other two, and it has one reasonable visualisation. The only thing I miss that Media Player Classic allows is the ability to jump to a given time point in the stream (useful if you are listening over a couple of sessions or your ADSL got disconnected). If anyone knows how to do this in VLC please let me know.

The BBC LARDY dynamic source is written in Visual Basic 2005 as a .Net command line application and strips its data from The Beebotron http://beebotron.awardspace.com/. Please visit the site and click through to webcron.org to help the site continue running.

Please post any problems/faults/comments regarding BBC LARDY to this thread and I'll endeavour to fix/respond as appropriate.

Regards

Mike (STX1300man)

------------------------------------------------------------------------------------------------
Here are the static links to the live radio feeds as promised.

rtsp://rmlive.bbc.co.uk/bbc-rbs/rmlive/ev7/live24/1xtra/live/1xtra_dsat_g2.ra
rtsp://rmlive.bbc.co.uk/bbc-rbs/rmlive/ev7/live24/6music/live/6music_dsat_g2.ra
rtsp://rmlive.bbc.co.uk/bbc-rbs/rmlive/ev7/live24/northernireland/ru-live.ra
rtsp://rmlive.bbc.co.uk/bbc-rbs/rmlive/ev7/live24/bbc7/live/bbc7_dsat_g2.ra
rtsp://rmlive.bbc.co.uk/bbc-rbs/rmlive/ev7/live24/radio1/live/r1_dsat_g2.ra
rtsp://rmlive.bbc.co.uk/bbc-rbs/rmlive/ev7/live24/radio2/live/r2_dsat_g2.ra
rtsp://rmlive.bbc.co.uk/bbc-rbs/rmlive/ev7/live24/radio3/live/r3_dsat_g2.ra
rtsp://rmlive.bbc.co.uk/bbc-rbs/rmlive/ev7/live24/radio4/live/r4_dsat_g2.ra
rtsp://rmlive-acl.bbc.co.uk/bbc-rbs/rmlive-acl/ev7/live24/radio5/live/r5_tl_g2.ra
rtsp://rmlive.bbc.co.uk/bbc-rbs/rmlive/ev7/live24/worldservice/liveinfent.ra
STX1300MAN Wrote:Presenting BBC LARDY a new dynamic source for all you BBC UK radio lovers. BBC LARDY stands for BBC Listen Again Dynamicsource which as the name suggest gives you access to all the BBC Radio Listen Again streams from within GBPVR.
Excellent! I'll definitely use this one. I listen to the Beeb live streams all the time and one reason I added the Record and Snapshot features to UbuStream v2.1 was so I could record shows for later. Now I can use this instead. Cool

Slight teething troubles when I use it. It downloaded the sections just fine but when it goes to get the item playlist, I get:

Code:
Unhandled Exception: System.Runtime.InteropServices.COMException (0x80040154): Retrieving the COM class factory for component with CLSID{053957FE-CB0A-11D0-8988-444553540000} failed due to the following error: 80040154.
   at BBCLARDynSource.Module1.ProcessSection(String psSectionName,String psURL, String psPlaylist)
   at BBCLARDynSource.Module1.Main()
Looks like it might be having a problem talking to the HTMLZap dll (and the exception isn't being handled Wink ). Is there anything special needed to register the interop dlls? I'm running your app in the DynSource directory and I have all 4 of your components in that directory.

BTW - HtmlZap looks like a nice little tool. Could be useful for other DynSource authors (or would-be authors) who want to avoid the hassle of using regular expressions.
Quote:... and it has one reasonable visualisation.
And (if you mean "Goom effect") it's a pretty good one. It even includes your station name in there, somewhere, if you can read it. Smile

Quote:The only thing I miss that Media Player Classic allows is the ability to jump to a given time point in the stream (useful if you are listening over a couple of sessions or your ADSL got disconnected). If anyone knows how to do this in VLC please let me know.
VLC has the concept of Long, Medium, Short and Very Short jumps, both backwards and forwards. On the VLC preferences panel, you can set whatever jump length you like (in seconds) for each of these and also set whatever keystroke combo you want for each of the eight jump options. Then, just configure your remote control to send those keystrokes when the appropriate button is pressed (I've got a VLC section in my irremote.ini file that does this, for instance) and you should have what you want. Of course it does depend if the stream is "jumpable". Works well on most "on demand" streams I've tried.

Quote: The BBC LARDY dynamic source is written in Visual Basic 2005 as a .Net command line application and strips its data from The Beebotron http://beebotron.awardspace.com/. Please visit the site and click through to webcron.org to help the site continue running.
To help with my conscience on the "click through" stats issue, I add the target web page (ideally with a program schedule) as the Web Site URL in the PLX file. That way you're encouraging people to go there, not just listen to the stream.

Quote:Here are the static links to the live radio feeds as promised.
Some of these BBC stations also publish WMP feeds which should work OK with VLC as well. For those links and for easy to access schedule info, this site is handy: http://publicradiofan.com/
Ubu

Yes you need to register HTMLZAP, just run the following command line when in the DynSource directory.

regserv32.exe Htmlzap.dll

If you want to be strictly correct I suppose you could move the dll to system32 and do it there.

I don't think you will need to do the same for the two wrapper dll (which allow .NET to access COM components) but if you get a similar (untrapped Big Grin ) error then repeat the same for those two DLLs.

You see that the number of "stations" added is quite large and the concept of sub-groups (or nested groups) may be something you may consider for future releases.

Incidently I wouldn't recommend setting the "keep previous stations" option as the BBC kep this pretty tight and if they are not on display they most probably won't exist.

Regarding the click through I was going to add it to the Dynamic Source module, but robotic access could be eeen as scripting and get the site owner into problems so I decided against it.

Regards

Mike
STX1300MAN Wrote:Yes you need to register HTMLZAP, just run the following command line when in the DynSource directory.

regserv32.exe Htmlzap.dll

If you want to be strictly correct I suppose you could move the dll to system32 and do it there.

I don't think you will need to do the same for the two wrapper dll (which allow .NET to access COM components) but if you get a similar (untrapped Big Grin ) error then repeat the same for those two DLLs.
I registered the htmlzap.dll in the DynSource directory sucessfully but I'm still getting the same error. I tried to register the two Interop dlls but, in each case, regvr32 said it that it found the dll but couldn't find an entry point. (So I guess they're not "register-able"). I then moved htmlzap.dll to Windows\System32 and registered it there. Still no cigar. Same error.

Quote: You see that the number of "stations" added is quite large and the concept of sub-groups (or nested groups) may be something you may consider for future releases.
Oh no. :eek: I just knew somebody was going to ask for that eventually. Not trivial, I'm afraid. Major rejigging of the internal database required. But I agree. Nested groups would make a lot of sense. It's on the long-term to-do list

Quote:Regarding the click through I was going to add it to the Dynamic Source module, but robotic access could be eeen as scripting and get the site owner into problems so I decided against it.
I simply meant that, if you add the URL of their site in the Website= field in the PLX file, then, when people click the Web Site button in UbuStream, the UbuStream mini-browser will open that page so they can read it (or navigate the site, if they're using a mouse). So - no robotic access involved. Just giving people the option of visiting the site (and showing up as a valid page hit in the site's stat logs).
ubu Wrote:I registered the htmlzap.dll in the DynSource directory sucessfully but I'm still getting the same error. I tried to register the two Interop dlls but, in each case, regvr32 said it that it found the dll but couldn't find an entry point. (So I guess they're not "register-able"). I then moved htmlzap.dll to Windows\System32 and registered it there. Still no cigar. Same error.

I'm afraid I am struggling here. :confused: I've done some more deliberate corruptions of my installation and the only way I can reproduce the error you are seeing is to unregister the Htmlzap.dll Sad If I register it and then rename the DLL I get a file not found error, so it would appear that the HTML Zap DLL is being located but can't be instanciated, possibly due to some otherincompatible DLL. Can you do a create new object in C# in a minimal module? Another thought is..... you're not on a 64 bit vsion of windows are you, as I found lots of refs to "possible" issues.

ubu Wrote:Oh no. I just knew somebody was going to ask for that eventually. Not trivial, I'm afraid. Major rejigging of the internal database required. But I agree. Nested groups would make a lot of sense. It's on the long-term to-do list

Yes, I had a look at the xml configuration file for UbuStream when I was debugging :eek: Adding deeper levels of XML nesting.......mmmm, nice Big Grin Shall I add this to your wishlist thread or have you got it covered (filed at the bottom LOL!)

ubu Wrote:I simply meant that, if you add the URL of their site in the Website= field in the PLX file, then, when people click the Web Site button in UbuStream, the UbuStream mini-browser will open that page so they can read it (or navigate the site, if they're using a mouse). So - no robotic access involved. Just giving people the option of visiting the site (and showing up as a valid page hit in the site's stat logs).

OK. I see what you mean now, I'll add it in the next drop once we sort out this HTML Zap problem.
STX1300MAN Wrote:I'm afraid I am struggling here. :confused: I've done some more deliberate corruptions of my installation and the only way I can reproduce the error you are seeing is to unregister the Htmlzap.dll Sad If I register it and then rename the DLL I get a file not found error, so it would appear that the HTML Zap DLL is being located but can't be instanciated, possibly due to some otherincompatible DLL. Can you do a create new object in C# in a minimal module?
So I registered htmlzap.dll (from the DynSource directory). The I created a test C# project. Sure enough, HTMLZAPLib showed up as a COM object. So created a reference to it and then added the following to my Main() method:

Code:
HTMLZAPLib.HtmlParse xx = new HTMLZAPLib.HtmlParse();
It compiled. It executed without any errors. Then I ran your exe again and got the same error. From the error message, it looks like you're getting a bit deeper into your code before the error gets triggered (maybe doing something a bit more ambitious than just creating a new object Smile ), but since I can't see your code I don't know what that is.

Looking at the common distributions of htmlzap out there, I notice they also include an htmlzap.lib file. Not sure what that is. I didn't seem to need it for Visual C# to recognize htmlzap.dll as a COM object and I'd have thought the Interop dlls would be all that's needed. Just wondered what it's used for.

Quote:Another thought is..... you're not on a 64 bit vsion of windows are you, as I found lots of refs to "possible" issues.
Nope, standard XP SP2.

It would be interesting to know if anyone else has got this working or if everybody gets the same error. That would at least give you some kind of datapoint.
ubu Wrote:It would be interesting to know if anyone else has got this working or if everybody gets the same error. That would at least give you some kind of datapoint.

Well 4 people including you have downloaded it, so perhaps we'll get some more feedback.

I don't know what the lib file is for either. I've deleted it and it makes no difference. I'm guessing it may be for people coding with a language development environment that doesn't expose the methods, but that's just a thought (bot fact).

I'm going to try installing BBC LARDY on another machine, but as it's the family's main pc (homework, wife's job, ebaying etc) it may be a couple of days.

I won't be defeated..............well not yet Big Grin
Ubu

I tried the BBCLARDY on another PC and experienced the same problem as you. :o The CLSID in your (and my) error message is 053957FE-CB0A-11D0-8988-444553540000 which is the same CLSID as the HTML Zap DLL is registered to on my development (Visual Studio) machine.

Could you please let me know what CLSID regsvr32.exe used when it created the entries in the registry on your machine.

Regards

Mike
STX1300MAN Wrote:The CLSID in your (and my) error message is 053957FE-CB0A-11D0-8988-444553540000 which is the same CLSID as the HTML Zap DLL is registered to on my development (Visual Studio) machine.

Could you please let me know what CLSID regsvr32.exe used when it created the entries in the registry on your machine.
Hi Mike,

I have the same CLSID as you, however I did notice that not only do I have:

HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{053957FE-CB0A-11D0-8988-444553540000}\InprocServer32

but also

HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{AF469F02-13E3-11D1-8988-444553540000}\InprocServer32

both pointing to:

C:\Program Files\devnz\gbpvr\Plugins\UbuStream\DynSource\htmlzap.dll

I don't know a lot about the internal structure of the registry. The two different CLSIDs are probably normal but I though I'd mention it.

There doesn't seem like there's a lot of info about htmlzap out there and most of it is fairly old. Have you tried emailing the author, Michael Newcomb, at htmlzap@miken.com to see if he can help? He seems to have disappeared off the face of the earth circa 2002 but his web site is still there, so who knows?

If all else fails, you may just have to use regular expressions in your code instead. Wink They give you a lot of control over the parsing and they're built in to .Net so don't need additional dlls to distribute/configure/support/debug.
Where does the 'R' in LARDY come from??? Wink
Pages: 1 2 3