Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add alternative android example source code #2

Closed
wants to merge 39 commits into from
Closed

add alternative android example source code #2

wants to merge 39 commits into from

Conversation

zhouwg
Copy link

@zhouwg zhouwg commented Nov 4, 2018

according to issue2617(IntelRealSense#2617), Thanks your detailed expatiate.

I have following questions:

  1. could we maintain a custom libusb for librealsense? or revoke the external libusb
    (like the internal libusb before v2.16.2) ? then invoke the standard Android Java
    API in native layer to obtain the required infos for librealsense. this is a general
    way in Android world which should be supported by Google long time. maintain
    a customized libusb in librealsense mightbe a better idea
    ?? so some
    interesting idea or PR would be found/created -- we know that Google's AOSP
    maintain a lots of customized open source projects.

this PR is a simple example to illustrate the possibility of the above proposal:
the apk could preview bag file on any non-rooted Android phone.
the apk's source code in this PR also could be found at: irsa_example_code
the screensnap could found at: screensnap of irsa_example

along with the performance in Android based mobile/IoT device becomes more
stronger and stronger, we know that many users want to using librealsense on
Android based device for their PoC/product development activities. it's might be
very convenient that using an Android based mobile device to presenting
some advanced CV/AI/ML technology
(I barely understand AI/ML).

it seems there are two major issues with librealsense on Android device: patch
Android kernel; root privilege to access /dev/video* and /dev/bus/usb/*.

  1. librs should running very well on any non-rooted Android device if Google could
    provide a customize AOSP which add the librealsense kernel patch in Android
    kernel and add some SELinux "door" for librealsense
    . The data path in the
    traditional Camera framework seems too heavy and long-path, may be it's not
    suitable for librealsense as a lightweight and high-efficiency dev-kit.
    is there any roadmap/planning of librealsense's officially android supportive?

3.according to the arch of IRSA, what/which APIs should be provided to Android users?
I'm not a member of your dev team and even mightbe not a member of your company
someday, so I don't know the answer of this question or I'm very interesting with
this question.

your answer will be highly appreciated, thanks very much!

aangerma and others added 30 commits October 25, 2018 11:39
The code used to ruin on an infinite while loop. I couldn't close the image window while the programming is running. Inorder to make it more user friendly I have just added a key press to close the window when an esc key or 'q' is pressed.
 Disable platform camera for pipeline - will work only with intel cameras
streams in this case we need to restart the m_base_timestamp again instead assertion.
__FUNCTION__ marco cannot use string concatenate in prinf() args, it
need %s format output.
__VA_ARGS__ will appear no empty argument situation. So we need add ##
before it to remove privious comma.
YUYV stream stacked whan depth stream stoped due to zero copy.
Handle assertion on playback_device caused by race condition between the start of two
adding a key press to exit the image window
[matlab] update frameset.m to reflect mexfile
This fixes a thread deadlock that could occur in some situations,
especially when running under Valgrind.

See this issue on the easyloggingpp repo:
abumq/easyloggingpp#417
Modify timestamp cconversion to align with kernel convention (nsec)
Kernel 4.13 - modify gyro timestamp to use the same conversion as acce. fix return value.
Kernel 4.4 - add scale patch to avoid explicit conversion. Assumption in:usec, out:nsec
@zhouwg zhouwg closed this Nov 8, 2018
@zhouwg zhouwg deleted the irsa_example branch November 8, 2018 15:15
dorodnic added a commit that referenced this pull request Mar 9, 2019
dorodnic pushed a commit that referenced this pull request Jul 19, 2020
Added some tests and remove sorting of vectors before comparing.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants