Notices


Reply
Thread Tools
Posts: 2,102 | Thanked: 1,309 times | Joined on Sep 2006
#521
Originally Posted by fms View Post
Two issues I have found in the current mbarcode:
1) It is not quite clear when mbarcode actually makes a shot. More than once I continued feverishly clicking the shutter button.
Atm it's scanning all the time and pushing the shutter button down half way makes it focus if the auto-focus is off. I agree though that we should have some kind of graphical and audio indication that something has been scanned successfully.

I'm also going to add the option to use the shutter button to focus then perform processing (for e.g. 3s after the button is pressed), which should save cpu cycles and make the normal display smoother (no need to have the decoder threads running in the bg all the time.)

Originally Posted by fms View Post
2) Once you click on one of the plugins, the application seemingly hangs, and may continue in this state for a minute or so (while it is searching for your barcode). It should show the "busy" status instead (rotating thingie in the menu bar may do).
I noticed this today, but what I saw was that the list of plugins came up pretty quickly, but then when I was tapping buttons there was no graphical response (though eventually the plugin did open.)

This is especially odd as the plugin I wanted to use was the plain "display text" one, which should be pretty lightweight. I need to look into this as it's not acceptable to have delays like this.
 

The Following User Says Thank You to lardman For This Useful Post:
Posts: 252 | Thanked: 252 times | Joined on Nov 2009
#522
The graphical response missing is probably due to something set up wrongly in the GUI. Either in the custom delegate used for painting, or just in the selection settings for the table view.

If there is a delay in other plugins than Informed Individual, then there is something seriously wrong. Maybe there is some lag after closing the pipeline? I'll try to look into it when I have the time, as well.
__________________
dragly.org
 

The Following 2 Users Say Thank You to dragly For This Useful Post:
Posts: 2,102 | Thanked: 1,309 times | Joined on Sep 2006
#523
Originally Posted by dragly View Post
An indicator is a very good idea. At the moment, there is also some problems with the list not giving the user any feedback when an item is actually clicked. I'll see if I can figure this out.

Most plugins react almost instantaneously on my device, but the Informed Individual server is down (the project is in an early alpha stage) and because of this, the plugin uses a huge amount of time to wait for the request to the server to time out. So if this is the plugin in question, I experience the same delay without any user feedback, as well.
Depending on the complexity of the plugin, we might need to thread the plugin callbacks, especially for plugins that perform web-lookups.
 

The Following User Says Thank You to lardman For This Useful Post:
Posts: 252 | Thanked: 252 times | Joined on Nov 2009
#524
If I remember correctly, the network requests made in Qt are done in a separate thread. That's why you need to connect a slot for the network reply, whenever that returns. The problem with the Informed Individual plugin is that it currently does not give any user feedback before it receives a network reply, but it does not block the GUI, though.

In other words, there is no GUI-blockage when you hit the Informed Individual plugin. Just try to go back to scanning after pressing the plugin button.

On the other hand, making the clickAction() of a plugin into a threaded signal/slot system might be useful to avoid plugins locking up the whole application.
__________________
dragly.org
 

The Following 2 Users Say Thank You to dragly For This Useful Post:
Posts: 2,102 | Thanked: 1,309 times | Joined on Sep 2006
#525
As an aside, I've just pushed the skeleton of a plugin to handle Python plugins. I need to push PythonQT to extras-devel asap and then work out the structure of Python plugins and fill in the useful code, but I have at least started (finally! )

The reason for using a plugin to host multiple plugins is to stop it being necessary for people to include the additional PythonQT startup overhead and dependencies unless they are using a Python plugin.

Anyway, I'm working on it
 

The Following User Says Thank You to lardman For This Useful Post:
Posts: 2,102 | Thanked: 1,309 times | Joined on Sep 2006
#526
Just looking at the code to add in the alternative shutter button action and wondering how much of the startup time is due to using OpenGL?

Dragly have you done any benchmarking? Any other thoughts about getting a functional UI up faster?

As another aside, I wonder if we should load the plugins in a thread/in the bg somehow to prevent the slowdown that will probably occur when they are loaded the first time a barcode is scanned?

Last edited by lardman; 2010-09-28 at 21:39.
 

The Following User Says Thank You to lardman For This Useful Post:
Posts: 8 | Thanked: 0 times | Joined on Sep 2010
#527
After installing Mbarcode to my N900 the camera would not work. I only get a errormessage internal error, camera will be closed.
Had to uninstall mbarcode and addons.
 
Posts: 1,994 | Thanked: 3,342 times | Joined on Jun 2010 @ N900: Battery low. N950: torx 4 re-used once and fine; SIM port torn apart
#528
Originally Posted by protrek View Post
After installing Mbarcode to my N900 the camera would not work. I only get a error message internal error, camera will be closed.
Had to uninstall mbarcode and addons.
Strange... I have mbarcode 0.2.2-4, the latest version, and experience no such problems whatsoever.
 
Posts: 2,102 | Thanked: 1,309 times | Joined on Sep 2006
#529
Originally Posted by protrek View Post
After installing Mbarcode to my N900 the camera would not work. I only get a errormessage internal error, camera will be closed.
Had to uninstall mbarcode and addons.
Probably not an mBarcode problem tbh as it works for everyone else. Rebooting tends to fix a non-behaving camera.

If it really does seem to be linked to mBarcode, I'd be interested to see the output of the camera app from the command line when you try to run it, and also the dmesg and DSP logs.
 

The Following User Says Thank You to lardman For This Useful Post:
Posts: 2,102 | Thanked: 1,309 times | Joined on Sep 2006
#530
Originally Posted by lardman View Post
Just looking at the code to add in the alternative shutter button action and wondering how much of the startup time is due to using OpenGL?

Dragly have you done any benchmarking? Any other thoughts about getting a functional UI up faster?
I've been looking at FCamera, which uses nice overlays for the camera controls and histogram but doesn't use OpenGL. I'll try converting the UI to use plain Qt overlays and see what the performance is like.

Edit: OTOH it may use OpenGL itself, in which case I won't bother - I'll look and see!

No, it doesn't use OpenGL (so there's still the chance it will be quicker). Instead it uses the overlay layer provided by the framebuffer hardware. I suppose it should be possible to encapsulate the overlay stuff in a class and then be able to easily swap between OpenGL and framebuffer overlay. The FCamera people have wrapped the overlay stuff in a class - see OverlayWidget.cpp in the FCamera Garage project.

Last edited by lardman; 2010-09-29 at 09:13.
 

The Following User Says Thank You to lardman For This Useful Post:
Reply

Tags
barcode, camera, mbarcode

Thread Tools

 
Forum Jump


All times are GMT. The time now is 07:45.