Here is the UI for fosfor. I think I will keep with this model for awhile. The buttons light up as you move over them and the control bar only appears when the mouse is over the window. If you don't move the mouse for 3 seconds the control bar and the pointer disappear. Also there is a slight transparency to the control bar so that you can see the video thru the controls.
The audio and subtitle options do work, but for subtitles, sometimes to get the proper one to appear you need to seek in the media. Problem appears to be in gstreamer, but still seeing if I can work around that issue.
Tuesday, November 24, 2009
Monday, November 16, 2009
Fedora 12, WebCam in Flash
If you are using Fedora 12 and the webcam is not working in Flash applications (the camera is not found). Then add this to $HOME/.bash_profile
LD_PRELOAD=/usr/lib64/libv4l/v4l1compat.so
export LD_PRELOAD
If you are on a 32bit machine change 'lib64' to 'lib'
Then logout and log back in and your webcam should start working.
LD_PRELOAD=/usr/lib64/libv4l/v4l1compat.so
export LD_PRELOAD
If you are on a 32bit machine change 'lib64' to 'lib'
Then logout and log back in and your webcam should start working.
Tuesday, November 03, 2009
Fosfor Widgets - Implemented
I was able to get the widgets finished up early this weekend and enable them as the main widgets for the fosfor application. So far everything is working pretty decently. I have some ideas I still want to try and see if they work better but I'm happy so far.
One idea I have is to only show the controls when the mouse is over the media and to have it fade in smoothly. I've seen this on a couple of flash animations and it looks nice.
Fosfor now requires
clutter 1.1.2
clutter-gtk 0.90
clutter-gst 0.90
All of these are found in clutter git, and have not been released yet.
One idea I have is to only show the controls when the mouse is over the media and to have it fade in smoothly. I've seen this on a couple of flash animations and it looks nice.
Fosfor now requires
clutter 1.1.2
clutter-gtk 0.90
clutter-gst 0.90
All of these are found in clutter git, and have not been released yet.
Wednesday, October 21, 2009
Fosfor Widgets
I've been working on creating some user interface widgets that are mostly done using clutter. I'm doing this for a couple of reasons..
1. Possibility of fun fade in / fade out options when controls are shown/hid
2. When running in fullscreen mode the clutter widgets can be over the media and transparent or opaque. For example show the details while playing a video.
Nothing real exciting here, but let me describe what you are seeing.
Only widgets I'm talking about are widgets in the black area
1. The green items is the traditional tracker, I need to work with the thumb look and feel, but it is getting there
2. The Pause button is what a button looks like when the mouse is over the button, the background highlights and as you move the mouse off, it unhighlights and looks kinda like the play button
3. This particular play button is set "insensitive" so it will appear darker than a button that is sensitive.
Colors are taken from the gtk theme, so it should remain consistent with other apps.
Well that is all I have at the moment.
1. Possibility of fun fade in / fade out options when controls are shown/hid
2. When running in fullscreen mode the clutter widgets can be over the media and transparent or opaque. For example show the details while playing a video.
Nothing real exciting here, but let me describe what you are seeing.
Only widgets I'm talking about are widgets in the black area
1. The green items is the traditional tracker, I need to work with the thumb look and feel, but it is getting there
2. The Pause button is what a button looks like when the mouse is over the button, the background highlights and as you move the mouse off, it unhighlights and looks kinda like the play button
3. This particular play button is set "insensitive" so it will appear darker than a button that is sensitive.
Colors are taken from the gtk theme, so it should remain consistent with other apps.
Well that is all I have at the moment.
Wednesday, October 14, 2009
r600 lockups on Fedora 12/rawhide
If you are experiencing lockups when using an r6xx or r7xx card in Fedora Rawhide (12) try adding
pcie_aspm=off
To your kernel command line in /etc/grub.conf. This solved the lockups for me. Dave Airlied is working on fixing this, so this option should not be needed in the Fedora 12 release.
pcie_aspm=off
To your kernel command line in /etc/grub.conf. This solved the lockups for me. Dave Airlied is working on fixing this, so this option should not be needed in the Fedora 12 release.
Tuesday, October 06, 2009
fosfor - media player project
I created a new project at google code called fosfor (phosphor) that is a new player using the clutter and gstreamer code.
You can find the project here
http://code.google.com/p/fosfor/
You can find the project here
http://code.google.com/p/fosfor/
Wednesday, September 23, 2009
GtkBuilder XML to .h file
Here is a little perl script to convert a GtkBuilder .xml file as generated by libglade3 to a .h file. Kind of in the style of gdk-pixbuf-csource.
Use it like this
#!/usr/bin/perl
$var = $ARGV[0];
open IN, "<$var";
$var =~ s/\./_/g;
print "static const char $var\[\] =\n";
while() {
$line = $_;
chomp $line;
$line =~ s/\"/\\\"/g;
if (/<\/interface>/) {
print "\"$line\";\n";
} else {
print "\"$line\"\n";
}
}
close IN;
Use it like this
xmltoh.pl GtkBuilder.xml > GtkBuilder.hAnd then #include "GtkBuilder.h" and you should have a variable name GtkBuilder_xml that is a string that holds the xml that gtk_builder_add_from_string can use.
Tuesday, September 22, 2009
Using Clutter and Gstreamer for Media Playback
I have been watching the clutter toolkit for sometime and putting together a couple of demo apps at the same time just to see what it can do. So with Fedora 12, there is a new clutter 1.0. Unfortunately none of my old demo apps work, so clutterdesk and couple of other thing would need to be converted to the clutter 1.0 api. So when I feel like it I'll probably get around to do it. But what was most interesting to me in clutter 1.0 was the new ClutterMedia actor. So I installed the components to use it, and it is based on GStreamer (which finally appears to produce pretty decent output for most media items).
So I created a simple playback area and actually had two videos (one ogg and the other quicktime) playing on a single "stage" with about 30ish lines of code. Could just play the media, but it seemed to work quite well.
Next was to see what it would take to get some information about the media. This was actually the difficult part, but luckily I was able to dig thru the totem code and find the information I needed.
Next was to create a gnome-mplayer like gui for it, but since I was playing with new toys, I decided to use GtkBuilder to do it. I used glade3 to create an XML file that gtkbuilder could read. As a side note, having Glade3 produce an include .h file that contained the XML in a const gchar would be a nice improvement, that way you could just include the .h file and go, nothing else to ship.
Had a few issues figuring out how to use it, but after awhile, I got it and produced something that looks like this. (This is the Harry Potter and the Half Blood Prince trailer, that I have stored locally).
Looks a lot like gnome-mplayer and I think I have about 4-6hrs into learning how to do all this. It is quite interesting and the toolkits are quite well thought out. So I'll continue to play with this demo on and off and see what comes out.
If you would like the code, I would be happy to email it to you.
So I created a simple playback area and actually had two videos (one ogg and the other quicktime) playing on a single "stage" with about 30ish lines of code. Could just play the media, but it seemed to work quite well.
Next was to see what it would take to get some information about the media. This was actually the difficult part, but luckily I was able to dig thru the totem code and find the information I needed.
Next was to create a gnome-mplayer like gui for it, but since I was playing with new toys, I decided to use GtkBuilder to do it. I used glade3 to create an XML file that gtkbuilder could read. As a side note, having Glade3 produce an include .h file that contained the XML in a const gchar would be a nice improvement, that way you could just include the .h file and go, nothing else to ship.
Had a few issues figuring out how to use it, but after awhile, I got it and produced something that looks like this. (This is the Harry Potter and the Half Blood Prince trailer, that I have stored locally).
Looks a lot like gnome-mplayer and I think I have about 4-6hrs into learning how to do all this. It is quite interesting and the toolkits are quite well thought out. So I'll continue to play with this demo on and off and see what comes out.
If you would like the code, I would be happy to email it to you.
Sunday, September 20, 2009
r600 and Fedora 12 Snapshot 3ish
I had been running the r600 drivers or at least trying to, using the git versions of the kernel (drm-next branch), mesa, libdrm and xf86-video-ati on my Fedora 11 machine. And I understand that when running this type of config that things are probably gonna crash.
So when I used this config with KMS/DRI2 enabled it annoyed, but did not surprise me when it crashed. However, to get a stable system I was able to add radeon.modeset=0 to the kernel command line and things just worked correctly. No crashes, fast XV all that stuff.
So I decided that I should upgrade to F12 for a couple of reasons.
1. The new GTK with client side windows was included and I have a feeling that could cause gnome-mplayer some pain
2. The r600 drivers were built in to everything
So after downloading 2.5GB of files and upgrading using preupgrade I rebooted the machine. The preupgrade process ran, but hard locked the machine a couple of times using everything default while the upgrade was running (I should have known then). I finally on the third try added radeon.modeset=0 to the kernel command line and the preupgrade finished. After that was done I ran yum and got the latest of everything else.
Then more pain started. The machine using the default of everything would boot up and let me login and promptly lock pretty much right as the desktop showed up and sometimes it would even lockup in GDM when the screen was shuffling around and sometimes I would get 10 mins before it would lock up. So back to the radeon.modeset=0 option. However, this disabled all acceleration. Firefox was dead slow and xv didn't work. Unacceptable. Tired playing around with it a bit more and was out of lock, all I got were lockups for my efforts.
Luckily my motherboard has the Intel G35 chip onboard so I have that as a backup video card. So out comes the ATI card and in goes the ADD2 DVI adapter that I use with my display. After that everything is pretty happy and no lockups and etracer has twice the framerate with the Intel card as with the ATI card (this should not be). Now I know this is all early stuff and I do expect the ATI card to work eventually. But to have snapshot 3 of Fedora out and to have these kinda lockups, well that kinda sucks.
So when I used this config with KMS/DRI2 enabled it annoyed, but did not surprise me when it crashed. However, to get a stable system I was able to add radeon.modeset=0 to the kernel command line and things just worked correctly. No crashes, fast XV all that stuff.
So I decided that I should upgrade to F12 for a couple of reasons.
1. The new GTK with client side windows was included and I have a feeling that could cause gnome-mplayer some pain
2. The r600 drivers were built in to everything
So after downloading 2.5GB of files and upgrading using preupgrade I rebooted the machine. The preupgrade process ran, but hard locked the machine a couple of times using everything default while the upgrade was running (I should have known then). I finally on the third try added radeon.modeset=0 to the kernel command line and the preupgrade finished. After that was done I ran yum and got the latest of everything else.
Then more pain started. The machine using the default of everything would boot up and let me login and promptly lock pretty much right as the desktop showed up and sometimes it would even lockup in GDM when the screen was shuffling around and sometimes I would get 10 mins before it would lock up. So back to the radeon.modeset=0 option. However, this disabled all acceleration. Firefox was dead slow and xv didn't work. Unacceptable. Tired playing around with it a bit more and was out of lock, all I got were lockups for my efforts.
Luckily my motherboard has the Intel G35 chip onboard so I have that as a backup video card. So out comes the ATI card and in goes the ADD2 DVI adapter that I use with my display. After that everything is pretty happy and no lockups and etracer has twice the framerate with the Intel card as with the ATI card (this should not be). Now I know this is all early stuff and I do expect the ATI card to work eventually. But to have snapshot 3 of Fedora out and to have these kinda lockups, well that kinda sucks.
Friday, September 18, 2009
gnome-mplayer and gecko-mediaplayer 0.9.8 released
gnome-mplayer and gecko-mediaplayer 0.9.8 have been released
Main fix is support for the apple.com trailers site
Support for video at PBS.org
Many bug fixes
Updated translations
Download:
http://gnome-mplayer.googlecode.com/files/gnome-mplayer-0.9.8.tar.gz
http://gecko-mediaplayer.googlecode.com/files/gecko-mediaplayer-0.9.8.tar.gz
Full ChangeLog
http://gnome-mplayer.googlecode.com/svn/tags/v0_9_8/ChangeLog
http://gecko-mediaplayer.googlecode.com/svn/tags/v0_9_8/ChangeLog
Enjoy!
Monday, August 24, 2009
Apple.com Trailers and gecko-mediaplayer
Right after the 0.9.7 release of gecko-mediaplayer I was made aware of the fact the apple.com/trailers videos don't work anymore. They worked about a week ago, but Apple apparently made a change. A bug was opened in the gecko-mediaplayer bug tracker (#34). And due to the information provided on how to work around this bug, I was able to create a patch for this bug.
SVN now has a fix for it and should work correctly. Depending on demand I may do a new release of gecko-mediaplayer.
EDIT: Sept 23,2009. I made a similar patch to mplayerplug-in and the code is in CVS now, or you can get it from the nightly code build on the 24th.
SVN now has a fix for it and should work correctly. Depending on demand I may do a new release of gecko-mediaplayer.
EDIT: Sept 23,2009. I made a similar patch to mplayerplug-in and the code is in CVS now, or you can get it from the nightly code build on the 24th.
Thursday, August 20, 2009
r6xx Mesa 3d Driver on Fedora 11
I've been following the 3d driver development for the r6xx/r7xx chipsets using the open source mesa drivers. Progress has been moving along well. In fact compiz has been working for the last week or so. Today, I did some testing and was able to play Quake3 at around 90fps (1280x1024) on my machine without using fglrx or catalyst. The only trick I needed was to specify.
LIBGL_ALWAYS_INDIRECT=1 quake3
on the command line.
However, I did need libdrm from git, the libdrm/linux-core kernel modules (you may need to regenerate initrd to use these modules) from agd5f's r6xx-r7xx-support branch, mesa git and the ATI ddx from git. Other than that I am using stock Fedora.
I also played vdrift and neverputt today, but etracer and neverball crash, so still more to do.
LIBGL_ALWAYS_INDIRECT=1 quake3
on the command line.
However, I did need libdrm from git, the libdrm/linux-core kernel modules (you may need to regenerate initrd to use these modules) from agd5f's r6xx-r7xx-support branch, mesa git and the ATI ddx from git. Other than that I am using stock Fedora.
I also played vdrift and neverputt today, but etracer and neverball crash, so still more to do.
ANNOUNCE: gnome-mplayer and gecko-mediaplayer 0.9.7 released
gnome-mplayer 0.9.7 changes
New tracker for monitoring media progress
Better subtitle support
New screen redraw code for video
New playlist randomizer, sorting and searching options
New icons
Internal ASX parser
Updated translations
Download here:
http://gecko-mediaplayer.googlecode.com/files/gecko-mediaplayer-0.9.7.tar.gz
gecko-mediaplayer 0.9.7 changes
Linker fixes
RAM file parser
Updated translations
Download here:
http://gecko-mediaplayer.googlecode.com/files/gecko-mediaplayer-0.9.7.tar.gz
Thursday, July 30, 2009
Gnome MPlayer changes
This week I made some interesting changes to Gnome MPlayer.
1. Asynchronous metadata loading. So now a threadpool is used to load the metadata in the background. Not that it is very slow, but it should reduce the time of long playlist loads. On my test of a 300 item playlist it cut the time by at least 50%.
2. Playlist storage rework, before this change I used to hold the playlist twice in memory, once in the load order and another in random order and switch between them as needed. I redesigned this process so that I now use indexes to hold this value. Allows for quicker randomizing, faster playlist loading and hopefully less memory usage. In addition the playlist now has an order parameter and you can sort the playlist by this value by clicking on the Order header. The change does result in when "Shuffle Playlist" is selected just the indexes are shuffled and not the actual items.
3. I also made a bunch of minor changes that were results of bug reports/enhancement requests.
1. Asynchronous metadata loading. So now a threadpool is used to load the metadata in the background. Not that it is very slow, but it should reduce the time of long playlist loads. On my test of a 300 item playlist it cut the time by at least 50%.
2. Playlist storage rework, before this change I used to hold the playlist twice in memory, once in the load order and another in random order and switch between them as needed. I redesigned this process so that I now use indexes to hold this value. Allows for quicker randomizing, faster playlist loading and hopefully less memory usage. In addition the playlist now has an order parameter and you can sort the playlist by this value by clicking on the Order header. The change does result in when "Shuffle Playlist" is selected just the indexes are shuffled and not the actual items.
3. I also made a bunch of minor changes that were results of bug reports/enhancement requests.
Thursday, July 09, 2009
Another new Media Tracker
Well the media tracker in 0.9.6 was not well received. I thought it worked well and gave plenty of feedback and looked ok. I knew it had some "GTK Theme" issues, but in general it stuck the the standards.
So anyway, after messing around with a couple of mockups, I decided to ditch the 0.9.6 media tracker and create a new one. It is a little closer to the one in totem, but still uses as little screen space as possible.
So there you go... this should be in 0.9.7. So far I'm amazed how much code I have changed yet again in the 0.9.6 to 0.9.7 development cycle.
So anyway, after messing around with a couple of mockups, I decided to ditch the 0.9.6 media tracker and create a new one. It is a little closer to the one in totem, but still uses as little screen space as possible.
So there you go... this should be in 0.9.7. So far I'm amazed how much code I have changed yet again in the 0.9.6 to 0.9.7 development cycle.
Thursday, May 07, 2009
ClutterDesk
ClutterDesk is starting to be something. I can have it run and take over the desktop now and then you can open folders and applications (using gnome-open). You can also drag items around, but nothing remembers where it was from run to run.
I'm thinking of turning this into a real project now. It does require accelerated 3d to work. (my r6xx, with the radeon driver, sucks running it).
I'm thinking of turning this into a real project now. It does require accelerated 3d to work. (my r6xx, with the radeon driver, sucks running it).
Wednesday, May 06, 2009
Followup on an Application Idea - ClutterDesk
About a year ago, I posted an idea about an application idea. Nobody ever took me up on it as far as I can tell. So I finally had some time and thought I would post a slight mockup of the idea. So here is a video that shows the mock up I have made. I developed this in about 2-3 hrs using the clutter library.
I'll continue working on this mockup and eventually turn it into something as I have time, but if anyone wants to run with it and make it a real app, I'll be happy to provide code.
I'll continue working on this mockup and eventually turn it into something as I have time, but if anyone wants to run with it and make it a real app, I'll be happy to provide code.
Friday, May 01, 2009
Picasa on Fedora 11
I found out today that in order to run Picasa on Fedora 11, you need to have the openssl-devel.i586 package installed. This package includes libssl.so, which is what Picasa needs when connecting to the Google site.
I found this odd, because -devel packages are normally not needed on non-developer machine. But just thought I would share this information.
You might also want to install nss-mdns.i586
I found this odd, because -devel packages are normally not needed on non-developer machine. But just thought I would share this information.
You might also want to install nss-mdns.i586
Wednesday, April 08, 2009
More F11 sound tips
I was having some issues with F11 and mplayer, in that the first few seconds of a file would be played at an odd rate or delayed at the start
Editing /etc/pulse/default.pa
and changing
load-module module-hal-detect
to
load-module module-hal-detect tsched=0
Got rid of that lag, also I found that commenting out 'load-module module-suspend-on-idle' in that file didn't seem to hurt.
I also found that if you have the snd_hda_intel device and you are hearing loud pops, you might want to try this
echo "options snd_hda_intel power_save=0" > /etc/modprobe.d/snd_hda_intel.conf
After doing all that, reboot and enjoy sound again... Now this all applies to the beta, so in the future these tips may be all wrong.
UPDATE: It appears that this issue has been fixed in rawhide and so the tsched=0 is no longer needed.
Editing /etc/pulse/default.pa
and changing
load-module module-hal-detect
to
load-module module-hal-detect tsched=0
Got rid of that lag, also I found that commenting out 'load-module module-suspend-on-idle' in that file didn't seem to hurt.
I also found that if you have the snd_hda_intel device and you are hearing loud pops, you might want to try this
echo "options snd_hda_intel power_save=0" > /etc/modprobe.d/snd_hda_intel.conf
After doing all that, reboot and enjoy sound again... Now this all applies to the beta, so in the future these tips may be all wrong.
UPDATE: It appears that this issue has been fixed in rawhide and so the tsched=0 is no longer needed.
Saturday, April 04, 2009
Disable 'flat' volume in pulseaudio 0.9.15
If you don't like the new 'flat' volume feature in pulseaudio 0.9.15, like I don't then try this.
Login as root and run
echo "flat-volumes = no" >> /etc/pulse/daemon.conf
And then relogin to your desktop, and that should do it.
Login as root and run
echo "flat-volumes = no" >> /etc/pulse/daemon.conf
And then relogin to your desktop, and that should do it.
Tuesday, March 17, 2009
New Media Tracker
As you can tell I'm been on kind of on a gui cleanup roll. After learning how to make widgets and finally having the time to think about what I wanted, I wrote a new tracker widget. I think this widget looks great. You'll see it below where the time of the file is.
Let me know if you agree or not. Also this code is now in SVN.
Let me know if you agree or not. Also this code is now in SVN.
Monday, March 16, 2009
Audio Meter hits gnome-mplayer
Sunday, March 15, 2009
GtkStyleColors
Saturday, March 14, 2009
Audio Meter
Zdravko Nikolov asked be if gnome-mplayer could have an audio meter. I had looked at this in the past and didn't get very far with it and so I decided to take a look at it again. The first thing was how to get the data from mplayer and then I found the export audio filter. I still don't quite get what I am actually getting from the filter, but the data is interesting enough that when graphed it gives something like an audio meter. Now audio techies are probably gonna think what I came up with is an abomination, but it looks pretty and for some people that is all they want.
Here is a screenshot of what I current have working in some test code, and the next thing will be to merge it into the gnome-mplayer code base.
It does scale out and so as you drag the window, everything scales up, which is good. Also if anyone has better math for this or can enlighten me a little as to what the data actually is that would be great.
Here is a screenshot of what I current have working in some test code, and the next thing will be to merge it into the gnome-mplayer code base.
It does scale out and so as you drag the window, everything scales up, which is good. Also if anyone has better math for this or can enlighten me a little as to what the data actually is that would be great.
Friday, March 13, 2009
Gnome MPlayer and Gecko MediaPlayer 0.9.5 Released
gnome-mplayer 0.9.5 is available here:
http://gnome-mplayer.googlecode.com/files/gnome-mplayer-0.9.5.tar.gz
gecko-mediaplayer 0.9.5 is available here:
http://gecko-mediaplayer.googlecode.com/files/gecko-mediaplayer-0.9.5.tar.gz
Translation updates, general bug fixes. So hot key changes for example
playlist is now F9, to be more compatible with other Gnome Apps
New features:
gnome-mplayer now includes a property page in Nautilus that displays
media info. To use restart nautilus after installing and then select a
media file and choose properties, you should see an Audio/Video tab and
you can view the properties that mplayer knows there. If you have totem
installed you might see two pages.
Saturday, February 28, 2009
Gnome Theme - Japan 2007
I was looking at some themes for the E17 window manager and found one called Japan2007. I liked the colors in it and so I grabbed the screen shot and then used gimp to find out the color ids. So since I use gnome, I setup up my preferences using these colors. Here is what I came up with.
Controls: Nodeka
Colors:
Window - #D8D9CC
Input Box - #EDEDE6
Selected Items - #D3D5C0
Tooltips - #F5F5B5
For all the text I used black or #000000
Window Border: Nodeka
Icons: Gnome
It looks like this
Controls: Nodeka
Colors:
Window - #D8D9CC
Input Box - #EDEDE6
Selected Items - #D3D5C0
Tooltips - #F5F5B5
For all the text I used black or #000000
Window Border: Nodeka
Icons: Gnome
It looks like this
Friday, February 27, 2009
Glest and Catalyst 9.1 with dual head
I wanted to try out the game Glest on my machine and ran into some odd things.
1. Running with two displays, the game spans over both displays with the menu being split right down the middle. I'm guessing this is due to the xrandr 1.1 compatibility of the Catalyst 9.1 (fglrx 9.1) drivers.
2. Switching the displays into clone mode prior to bringing up game and then trying to start it, causes the game to crash on start.
[kdekorte@quad ~]$ glest
X Error of failed request: BadValue (integer parameter out of range for operation)
Major opcode of failed request: 135 (XFree86-VidModeExtension)
Minor opcode of failed request: 10 (XF86VidModeSwitchToMode)
Value in failed request: 0x5b
So I guess I am kinda out of luck trying out the game. I might try and play it in dual head and see if I can move some of the in game menus around. But for games, I really wish they would stick to one display unless told otherwise.
1. Running with two displays, the game spans over both displays with the menu being split right down the middle. I'm guessing this is due to the xrandr 1.1 compatibility of the Catalyst 9.1 (fglrx 9.1) drivers.
2. Switching the displays into clone mode prior to bringing up game and then trying to start it, causes the game to crash on start.
[kdekorte@quad ~]$ glest
X Error of failed request: BadValue (integer parameter out of range for operation)
Major opcode of failed request: 135 (XFree86-VidModeExtension)
Minor opcode of failed request: 10 (XF86VidModeSwitchToMode)
Value in failed request: 0x5b
So I guess I am kinda out of luck trying out the game. I might try and play it in dual head and see if I can move some of the in game menus around. But for games, I really wish they would stick to one display unless told otherwise.
Monday, February 23, 2009
Nautilus Property Page now included in Gnome MPlayer
Andrew Kluger asked me that since I had a replacement for all of the Totem components (thumbnailer, browser plugin, media player) except for a property page in Nautilus then perhaps I could create one. I took a look at how Totem did it an determined that it didn't look that bad. So I started working on it and within about 4 hrs had something functional. It may not be finished yet, but it seems to fit the bill.
So how it works, is you install Gnome MPlayer from SVN (0.9.5) and it will install the Nautilus plugin. Select a media file that has an appropriate mime type (if your file type is missing, let me know and I'll add it), and right click on the file. Select properties and you should then see the Audio/Video tab. Click on it an it should then give you details about the media file based on what MPlayer knows about the file.
So how it works, is you install Gnome MPlayer from SVN (0.9.5) and it will install the Nautilus plugin. Select a media file that has an appropriate mime type (if your file type is missing, let me know and I'll add it), and right click on the file. Select properties and you should then see the Audio/Video tab. Click on it an it should then give you details about the media file based on what MPlayer knows about the file.
Wednesday, February 04, 2009
New gnome-mplayer and gecko-mediaplayer 0.9.4
gnome-mplayer 0.9.4 has been released you can download it here
http://gnome-mplayer.googlecode.com/files/gnome-mplayer-0.9.4.tar.gz
gecko-mediaplayer 0.9.4 has been released you can download it here
http://gecko-mediaplayer.googlecode.com/files/gecko-mediaplayer-0.9.4.tar.gz
Changes:
gnome-mplayer
Compatibility with Free/Open/NetBSD
Updated translations
New commandline option "--showsubtitles" defaults to 1, set to 0 to
prevent subtitles from showing by default.
Cleanup glib/gtk assertions
Fix window resize issues
Better handling of initial video playback window, should cause fewer resizes
Fix crashes when HOME is not set
Fix some realplayer emulation issues, may not be entirely fixed as
problem site is not accessible at my location
Stability improvements
Compatibility with libgpod 0.7 (API change between 0.6 and 0.7)
Mixer option is only used when the ALSA ao is selected
gecko-mediaplayer
Switch from XPCOM to NPRuntime Mozilla interface, removes need of idl
compiler and should work on more platforms easier
Compatibility with with Konqueror 4
Fix problems with realmedia sites that use a control parameter that dbus
does not like
http://gnome-mplayer.googlecode.com/files/gnome-mplayer-0.9.4.tar.gz
gecko-mediaplayer 0.9.4 has been released you can download it here
http://gecko-mediaplayer.googlecode.com/files/gecko-mediaplayer-0.9.4.tar.gz
Changes:
gnome-mplayer
Compatibility with Free/Open/NetBSD
Updated translations
New commandline option "--showsubtitles" defaults to 1, set to 0 to
prevent subtitles from showing by default.
Cleanup glib/gtk assertions
Fix window resize issues
Better handling of initial video playback window, should cause fewer resizes
Fix crashes when HOME is not set
Fix some realplayer emulation issues, may not be entirely fixed as
problem site is not accessible at my location
Stability improvements
Compatibility with libgpod 0.7 (API change between 0.6 and 0.7)
Mixer option is only used when the ALSA ao is selected
gecko-mediaplayer
Switch from XPCOM to NPRuntime Mozilla interface, removes need of idl
compiler and should work on more platforms easier
Compatibility with with Konqueror 4
Fix problems with realmedia sites that use a control parameter that dbus
does not like
Monday, February 02, 2009
Google Earth on Fedora 10
If you are running Google Earth on Fedora 10 and are getting the following dialog box:
Google Earth Error
Google Earth detected an error while trying to authenticate. Please
check the following:
- your network connection (can you get to www.google.com?)
- your firewall settings
(are you blocking /usr/lib/googleearth/googleearth-bin?)
Error code: 29
For more information, visit:
Try installing nss-mdns.i386, it solved the problem for me.
Google Earth Error
Google Earth detected an error while trying to authenticate. Please
check the following:
- your network connection (can you get to www.google.com?)
- your firewall settings
(are you blocking /usr/lib/googleearth/googleearth-bin?)
Error code: 29
For more information, visit:
Try installing nss-mdns.i386, it solved the problem for me.
Linux Catalyst 9.1 on Fedora 10
I've been using Fedora and ATI cards together for awhile and the fglrx support has always been kinda hit and miss. The last combination that worked well was Fedora 8 and fglrx 8.10 (I believe). Anyway, when I upgraded to Fedora 10, I did not expect it work well and I had trouble with 8.11 and 8.12 various issues from no display to no 3d support.
So when 9.1 came out, I was not expecting much. However, I installed the akmod-fglrx package from rpmfusion-updates-testing today and so far I have been happy. I run a x86_64 distrobution so I had to install the additional xorg-x11-drv-fglrx-libs-8.573-1.9.1.fc10.i386 package so that 3d would work with i386 applications like SecondLife. If you don't have this installed SecondLife will run at a reduced frame rate. I have not seen other apps that have required this. And since I run dual head I had to remove the virtual setting from the screen area so that fglrx set the screen rez correctly (leaving this in caused the horizontal width to be much to wide). I used the ATI Catalyst Control Center to setup the dual head setting (in previous versions this application crashed) and restarted and everything looked correct.
But I will say that Fedora 10 and Catalyst 9.1 do work together and it seems to work well. Thanks rpmfusion!
So when 9.1 came out, I was not expecting much. However, I installed the akmod-fglrx package from rpmfusion-updates-testing today and so far I have been happy. I run a x86_64 distrobution so I had to install the additional xorg-x11-drv-fglrx-libs-8.573-1.9.1.fc10.i386 package so that 3d would work with i386 applications like SecondLife. If you don't have this installed SecondLife will run at a reduced frame rate. I have not seen other apps that have required this. And since I run dual head I had to remove the virtual setting from the screen area so that fglrx set the screen rez correctly (leaving this in caused the horizontal width to be much to wide). I used the ATI Catalyst Control Center to setup the dual head setting (in previous versions this application crashed) and restarted and everything looked correct.
But I will say that Fedora 10 and Catalyst 9.1 do work together and it seems to work well. Thanks rpmfusion!
Thursday, January 29, 2009
gnome-mplayer 0.9.4 will work with the *BSDs
I've had an open issue with gnome-mplayer not working on the BSDs for awhile now. It always seemed to be a locking error with the code and the problem didn't happen on any of my machines. After trying to have people help me debug it, it kept coming back to the same issue, the second call to g_mutex_lock didn't block, it would just go on thru. So I decided to bite the bullet and install FreeBSD 7 on a VM. I was able to duplicate the issue quite easily. So the next step was to write a test program that simulated my code. I did that and found that the test program behaved the same way that gnome-mplayer did in Linux and BSD. So I then opened a bug on GLIB. The comment was that the a GMutex was not guaranteed to be recursive or non-recursive. What this means is that depending on your environment the way it works changes. So I did a little chatting on irc and __tim told me to check out GCond objects. So I tweaked my test program from using a second lock to g_cond_wait(...) and changed the g_mutex_unlocks to g_cond_signal(...) . After that the test program ran correctly on both Linux and FreeBSD.
So after seeing how the test program worked, I made the needed changes to gnome-mplayer. Did some quick tests on Linux and FreeBSD and everything worked properly. The changes were committed to SVN, so expect to see gnome-mplayer available for *BSD in the near future.
So after seeing how the test program worked, I made the needed changes to gnome-mplayer. Did some quick tests on Linux and FreeBSD and everything worked properly. The changes were committed to SVN, so expect to see gnome-mplayer available for *BSD in the near future.
Thursday, January 08, 2009
gecko-mediaplayer: Replacing XPCom with NPRuntime
Thought I would give a little post-op on the XPCom to NPRuntime conversion. One of the biggest issues with XPCom was the need for .idl files and the code that went along with them. How an .idl file worked was that you declared a class with a unique id and then the methods and properties of that class. Then you took that .idl file and ran it thru the xpidl compiler and this gave and .xpt and a .h file as the output. The .xpt was used by firefox,mozilla, et al to know what methods the class/plugin provided. The .h file was used by the code to create then entry points for the methods. Anyway, getting all the working on many different distrobutions was a pain. Many of the files needed for this step ended up in different places and usually the .pc files (the pkg-config files that say where everything is) were wrong.
So with libxul 1.9.1 coming out shortly and it changing things with XPCom again I decided to look at npruntime since that is where things need to go anyway. Before doing this I did make sure that I could get the plugin working in XPCom mode with 1.9.1 and I was able to, with some minimal fuss. But still decided to take a look into the conversion since I was sick of the whole idl thing.
I planned that the conversion to npruntime would take me about a month on an off and just getting it work, based on the issues I had to get xpcom working initially (this is the mplayerplug-in 2.0 code, version prior to 2.0 had no javascript support).
I started looking at the npruntime sample that I had I started cutting out code from gecko-mediaplayer first. Took about 2-3 hrs and I had the code running and linking against npruntime but without javascript code. I took, npn_gate,npp_gate and np_entry from the sample to get going. At first I didn't think I should touch those files, but after looking at them and reading the comments in them, it looked like I should edit them as needed. Once I got past this step I was actually able to get the plugin to do something other than stare at me. So I got it doing the basics and then I thought I should get javascript working.
So again I looked at the sample and noticed that the classes in the file, kinda resembled the stuff from XPCom and so I decided to get two methods working, play and pause. I had to declare an id and then define that id to be the same as the methods that I did in the .idl file. I then had to edit HasMethod to say, yeah I could handle that id. After I got HasMethod working I noticed that the code was dropping into Invoke and found that with a couple of lines of code I could take the same call that I used in the XPCom callbacks and apply it here. Once I got that working I started doing the bookwork and created all the methods and the callbacks. The same was pretty much true for the properties as well. And in about 8 hrs of work it was pretty much working.
The conversion turned out to be much less work than I expected it to be and I think the code is actually easier to understand now. Before I really dug into this, I looked at it and just was really dreading the conversion as I expected it to be a huge learning curve, but actually I was able to reuse a lot of what I already knew.
So with libxul 1.9.1 coming out shortly and it changing things with XPCom again I decided to look at npruntime since that is where things need to go anyway. Before doing this I did make sure that I could get the plugin working in XPCom mode with 1.9.1 and I was able to, with some minimal fuss. But still decided to take a look into the conversion since I was sick of the whole idl thing.
I planned that the conversion to npruntime would take me about a month on an off and just getting it work, based on the issues I had to get xpcom working initially (this is the mplayerplug-in 2.0 code, version prior to 2.0 had no javascript support).
I started looking at the npruntime sample that I had I started cutting out code from gecko-mediaplayer first. Took about 2-3 hrs and I had the code running and linking against npruntime but without javascript code. I took, npn_gate,npp_gate and np_entry from the sample to get going. At first I didn't think I should touch those files, but after looking at them and reading the comments in them, it looked like I should edit them as needed. Once I got past this step I was actually able to get the plugin to do something other than stare at me. So I got it doing the basics and then I thought I should get javascript working.
So again I looked at the sample and noticed that the classes in the file, kinda resembled the stuff from XPCom and so I decided to get two methods working, play and pause. I had to declare an id and then define that id to be the same as the methods that I did in the .idl file. I then had to edit HasMethod to say, yeah I could handle that id. After I got HasMethod working I noticed that the code was dropping into Invoke and found that with a couple of lines of code I could take the same call that I used in the XPCom callbacks and apply it here. Once I got that working I started doing the bookwork and created all the methods and the callbacks. The same was pretty much true for the properties as well. And in about 8 hrs of work it was pretty much working.
The conversion turned out to be much less work than I expected it to be and I think the code is actually easier to understand now. Before I really dug into this, I looked at it and just was really dreading the conversion as I expected it to be a huge learning curve, but actually I was able to reuse a lot of what I already knew.
Friday, January 02, 2009
radeonhd drivers on r600
After installing libdrm and radeonhd from the r6xx-r7xx-support branch. And running configure with the --prefix=/usr and --libdir=/usr/lib64 and making a slight modification to the libtool file in drm so that it would install when the libdir was /usr/lib64 I got my system back up and working in the same state as before. Except that with radeonhd I need to enable the composite manager in metacity to make it display better.
After that I reran the gtkperf -c 500 -a test and got this
GtkPerf 0.40 - Starting testing: Fri Jan 2 12:57:55 2009
GtkEntry - time: 0.16
GtkComboBox - time: 4.70
GtkComboBoxEntry - time: 4.07
GtkSpinButton - time: 0.41
GtkProgressBar - time: 0.26
GtkToggleButton - time: 0.70
GtkCheckButton - time: 0.51
GtkRadioButton - time: 0.90
GtkTextView - Add text - time: 8.33
GtkTextView - Scroll - time: 0.98
GtkDrawingArea - Lines - time: 2.02
GtkDrawingArea - Circles - time: 3.88
GtkDrawingArea - Text - time: 2.93
GtkDrawingArea - Pixbufs - time: 0.35
---
Total time: 30.20
Which is a fun 5 seconds faster than the eariler test... excellent
After that I reran the gtkperf -c 500 -a test and got this
GtkPerf 0.40 - Starting testing: Fri Jan 2 12:57:55 2009
GtkEntry - time: 0.16
GtkComboBox - time: 4.70
GtkComboBoxEntry - time: 4.07
GtkSpinButton - time: 0.41
GtkProgressBar - time: 0.26
GtkToggleButton - time: 0.70
GtkCheckButton - time: 0.51
GtkRadioButton - time: 0.90
GtkTextView - Add text - time: 8.33
GtkTextView - Scroll - time: 0.98
GtkDrawingArea - Lines - time: 2.02
GtkDrawingArea - Circles - time: 3.88
GtkDrawingArea - Text - time: 2.93
GtkDrawingArea - Pixbufs - time: 0.35
---
Total time: 30.20
Which is a fun 5 seconds faster than the eariler test... excellent
Radeon r600 drivers
It appears that the r600/r700 AMD/ATI chipsets are finally making some progress on getting hardware acceleration going. So I'll be doing some testing here with them in the future.
As of right now I'm running Fedora 10 and am using the xorg-x11-drv-ati drivers that come with Fedora 10 and they are giving these performance metrics. rpm is xorg-x11-drv-ati-6.9.0-63.fc10.x86_64
gtkperf -c 500 -a
GtkPerf 0.40 - Starting testing: Fri Jan 2 11:46:31 2009
GtkEntry - time: 0.18
GtkComboBox - time: 6.01
GtkComboBoxEntry - time: 5.69
GtkSpinButton - time: 0.43
GtkProgressBar - time: 0.25
GtkToggleButton - time: 0.86
GtkCheckButton - time: 0.61
GtkRadioButton - time: 1.04
GtkTextView - Add text - time: 8.95
GtkTextView - Scroll - time: 1.61
GtkDrawingArea - Lines - time: 1.60
GtkDrawingArea - Circles - time: 4.31
GtkDrawingArea - Text - time: 3.20
GtkDrawingArea - Pixbufs - time: 0.45
---
Total time: 35.17
glxgears is not hardware accelerated yet.
glxgears
1071 frames in 5.0 seconds = 214.146 FPS
1075 frames in 5.0 seconds = 214.934 FPS
Also to note that I am running two screens with one desktop across them.
As of right now I'm running Fedora 10 and am using the xorg-x11-drv-ati drivers that come with Fedora 10 and they are giving these performance metrics. rpm is xorg-x11-drv-ati-6.9.0-63.fc10.x86_64
gtkperf -c 500 -a
GtkPerf 0.40 - Starting testing: Fri Jan 2 11:46:31 2009
GtkEntry - time: 0.18
GtkComboBox - time: 6.01
GtkComboBoxEntry - time: 5.69
GtkSpinButton - time: 0.43
GtkProgressBar - time: 0.25
GtkToggleButton - time: 0.86
GtkCheckButton - time: 0.61
GtkRadioButton - time: 1.04
GtkTextView - Add text - time: 8.95
GtkTextView - Scroll - time: 1.61
GtkDrawingArea - Lines - time: 1.60
GtkDrawingArea - Circles - time: 4.31
GtkDrawingArea - Text - time: 3.20
GtkDrawingArea - Pixbufs - time: 0.45
---
Total time: 35.17
glxgears is not hardware accelerated yet.
glxgears
1071 frames in 5.0 seconds = 214.146 FPS
1075 frames in 5.0 seconds = 214.934 FPS
Also to note that I am running two screens with one desktop across them.
gnome-mplayer and gecko-mediaplayer 0.9.3 released
Updated versions of gnome-mplayer and gecko-mediaplayer have been released. Pretty much several small fixes for a few annoying issues. But would recommend the update.
Subscribe to:
Posts (Atom)