simple usb camera app

I am trying to construct a simple macOS app to display video from a usb camera. (This is for my elderly father who needs magnification to read but is too shaky with Parkinson’s to hold a magnifier. Commercial apps are not made for people like him.) The app pretty much needs to do nothing but zoom and scroll the live image around. It would be nice (but maybe not necessary) to be able to set the camera’s parameters, LED light, and trigger the autofocus.

How do I even begin? Though I am an experienced Xojo programmer, the AVFoundation seems daunting, and I am not sure I can afford Christian’s amazing plugins. Does anyone have a simple example that I could use as a foundation, or even just some advice about how to get started? It seems like it should be simpler than it apparently is.

I would start with this one : https://forum.xojo.com/25784-take-picture-with-isight-camera/0

Thanks for your reply, Jean-Yves. I actually tried that, but it won’t compile without the Blocks plugin, which does not seem to be available (all the links take me to Tim Parnell’s website, with no sign of how to get the plugin). I was worried also because that discussion was from a long time ago…

the blocks plugin is here : https://www.dropbox.com/s/rif5r34r15xhaxc/Blocks%20Plugin.zip

Thank you! The program compiles now, and seems to work. I appreciate your help very much!

Due to the age of the files and the inactivity (downloads had been broken for at least six months and nobody mentioned it), I’ve shut down the xojo.io dropbox-backup links. If you’d like a complete copy of the downloads I can send that to you, but the service has ended.

Edit: I will update the redirect to include this message. I apologize for any confusion.

Hey, Tim, thanks for the note. The links were on this thread: https://forum.xojo.com/3586-obj-c-blocks-as-callbacks/p1#p24713, and yes, they were xojo.io links. At least one was https://xojo.io/f0e2dc7227f3. The plugin that Jean-Yves posted worked for me, though, so I am fine.

I did not post it, it is in the webarchive for xojo.io
I’m thinking of making a xojo repository available for all good but now unavailable code.
just lack of time. :wink:

Jean, if you want to take over maintenance of the files send me a DM.

I’m waiting for my fiber connection which should be there before end of 2019 (yes …)
then things may move faster here …

First you could try our MBS Xojo Plugins. Get a trial license and place with them.

lf you need a license and budget is limited, maybe check with us if you qualify for academic license or maybe just wait for the next sale to get a discount.

Check the examples for AVFoundation Plugin.

Thank you, Christian. I should qualify for an academic license. What is the pricing on that?

I did download the plugins, and tried to run the Recorder example, but even after including MBS MacCG Plugin, MBS AVFoundation Plugin, MBS MacBase Plugin, MBS Main Plugin, MBS MacCocoa Plugin, MBS MacCF Plugin (as suggested in the documentation), I am getting the following error: “An error has occurred while compiling this project. Message: Can’t find a type with this name - NSScrollViewMBS. File: MBS Xojo AVFoundation Plugin Location: IKImageBrowserViewControlMBS.ScrollView.”

I guess I need to include some other plugin?

The Mac plugins are heavily dependent on each other. NSScrollViewMBS is in MacControls

Thanks, Tim. I just figured that out myself. The example now compiles. I guess I can now have a go at trying to figure out how to add the features I need.

Christian, I might well be interested in an academic license. I looked again on your website and came up with no information about an academic license. If you want to contact me outside the forum, that would be fine.

Maybe you just start with a trial license?

Dependency list is here:
https://www.monkeybreadsoftware.net/plugindeps.shtml

And academic prices are on the price lists hidden behind a list saying academic prices…

Thanks, Christian, I see the academic pricing now. (I was earlier just looking on the “Pricing” page, not burrowing into the pages that come upif one actually follows the steps for buying a license. I should have thought of that.)

The dependency list is also helpful. However, it does not agree with the list supplied at the top of the “Recorder” example – you might want to adjust that.