Re: [Banshee-List] Boston Summit - Banshee Lyrics Plugin
- From: "Sanford Armstrong" <sanfordarmstrong gmail com>
- To: banshee-list gnome org
- Subject: Re: [Banshee-List] Boston Summit - Banshee Lyrics Plugin
- Date: Sun, 15 Oct 2006 10:10:53 -0700
Sorry for all the spam... here's an updated patch that puts the lyrics
pane showing stuff in a separate thread so you don't have to wait 10
seconds to hear your song.
I'm really looking forward to this website coming back online so I can
play with this plugin more!
Sandy
On 10/15/06, Sanford Armstrong <sanfordarmstrong gmail com> wrote:
Patch attached to suppress error (but you still have to wait a few
seconds for your song to start).
On 10/15/06, Sanford Armstrong <sanfordarmstrong gmail com> wrote:
> I think the lyrc website is just down. I'm getting the same problem
> as you, and I think it's just because I can't resolve
> http://lyrc.com.ar .
>
> Sandy
>
> On 10/15/06, Nil Gradisnik <ghaefbgtk gmail com> wrote:
> > Running Ubuntu Edgy updated, mono 1.1.7.1, banshee 0.11.0,
> > banshee-lyrics-plugin-0.1.
> >
> > When I enable plugin and start the playback banshee pauses for a few
> > seconds, I get warrning message in a window: Playback Error, The
> > request timed out.
> >
> > And this is the --debug output:
> >
> > Could not fetch recommendations: Text node cannot appear in this
> > state. Line 903, position 18.
> > System.Net.WebException: The request timed out
> > at System.Net.HttpWebRequest.EndGetResponse (IAsyncResult
> > asyncResult) [0x0006e] in
> > /build/buildd/mono-1.1.17.1/mcs/class/System/System.Net/HttpWebRequest.cs:721
> > at System.Net.HttpWebRequest.GetResponse () [0x0000e] in
> > /build/buildd/mono-1.1.17.1/mcs/class/System/System.Net/HttpWebRequest.cs:726
> > at Banshee.Plugins.Lyrics.Base.GetSource (System.String url) [0x00000]
> > at Banshee.Plugins.Lyrics.Lyrc.GetLyrics (System.String Artist,
> > System.String Song) [0x00000]
> > at Banshee.Plugins.Lyrics.LyricsPane.ShowPane (System.String artist,
> > System.String title) [0x00000]
> > at Banshee.Plugins.Lyrics.LyricsPlugin.ShowPane (System.String
> > artist, System.String title) [0x00000]
> > at Banshee.Plugins.Lyrics.LyricsPlugin.OnPlayerEngineEventChanged
> > (System.Object o, Banshee.MediaEngine.PlayerEngineEventArgs args)
> > [0x00000]
> > at (wrapper delegate-invoke)
> > System.MulticastDelegate:invoke_void_object_PlayerEngineEventArgs
> > (object,Banshee.MediaEngine.PlayerEngineEventArgs)
> > at Banshee.Base.PlayerEngineCore.OnEngineEventChanged (System.Object
> > o, Banshee.MediaEngine.PlayerEngineEventArgs args) [0x00018] in
> > /build/buildd/banshee-0.11.0/src/Banshee.Base/PlayerEngineCore.cs:127
> > at (wrapper delegate-invoke)
> > System.MulticastDelegate:invoke_void_object_PlayerEngineEventArgs
> > (object,Banshee.MediaEngine.PlayerEngineEventArgs)
> > at Banshee.MediaEngine.PlayerEngine.RaiseEventChanged
> > (PlayerEngineEvent evnt, System.String message, Double
> > bufferingPercent) [0x00028] in
> > /build/buildd/banshee-0.11.0/src/Banshee.Base/MediaEngine/PlayerEngine.cs:202
> > at Banshee.MediaEngine.PlayerEngine.OnEventChanged
> > (PlayerEngineEvent evnt, System.String message, Double
> > bufferingPercent) [0x0002c] in
> > /build/buildd/banshee-0.11.0/src/Banshee.Base/MediaEngine/PlayerEngine.cs:186
> > at Banshee.MediaEngine.PlayerEngine.OnEventChanged
> > (PlayerEngineEvent evnt) [0x00000] in
> > /build/buildd/banshee-0.11.0/src/Banshee.Base/MediaEngine/PlayerEngine.cs:175
> > at Banshee.MediaEngine.PlayerEngine.HandleOpen (Banshee.Base.SafeUri
> > uri) [0x00018] in
> > /build/buildd/banshee-0.11.0/src/Banshee.Base/MediaEngine/PlayerEngine.cs:122
> > Error: [10/15/2006 3:21:30 PM] (Playback Error) - The request timed out
> >
> >
> >
> > On 10/13/06, Aaron Bockover <abockover novell com> wrote:
> > > Adam gave a great demo of this on Monday after his work throughout the
> > > weekend at the GNOME Summit in Boston. I'd encourage everyone to give
> > > this plugin a try!
> > >
> > > --Aaron
> > >
> > > On Wed, 2006-10-11 at 03:10 -0500, Adam Israel wrote:
> > > > I hacked together my first Banshee plugin during the Boston Summit this
> > > > past weekend. It is a simple plugin that will fetch and display the
> > > > lyrics for the currently-playing song.
> > > >
> > > > http://battleaxe.net/projects/banshee/plugins/lyrics/
> > > >
> > > > -- Adam
> > > >
> > > >
> > > > _______________________________________________
> > > > Banshee-list mailing list
> > > > Banshee-list gnome org
> > > > http://mail.gnome.org/mailman/listinfo/banshee-list
> > >
> > > _______________________________________________
> > > Banshee-list mailing list
> > > Banshee-list gnome org
> > > http://mail.gnome.org/mailman/listinfo/banshee-list
> > >
> > _______________________________________________
> > Banshee-list mailing list
> > Banshee-list gnome org
> > http://mail.gnome.org/mailman/listinfo/banshee-list
> >
>
=== modified file 'src/Lyrics/Base.cs'
--- src/Lyrics/Base.cs 2006-10-09 18:12:09 +0000
+++ src/Lyrics/Base.cs 2006-10-15 17:06:24 +0000
@@ -34,7 +34,13 @@
request.Timeout = 10000;
- HttpWebResponse response = (HttpWebResponse)request.GetResponse();
+ HttpWebResponse response;
+
+ try {
+ response = (HttpWebResponse)request.GetResponse();
+ } catch (System.Net.WebException) {
+ return source;
+ }
if(response.ContentLength == 0) {
=== modified file 'src/LyricsPlugin.cs'
--- src/LyricsPlugin.cs 2006-10-09 18:46:39 +0000
+++ src/LyricsPlugin.cs 2006-10-15 17:08:22 +0000
@@ -1,4 +1,5 @@
using System;
+using System.Threading;
using Gtk;
using GConf;
@@ -10,6 +11,27 @@
namespace Banshee.Plugins.Lyrics
{
+ public class PaneShower
+ {
+ private string artist;
+ private string title;
+ private LyricsPane pane;
+
+ public PaneShower (string artist, string title, LyricsPane pane)
+ {
+ this.artist = artist;
+ this.title = title;
+ this.pane = pane;
+ }
+
+ public void ShowPane ()
+ {
+ pane.ShowPane(artist,title);
+ }
+ }
+
+
+
public class LyricsPlugin : Banshee.Plugins.Plugin
{
private GConf.Client gconf;
@@ -103,8 +125,9 @@
HidePane();
}
- pane.ShowPane(artist, title);
-
+ PaneShower paneShower = new PaneShower(artist,title,pane);
+ Thread thread = new Thread(paneShower.ShowPane);
+ thread.Start();
}
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]