Ktts is finally getting a version bump since 4.0. What can you expect in this release (that will come out with KDE SC 4.4 as part of kde-accessibility)? Well, a lot of things have changed, but more is still a work in progress. The most significant change is that ktts now talks directly to speech-dispatcher, which is a daemon that handles all speech from kde, gnome, console, etc. Speech-dispatcher itself supports many synthesizers like espeak, festival and so on. The plan was to make ktts expose all of the capabilities of speech-dispatcher, but it didn't quite get to that point yet.
The first new thing you should note is that if speech-dispatcher is set up, ktts doesn't need any voices configured at all. speech-dispatcher uses whichever synthesizer it can find and plays a dummy wav file if it can't find any. (The talkers tab in kttsmgr doesn't really affect anything inside speech-dispatcher yet anyway...) You can play with the different voices from the jobs tab though, setting different pitch, volume and speed, hitting apply, then clicking speak clipboard contents (I'll add a test button for 4.5, or possibly 4.4.1 if the translators let me).
One thing that didn't make it in to this release was the gui for setting up speech-dispatcher. It has a command-line configuration tool called spd-conf which works fine. But I would like to get a gui for it in the next release if time permits.
I'd also like to join kttsd and kttsmgr into one process/app, kttsd doesn't do job management anymore because speech-dispatcher does all that now (yes I know the jobs tab will be renamed at some point, since it doesn't deal with jobs at all). So joining kttsmgr and kttsd makes sense I believe. Alternatively making speech-dispatcher have its own dbus access would remove the need for kttsd completely, kttsmgr could then just be a gui for configuring and controlling speech-dispatcher itself. We'll see which direction things go as this progresses.
Anyway, junt wanted to give a short update. Enjoy the wonder that KDE SC 4.4 will bring =)
Here I share stories of things I'm working on or have worked on recently. I enjoy contributing to open source software, so most posts will be related to that.
I also post a chinese word every day here.
Wednesday, February 3, 2010
Saturday, January 23, 2010
svn2git rules!
In case anyone has been hiding under a rock lately, yes kde is moving to git in the foreseeable future. There is a meeting weekly in #kde-git about the migration progress, what needs doing still, and what is done. One task that had not been taken on very much is writing the rules to import from svn into git (using svn2git, which is a handy app thiago wrote a while ago).
As one of the few people working on kde-accessibility these days, I took it upon myself to check those rules. This was a bit harder than I imagined it would be, and harder than it should be due to lack of documentation (or possibly my lack of reading the existing documentation?) and some nuances of the rule syntax and kde's svn history itself. Just thismorning I finished this and want to share some things I learned here for others doing the same for other modules.
#1 match lines should end with a / in most cases.
if you are matching a path in svn, you have to remember to add the trailing / or you will get cryptic svn errors about being unable to get data of a non-object or somesuch. Thanks to argonel for pointing this out to me the other day.
#2 action recurse rules are tricky but necessary.
I first copied konversation's rules to start kdeaccessibility's ruleset, then merged in kdeaccessibility parts of kde-rules-main. There was a problem though, svn2git would get stuck when it got to creating the 4.0.0 tag, because the 4.0 branch didn't exist. Then I noticed a rule I had missed from kde-rules-main
The answer was to make the recurse match only what it needed to, so to create the 4.0 branch I set it to match /branches/KDE/4.0/ with a min-revision and max-revision of when /branches/KDE/4.0/ was created.
Problem with that match is that it didn't match 4.1 or others, since the match is a regex this was easy to fix, just make the match terminate with $ so it only matched svn revisions that are folders 4.0, 4.1, etc. etc.
I'll start looking into another module's rules next, so we can get this migration to git done. Any opinion which module I should look into next (kdeaccessibility was a good choice as its apps never spent time in kdereview or playground...)
As one of the few people working on kde-accessibility these days, I took it upon myself to check those rules. This was a bit harder than I imagined it would be, and harder than it should be due to lack of documentation (or possibly my lack of reading the existing documentation?) and some nuances of the rule syntax and kde's svn history itself. Just thismorning I finished this and want to share some things I learned here for others doing the same for other modules.
#1 match lines should end with a / in most cases.
if you are matching a path in svn, you have to remember to add the trailing / or you will get cryptic svn errors about being unable to get data of a non-object or somesuch. Thanks to argonel for pointing this out to me the other day.
#2 action recurse rules are tricky but necessary.
I first copied konversation's rules to start kdeaccessibility's ruleset, then merged in kdeaccessibility parts of kde-rules-main. There was a problem though, svn2git would get stuck when it got to creating the 4.0.0 tag, because the 4.0 branch didn't exist. Then I noticed a rule I had missed from kde-rules-main
match /(branches|tags)/KDE/([^/])/after adding that though, the import would fail even earlier than before, because the above match would match files as well as folders, so entries with /branches/KDE/4.0/README which cannot recurse (because it's not a folder...)
action recurse
end match
The answer was to make the recurse match only what it needed to, so to create the 4.0 branch I set it to match /branches/KDE/4.0/ with a min-revision and max-revision of when /branches/KDE/4.0/ was created.
Problem with that match is that it didn't match 4.1 or others, since the match is a regex this was easy to fix, just make the match terminate with $ so it only matched svn revisions that are folders 4.0, 4.1, etc. etc.
I'll start looking into another module's rules next, so we can get this migration to git done. Any opinion which module I should look into next (kdeaccessibility was a good choice as its apps never spent time in kdereview or playground...)
Thursday, October 8, 2009
Utah Open Source Conference 2009 day one
Today was the first day. Setup went fairly smoothly. I set up wired network with the switch and two boxes Ian Geiser sent me to use, but the wired network was not working (I later connected their wired network just into one machine and it worked fine, so dunno). Luckily they had wireless in those little boxen, so that got them online to demo kde 4.3 kubuntu. I realized how important web access is to kde during that time though, the microblogging, comic, weather, etc. applets all need web access obviously. But so did ghns to get providers of comics for the plasmoid, etc. etc. I think I take web access for granted most of the time.
There was some good feedback at the conference. I heard lots of people saying they used to love kde but haven't used it since 4.0 came out. I left all those people with hope in 4.3 that they hadn't tried besides there on the demo boxen. I met a few kde fans which was pretty cool. Showed amarok, kde-edu apps (kstars, kig, kgeography, klettres to some guys that mentioned they had kids), kmahjongg, and plasma of course. I also showed kwin present windows and it's ability to filter by typing, so many people don't know about that useful feature! I can definitely see where promotion can get us many many more users testing, using, playing with and enjoying the wonderful stuff we contribute our efforts to. Tomorrow should be fun, will give more report tomorrow probably.
I think the only downer about the day was that there was a huge window right behind our row of tables, which gave so much glare the screens were barely visible. That and irc was blocked, hehe.
There was some good feedback at the conference. I heard lots of people saying they used to love kde but haven't used it since 4.0 came out. I left all those people with hope in 4.3 that they hadn't tried besides there on the demo boxen. I met a few kde fans which was pretty cool. Showed amarok, kde-edu apps (kstars, kig, kgeography, klettres to some guys that mentioned they had kids), kmahjongg, and plasma of course. I also showed kwin present windows and it's ability to filter by typing, so many people don't know about that useful feature! I can definitely see where promotion can get us many many more users testing, using, playing with and enjoying the wonderful stuff we contribute our efforts to. Tomorrow should be fun, will give more report tomorrow probably.
I think the only downer about the day was that there was a huge window right behind our row of tables, which gave so much glare the screens were barely visible. That and irc was blocked, hehe.
Sunday, October 4, 2009
ghns meeting
Yesterday morning we had another meeting in #ghns on freenode. It went very well, there was a much better turn out than last week, and since we had been hacking on things this week a lot more thought was brought into it I think. The plan on techbase got some ui features added to it based on feedback from users, and some developers. Josef was at the meeting and will be adding some things to HotStuff (the implementation of dxs running on newstuff.kde.org) to support paging which will be good. Especially since Eugene and some others thought of a way to do paging that's transparent to the user. We'll load two pages of data, show it in the list, and when the user scrolls to the second page of data, we'll load the third page and so on. Hope that will turn out feeling natural and cool =) We've also decided to leave the filter box in for local filtering (but rename it to Filter) and make server-side search available via a search button. Some complaints about the current method of "sorting" were raised also, since it doesn't really sort anything, just grabs 3 different feeds from the server (highest rated, latest, and most downloads). I'm thinking of making those tabs, but that's not optimal either. If anyone has a good idea how to represent that with the ui we have, that would be cool. Anyway, all in all it was a great meeting, and though there's lots more to do, we are all optimistic.
Hopefully in the next couple days I'll have some real stuff to show, so stay tuned.
Hopefully in the next couple days I'll have some real stuff to show, so stay tuned.
Wednesday, September 30, 2009
KNewStuff3
In the past couple days I've been playing with the code, and have reached a couple conclusions. First, KNS::Engine isn't an engine, it's an interface the apps use to interact with the engine. Apps don't need to know anything about the engine though (and currently don't/can't anyway). Also this interface class has no signaling mechanism, so it would be good to derive it from QObject so it can send out signals and apps can connect to them. In other words some binary incompatible changes will be necessary and I'm on the way to make them happen by creating knewstuff3. Because of this decision we have the chance to make some binary incompatible changes in the library itself which I believe will help keep the design cleaner and make it easier to maintain as a whole.
I had a discussion on irc today about what to name the interface class, and after a few suggestions settled on the name KNS::Client. I'll be getting that going this week, and hope to have something basic working by next week. We'll see.
This coming saturday we'll have another meeting on #ghns on freenode if anyone else wants to come along and share their 2c with the rest of us. As I blogged last time, last weekends meeting was productive. We've got a plan and are on the road to better things.
I had a discussion on irc today about what to name the interface class, and after a few suggestions settled on the name KNS::Client. I'll be getting that going this week, and hope to have something basic working by next week. We'll see.
This coming saturday we'll have another meeting on #ghns on freenode if anyone else wants to come along and share their 2c with the rest of us. As I blogged last time, last weekends meeting was productive. We've got a plan and are on the road to better things.
Saturday, September 26, 2009
KNewStuff2 Future
Time again to think about the future. This morning in #ghns on freenode we had a meeting about KNewStuff2 and ghns (Get Hot New Stuff) in general. There are a lot of cool things coming our way with Open Desktop (opendesktop.org) and it's use in Plasma (OCS Widget) and KNewStuff2. Before the meeting I wrote down a plan for making KNewStuff2 better prepared for these coming changes and documented it here: KNewStuff2Plan and will be working to achieve that end for KDE 4.4. Frederik will be working on the RESTProvider which will provide better access to the functionality on kde-look.org etc. sites. I'll be revamping a bunch of the KNewStuff2 library to make this easier and better also. Plus documenting my promise to do so here gives me more motivation/pressure to actually get it done =)
Want a taste of what's to come? How about the ability to rate/comment on a wallpaper from the KNewStuff2 dialog itself (something I promised back at the 4.0 release event but never got in ;) . How about the ability to see multiple pages of "latest uploaded" and "highest rated"? How about the ability to see all color schemes uploaded by that master color schemer Joe Colormakerman? I'm hoping we can get there and much further in the not so distant future. Anyone with me? =)
Want a taste of what's to come? How about the ability to rate/comment on a wallpaper from the KNewStuff2 dialog itself (something I promised back at the 4.0 release event but never got in ;) . How about the ability to see multiple pages of "latest uploaded" and "highest rated"? How about the ability to see all color schemes uploaded by that master color schemer Joe Colormakerman? I'm hoping we can get there and much further in the not so distant future. Anyone with me? =)
Thursday, September 10, 2009
Utah Open Source Conference
Hey everyone,
Time has come again for the third annual Utah Open Source Conference http://www.utosc.com (I missed the first two, but will be going to this one). I'll be bringing stuff to demo KDE to people and set up a booth there, so if anyone wants to come by and say hi, or see the coolness that is KDE, well, you know where I'll be anyway.
This is also a call for help. If anyone is going to be in the area and would like to help me represent KDE and man the booth that would be awesome. I've never actually run a booth like this before, so will be my first time, but should be fun I think.
Anyway, hope to see ya there, and let me know if you'd like to help with the booth either on irc (jpwhiting) or via e-mail (jpwhiting@kde.org).
Time has come again for the third annual Utah Open Source Conference http://www.utosc.com (I missed the first two, but will be going to this one). I'll be bringing stuff to demo KDE to people and set up a booth there, so if anyone wants to come by and say hi, or see the coolness that is KDE, well, you know where I'll be anyway.
This is also a call for help. If anyone is going to be in the area and would like to help me represent KDE and man the booth that would be awesome. I've never actually run a booth like this before, so will be my first time, but should be fun I think.
Anyway, hope to see ya there, and let me know if you'd like to help with the booth either on irc (jpwhiting) or via e-mail (jpwhiting@kde.org).
Subscribe to:
Posts (Atom)