Git Product home page Git Product logo

libuvc4j's Introduction

OpenPNP Logo

OpenPnP

Open Source SMT Pick and Place Hardware and Software

Introduction

OpenPnP is a project to create the plans, prototype and software for a completely Open Source SMT pick and place machine that anyone can afford. I believe that with the ubiquity of cheap, precise motion control hardware, some ingenuity and plenty of Open Source software it should be possible to build and own a fully functional SMT pick and place machine for under $1000.

Project Status

OpenPnP is stable and in wide use. It is still under heavy development and new features are added continuously. See the Downloads page to get started.

If you would like to keep up with our progress you can Watch this project on GitHub, check out our Twitter, join the discussion group, or come chat with us on Discord.

Contributing

Build Status Help Wanted Bugs Feature Requests Enhancements

Before starting work on a pull request, please read: https://github.com/openpnp/openpnp/wiki/Developers-Guide#contributing

Summary of guidelines:

  • One pull request per issue.
  • Describe the change.
  • Follow the coding style.
  • Include tests and documentation.
  • Think of the big picture.

Thanks

Many thanks to ej-technologies for providing a complimentary license of install4j. install4j creates high quality, professional installers for Java applications.

More information at http://www.ej-technologies.com/products/install4j/overview.html.

libuvc4j's People

Contributors

lobsteroh avatar vonnieda avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

libuvc4j's Issues

inconsistent outcomes when linking in libuvc.dylib

would anybody be so kind to show me what elements are needed to get this to work reliably ... in eclipse i specify the libuvc4j.jar with library location for libuvc.dylib in usr/local. i made this into a user library as well and include this in my projects. in some projects this works just fine, but in some cases i see this at the start of runtime

Feb 28, 2016 12:22:37 PM org.bridj.BridJ log INFO: Failed to get address of method protected static native void org.openpnp.libuvc4j.UvcLibrary.uvc_set_button_callback(long,org.openpnp.libuvc4j.UvcLibrary$uvc_button_callback_t,long) Feb 28, 2016 12:22:37 PM org.bridj.BridJ log INFO: Failed to get address of method protected static native int org.openpnp.libuvc4j.UvcLibrary.uvc_yuyv2y(long,long) Feb 28, 2016 12:22:37 PM org.bridj.BridJ log INFO: Failed to get address of method protected static native int org.openpnp.libuvc4j.UvcLibrary.uvc_yuyv2uv(long,long) Feb 28, 2016 12:22:37 PM org.bridj.BridJ log INFO: Failed to get address of method protected static native int org.openpnp.libuvc4j.UvcLibrary.uvc_mjpeg2rgb(long,long)

and later when i use one of these routines ...

Exception in thread "Thread-2" java.lang.UnsatisfiedLinkError: org.openpnp.libuvc4j.UvcLibrary.uvc_mjpeg2rgb(JJ)I at org.openpnp.libuvc4j.UvcLibrary.uvc_mjpeg2rgb(Native Method) at org.openpnp.libuvc4j.UvcLibrary.uvc_mjpeg2rgb(UvcLibrary.java:1537) at com.lobsterman.JavaGrinders.control.UVCDeviceManager_pnp$1.apply(UVCDeviceManager_pnp.java:494)

so it does not find implementations for these in the dylib. i believe i am doing the very same thing in the instances that work and those that don't. any suggestions where the critical elements reside that make this work? also what is special about these libuvc calls? why only those, while all others work fine? any suggestions?

get specific Format and FrameDescriptors

Hi, I am trying to iterate through all available streamformats and all frameformats inside, similar to what happens in uvc_print_diag, but i only seem to get the first instance of each with ...

public static void listAllFrameDescriptors(Pointer<uvc_device_handle> devh, int formatIndex, int frameIndex) throws Exception {
    Pointer<uvc_format_desc> fmtDescPtr = UvcLibrary.uvc_get_format_descs(devh);
    uvc_format_desc fmtDesc = fmtDescPtr.get(formatIndex);
    System.out.println(fmtDesc.bDescriptorSubtype());
    uvc_frame_desc frameDesc = fmtDesc.frame_descs().get(frameIndex);
    System.out.println(frameDesc.bDescriptorSubtype() + "; w: " + frameDesc.wWidth() + "; h: " + frameDesc.wHeight() + " ");
}

i am only managing to get the first instance of each by calling

listFrameDescriptor(devh,0,0)

any index other than 0 fetches trouble.

any suggestions or examples on how to do this correctly are greatly welcome

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.