As far as I know, there're 2 graphics engines in Android: OpenGL ES and Skia. Both of them provide a set of drawing API and output graphics data to the underlying GraphicBuffer. My question is what's the data format for GraphicBuffer? Is it a standard?
Android: GraphicBuffer data format
732 Views Asked by Dagang Wei At
1
There are 1 best solutions below
Related Questions in ANDROID
- Delay in loading Html Page(WebView) from assets folder in real android device
- MPAndroidChart method setWordWrapEnabled() not found
- Designing a 'new post' android activity
- Android :EditText inside ListView always update first item in the listview
- Android: Transferring Data via ContentIntent
- Wrong xml being inflated android
- AsyncTask Class
- Unable to receive extras in Android Intent
- Website zoomed out on Android default browser
- Square FloatingActionButton with Android Design Library
- Google Maps API Re-size
- Push toolbar content below statusbar
- Android FragmentPagerAdapter Circular listview
- Layout not shifting up when keyboard is open
- auDIO_OUTPUT_FLAG_FAST denied by client can't connect to localhost
Related Questions in OPENGL-ES
- Setting up OpenGL ES 1.1, and my android environment
- Opengl Augmented Reality in Android from solvepnp
- error 1281 for the call to glUseProgram
- Page Curl with best quality
- Qtwebengine on Embedded linux, with qtwayland and OpenGL not working, black rectangles seen on browser
- Maintaining glSurfaceView through different activities
- LibGDX - load and process texture asynchronously
- OpenGL ES 2.0 Framebuffer with render to texture iOS: nothing shown
- Generating a sphere in OpenGL without high level libraries - what's wrong with my code?
- matrix.multiply returning Nan
- Android OpenGL ES Fatal signal crash
- OpenGL / weight order independent transparency
- GLSL: How to calculate fragments output RGB value based on Photoshops curve value?
- Find a longitude given a pair of (lat,long) and an offset latitude
- How to implement dynamic page curl in android?
Related Questions in SKIA
- SKIA Rendering on Windows(SkCanvas from HDC)
- Picasso fails to decode some images: skia decode returned false
- Error A/libc: Fatal signal 11 (SIGSEGV) at 0x00000018 (code=1) in SkPath
- alternative to get getAdvancedTypefaceMetrics
- skia project run in Android.4.2, Does there exists difference define in Android 4.2 and Android 2.2?
- Memory leak in SkCanvas::drawText
- How can I get rid of artifacts in ImageSource created with SkiaSharp
- Skia Font Styles
- What graphic library does chrome use
- Android: GraphicBuffer data format
- Inconsistent character spacing with rust-skia
- How to detect SKCanvasView full size
- How can I allow the user to scroll a very large Skia canvas?
- How can I make skia render to a gbm surface
- Can not load Skia.Package.FMX270.bpl?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
OpenGL is not a graphics engine, it's a drawing API that talks directly with the GPU. It's not like OpenGL is a library with which a image in a certain format is drawn which is then loaded onto the graphics processor. OpenGL usually operates directly on the graphics processor.
Skia however really is a graphics engine. It can render either in software to a pixel buffer, or to a PDF. Or it can make OpenGL calls, which is what it usually does on Android.
A graphics buffer object is actually an abstract handle thing that represents the actual memory which holds the graphics data. But there is no "standard format"; each GPU may have its own preferrable layout. The important parameters are those of every RAW image format: Origin, row length, stride, number of channels, bits per channel, pixel data alignment.
However the most common format out there is BGRA with 8 bits per pixel, stride == row length, 4 bytes data alignment. But it's not important for you as a developer, what the OS uses behind the scenes.