Доступ к камере через OpenMAX в Android - PullRequest
27 голосов
/ 29 марта 2012

В настоящее время я пытаюсь выяснить, как получить доступ к камере через OpenMAX в Android 4.0. Документации для меня недостаточно, поэтому я в настоящее время пытаюсь найти правильный XADataSource для следующего вызова.

(*_engine)->CreateMediaRecorder(_engine,
                                &_mediaRecorder, //pRecorder
                                nullptr, //pAudioSrc
                                XADataSource *, //pImageVideoSrc
                                XADataSink *, //pDataSnk
                                XAuint32, // numInterfaces
                                const XAInterfaceID *, //pInterfaceIds
                                const XAboolean *, //pInterfaceRequired
);

И, пожалуйста, избавьте меня от , просто используйте Java - «ответы».

Ответы [ 2 ]

4 голосов
/ 05 октября 2012

Это в основном определение XADataSource, взятое из http://www.khronos.org/registry/omxal/specs/OpenMAX_AL_1_1_Specification.pdf

typedef struct XADataSource_ {
    void * pLocator;
    void * pFormat;
} XADataSource;

Поля включают в себя:

Field        Description
pLocator Pointer to the specified data locator structure. This may point to any of the       following structures. 
    XADataLocator_Address
    XADataLocator_IODevice
    XADataLocator_URI
    XADataLocator_MediaObject
    XADataLocator_Null
    XADataLocator_ContentPipe
The first field of each of these structures includes the 32 bit locatorType field,   which identifies 
the locator type (see XA_DATALOCATOR definitions) and hence the structure pointed to.
Note: The available XA_DATALOCATOR definitions may be extended through an API   extension.

pFormat A pointer to the specified format structure. This may point to any of the following structures. 
    XADataFormat_PCM (Deprecated)
    XADataFormat_PCM_EX
    XADataFormat_MIME
    XADataFormat_RawImage
The first field of each of these structures includes the 32 bit formatType field, which identifies the 
format type (XA_DATAFORMAT definitions) and hence the structure pointed to. pFormat is ignored 
if pLocator is XADataLocator_IODevice

Извините, я не смог отформатировать его лучше, но я предлагаю проверитьэтот документ в любом случае, если вы этого еще не сделали.

0 голосов
/ 26 февраля 2017

http://mobilepearls.com/labs/native-android-api/ndk/docs/openmaxal/

Реализация Android поддерживает только CreateMediaPlayer и воспроизводит поток MP2T H264 AAC.

...