2020-07-15 19:51:38 +02:00
2020-07-15 19:51:38 +02:00
2020-07-15 19:51:38 +02:00
2017-02-22 21:12:10 +00:00
2020-07-14 15:30:16 +02:00

extension-camera

Native extension to use device camera to capture frames.

Installation

To use the camera extension in a Defold project this project has to be added as a Defold library dependency. Open the game.project file and in the Dependencies field in the Project section add:

https://github.com/defold/extension-camera/archive/master.zip

Or point to the ZIP file of a specific release.

Supported platforms

The currently supported platforms are: OSX + iOS

FAQ

How do I reset macOS camera permission?

To test macOS camera permission popup multiple times you can reset the permission from the terminal:

tccutil reset Camera

Lua API

Type constants

Describes what camera should be used.

camera.CAMERA_TYPE_FRONT -- Selfie
camera.CAMERA_TYPE_BACK

Quality constants

camera.CAPTURE_QUALITY_HIGH
camera.CAPTURE_QUALITY_MEDIUM
camera.CAPTURE_QUALITY_LOW

Status constants

camera.STATUS_STARTED
camera.STATUS_STOPPED
camera.STATUS_NOT_PERMITTED
camera.STATUS_ERROR

camera.start_capture(type, quality, callback)

Start camera capture using the specified camera (front/back) and capture quality. This may trigger a camera usage permission popup. When the popup has been dismissed the callback will be invoked with camera start status.

camera.start_capture(camera.CAMERA_TYPE_BACK, camera.CAPTURE_QUALITY_HIGH, function(self, status)
    if status == camera.STATUS_STARTED then
        -- do stuff
    end
end)

camera.stop_capture()

Stops a previously started capture session.

camera.stop_capture()

camera.get_info()

Gets the info from the current capture session.

local info = camera.get_info()
print("width", info.width)
print("height", info.height)

camera.get_frame()

Retrieves the camera pixel buffer. This buffer has one stream named "rgb", and is of type buffer.VALUE_TYPE_UINT8 and has the value count of 1.

self.cameraframe = camera.get_frame()
Description
No description provided
Readme 247 KiB
Languages
Objective-C++ 43.6%
C++ 33.2%
Java 21%
C 2.2%