Proposed Implementation for the Visual Magnifier Addition



To all,

Greetings again from the Western New England University students. We have reached a proposed implementation for the visual magnifier functionality to Cheese based on the GNOME human interface guidelines and our understandings of Cheese and GStreamer. Attached is the completed Software Design Specification of our proposed implementation.

Our project's dokuwiki on the SoftHum website can be found here.

To Summarize:
-We plan to add a new drop-down menu to the main window of Cheese labeled "UAC" that will contain the visual magnifier filters and red guideline switches.

-The filters themselves would be implemented as new CheeseEffects (accessible only through the previously described menu if need be) that would utilize GStreamer to modify the image stream from the webcamera to the high-contrast foreground/background filters the customer requested.

-The horizontal red guideline, we are certain that we would implment as a CheeseEffect as well. However, we aren't certain if priorities of effects, or layers, could be implemented from either GStreamer's documentation or Cheese's. As the line needs to remain above, or redrawn on top of any other applied effect we plan to implement.

As far as we have been able to piece together from the documentation and code of both packages, we have this as our basis of thought: CheeseEffects utilize GStreamer pipeline filters and a few of the plugins (In the case of the "Dice" Effect there is a "dicetv" plugin under the gst-plugins-good package) to manipulate the incoming video feed from a webcamera. However, tracing through Cheese's code hasn't provided a source apart from an enumerated list of strings that mention a few effects, so these are all best guesses about how the effects are actually created and used.

The private API within Cheese has been a massive boon to the project (Thanks, again Amigadave for telling us how to generate that), but we would like some confirmation as to whether or not this is how things actually work within the program.

The proposed implementation can be modified if the ideas are either incorrect, or not in line with how the project is currently progressing. Any form of input or criticism is appreciated.

Thanks in advance,
David "Biomech360"

Attachment: SDS - Le Noyau de Fromage.pdf
Description: Adobe PDF document



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]