Giter Club home page Giter Club logo

heifreader's People

Contributors

yohhoy avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

heifreader's Issues

unsupported FileTypeBox('ftyp') brands

Hi, thank you so much for the library. Unfortunately a very simple example file can not be loaded for the following reason:

    java.io.IOException: unsupported FileTypeBox('ftyp') brands
        at jp.yohhoy.heifreader.HeifReader.parseHeif(HeifReader.java:262)
        at jp.yohhoy.heifreader.HeifReader.decodeByteArray(HeifReader.java:143)
        at jp.yohhoy.heifreader.HeifReader.decodeFile(HeifReader.java:182)

Even though the ftyp is

D/HeifReader: HEIC ftyp=FileTypeBox[majorBrand=heic;minorVersion=0;compatibleBrand=mif1;compatibleBrand=heic]

Android

[ImageReader-1440x960f4m1-31732-3] Failed to release buffer: Unknown error -1 (1)
10-26 07:41:38.943 31732-2027/jp.yohhoy.heifreader E/ImageReader_JNI: Producer output buffer format: 0x7fa30c06, ImageReader configured format: 0x4
10-26 07:41:38.958 31732-2027/jp.yohhoy.heifreader E/HeifReader: rendering RGB565 format failure
jp.yohhoy.heifreader.HeifReader$FormatFallbackException: java.lang.UnsupportedOperationException: The producer output buffer format 0x7fa30c06 doesn't match the ImageReader's configured buffer format 0x4.
at jp.yohhoy.heifreader.HeifReader.renderHevcImageWithFormat(HeifReader.java:394)
at jp.yohhoy.heifreader.HeifReader.decodeByteArray(HeifReader.java:149)
at jp.yohhoy.heifreader.HeifReader.decodeFile(HeifReader.java:180)
at jp.yohhoy.heifreader.HeifReader.decodeStream(HeifReader.java:243)
at jp.yohhoy.heifreader.MainActivity$1$1.doInBackground(MainActivity.java:76)
at jp.yohhoy.heifreader.MainActivity$1$1.doInBackground(MainActivity.java:72)
at android.os.AsyncTask$2.call(AsyncTask.java:333)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:245)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at java.lang.Thread.run(Thread.java:764)
Caused by: java.lang.UnsupportedOperationException: The producer output buffer format 0x7fa30c06 doesn't match the ImageReader's configured buffer format 0x4.
at android.media.ImageReader.nativeImageSetup(Native Method)
at android.media.ImageReader.acquireNextSurfaceImage(ImageReader.java:439)
at android.media.ImageReader.acquireNextImage(ImageReader.java:493)
at jp.yohhoy.heifreader.HeifReader.renderHevcImageWithFormat(HeifReader.java:392)
at jp.yohhoy.heifreader.HeifReader.decodeByteArray(HeifReader.java:149) 
at jp.yohhoy.heifreader.HeifReader.decodeFile(HeifReader.java:180) 
at jp.yohhoy.heifreader.HeifReader.decodeStream(HeifReader.java:243) 
at jp.yohhoy.heifreader.MainActivity$1$1.doInBackground(MainActivity.java:76) 
at jp.yohhoy.heifreader.MainActivity$1$1.doInBackground(MainActivity.java:72) 
at android.os.AsyncTask$2.call(AsyncTask.java:333) 
at java.util.concurrent.FutureTask.run(FutureTask.java:266) 
at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:245) 
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162) 
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636) 
at java.lang.Thread.run(Thread.java:764) 

rendering failure with hardware decoder

Xperia X Performance, Android 7.0

HeifReader#initialize choose hardware decoder.

D/HeifReader: HEVC decoder="OMX.qcom.video.decoder.hevc" supported-size=4096x2160
              color-formats=[2141391878, 2135033992, 2141391876, 19, 21, 2141391877]
D/HeifReader: HEVC decoder="OMX.google.hevc.decoder" supported-size=2048x2048
              color-formats=[2135033992, 19]
I/HeifReader: HEVC decoder="OMX.qcom.video.decoder.hevc" supported-size=4096x2160

MediaCodec output surface which format is 0x7fa30c06.

D/HeifReader: HEVC output-format={crop-top=0, crop-right=511, color-format=2141391878, height=512, color-standard=2, crop-left=0, color-transfer=3, stride=512, mime=video/raw, slice-height=512, width=512, color-range=2, crop-bottom=511}
I/HeifReader: HEVC decoding elapsed=136.88573[msec]
E/ImageReader_JNI: Producer output buffer format: 0x7fa30c06,
                   ImageReader configured format: 0x32315659
W/HeifReader: rendering YV12 format failure; fallback to RGB565

D/HeifReader: HEVC output-format={crop-top=0, crop-right=511, color-format=2141391878, height=512, color-standard=2, crop-left=0, color-transfer=3, stride=512, mime=video/raw, slice-height=512, width=512, color-range=2, crop-bottom=511}
I/HeifReader: HEVC decoding elapsed=132.25766[msec]
E/ImageReader_JNI: Producer output buffer format: 0x7fa30c06,
                   ImageReader configured format: 0x4
E/HeifReader: rendering RGB565 format failure
              jp.yohhoy.heifreader.HeifReader$FormatFallbackException:
                java.lang.UnsupportedOperationException:
                  The producer output buffer format 0x7fa30c06 doesn't match the ImageReader's configured buffer format 0x4.

Galaxy S7 edge, Android 6.0.1 also report same error message.

jp.yohhoy.heifreader.HeifReader$FormatFallbackException: java.lang.UnsupportedOperationException: The producer output buffer format 0x32315679 doesn't match the ImageReader's configured buffer format 0x4.

jp.yohhoy.heifreader.HeifReader$FormatFallbackException: java.lang.UnsupportedOperationException: The producer output buffer format 0x32315679 doesn't match the ImageReader's configured buffer format 0x4.
at jp.yohhoy.heifreader.HeifReader.renderHevcImageWithFormat(HeifReader.java:389)
at jp.yohhoy.heifreader.HeifReader.decodeByteArray(HeifReader.java:149)
at jp.yohhoy.heifreader.HeifReader.decodeResource(HeifReader.java:200)
at jp.yohhoy.heifreader.MainActivity.onCreate(MainActivity.java:89)
at android.app.Activity.performCreate(Activity.java:7805)
at android.app.Activity.performCreate(Activity.java:7794)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1306)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3319)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3488)
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:83)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:140)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:96)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2077)
at android.os.Handler.dispatchMessage(Handler.java:107)
at android.os.Looper.loop(Looper.java:264)
at android.app.ActivityThread.main(ActivityThread.java:7510)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:980)
Caused by: java.lang.UnsupportedOperationException: The producer output buffer format 0x32315679 doesn't match the ImageReader's configured buffer format 0x4.
at android.media.ImageReader.nativeImageSetup(Native Method)
at android.media.ImageReader.acquireNextSurfaceImage(ImageReader.java:450)
at android.media.ImageReader.acquireNextImage(ImageReader.java:504)
at jp.yohhoy.heifreader.HeifReader.renderHevcImageWithFormat(HeifReader.java:387)
at jp.yohhoy.heifreader.HeifReader.decodeByteArray(HeifReader.java:149) 
at jp.yohhoy.heifreader.HeifReader.decodeResource(HeifReader.java:200) 
at jp.yohhoy.heifreader.MainActivity.onCreate(MainActivity.java:89) 
at android.app.Activity.performCreate(Activity.java:7805) 
at android.app.Activity.performCreate(Activity.java:7794) 
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1306) 
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3319) 
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3488) 
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:83) 
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:140) 
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:96) 
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2077) 
at android.os.Handler.dispatchMessage(Handler.java:107) 
at android.os.Looper.loop(Looper.java:264) 
at android.app.ActivityThread.main(ActivityThread.java:7510) 
at java.lang.reflect.Method.invoke(Native Method) 
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:980) 

Question: Do you plan on supporting animation?

I know the repository says it's not supported, but I don't think there is any other library that supports HEIF for Android .

Would be great if it did support animation. Do you plan on adding it?

rendering RGB565 format failure

rendering RGB565 format failure
jp.yohhoy.heifreader.HeifReader$FormatFallbackException: java.lang.UnsupportedOperationException: The producer output buffer format 0x32315679 doesn't match the ImageReader's configured buffer format 0x4.
at jp.yohhoy.heifreader.HeifReader.renderHevcImageWithFormat(HeifReader.java:394)
at jp.yohhoy.heifreader.HeifReader.decodeByteArray(HeifReader.java:149)
at jp.yohhoy.heifreader.HeifReader.decodeFile(HeifReader.java:180)
at jp.yohhoy.heifreader.HeifReader.decodeStream(HeifReader.java:243)
at jp.yohhoy.heifreader.MainActivity$1$1.doInBackground(MainActivity.java:71)
at jp.yohhoy.heifreader.MainActivity$1$1.doInBackground(MainActivity.java:67)
at android.os.AsyncTask$2.call(AsyncTask.java:295)
at java.util.concurrent.FutureTask.run(FutureTask.java:237)
at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:234)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
at java.lang.Thread.run(Thread.java:818)
Caused by: java.lang.UnsupportedOperationException: The producer output buffer format 0x32315679 doesn't match the ImageReader's configured buffer format 0x4.
at android.media.ImageReader.nativeImageSetup(Native Method)
at android.media.ImageReader.acquireNextSurfaceImage(ImageReader.java:327)
at android.media.ImageReader.acquireNextImage(ImageReader.java:375)
at jp.yohhoy.heifreader.HeifReader.renderHevcImageWithFormat(HeifReader.java:392)
at jp.yohhoy.heifreader.HeifReader.decodeByteArray(HeifReader.java:149) 
at jp.yohhoy.heifreader.HeifReader.decodeFile(HeifReader.java:180) 
at jp.yohhoy.heifreader.HeifReader.decodeStream(HeifReader.java:243) 
at jp.yohhoy.heifreader.MainActivity$1$1.doInBackground(MainActivity.java:71) 
at jp.yohhoy.heifreader.MainActivity$1$1.doInBackground(MainActivity.java:67) 
at android.os.AsyncTask$2.call(AsyncTask.java:295) 
at java.util.concurrent.FutureTask.run(FutureTask.java:237) 
at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:234) 
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113) 
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588) 
at java.lang.Thread.run(Thread.java:818) 

what 's the problem? who can help ?

Bad Position Issue

i test at Galaxy 6 ( Android 7.0 )
i import the project from your git
i experience this issue

04-09 18:16:51.782 24531-24531/jp.yohhoy.heifreader D/ViewRootImpl@9d02e27[MainActivity]: ViewPostImeInputStage processPointer 0
04-09 18:16:51.786 24531-24531/jp.yohhoy.heifreader W/System: ClassLoader referenced unknown path: /system/framework/QPerformance.jar
04-09 18:16:51.786 24531-24531/jp.yohhoy.heifreader E/BoostFramework: BoostFramework() : Exception_1 = java.lang.ClassNotFoundException: Didn't find class "com.qualcomm.qti.Performance" on path: DexPathList[[],nativeLibraryDirectories=[/system/lib64, /vendor/lib64]]
04-09 18:16:51.786 24531-24531/jp.yohhoy.heifreader V/BoostFramework: BoostFramework() : mPerf = null
04-09 18:16:51.884 24531-24531/jp.yohhoy.heifreader D/ViewRootImpl@9d02e27[MainActivity]: ViewPostImeInputStage processPointer 1
04-09 18:16:51.884 24531-24531/jp.yohhoy.heifreader D/AbsListView: onTouchUp() mTouchMode : 0
04-09 18:16:52.045 24531-24531/jp.yohhoy.heifreader D/ViewRootImpl@aa45488[heic]: ThreadedRenderer.create() translucent=true
04-09 18:16:52.049 24531-24531/jp.yohhoy.heifreader D/InputTransport: Input channel constructed: fd=105
04-09 18:16:52.049 24531-24531/jp.yohhoy.heifreader D/ViewRootImpl@aa45488[heic]: setView = DecorView@2e99e21[heic] touchMode=true
04-09 18:16:52.052 24531-24531/jp.yohhoy.heifreader D/ViewRootImpl@aa45488[heic]: dispatchAttachedToWindow
04-09 18:16:52.060 24531-24612/jp.yohhoy.heifreader D/NetworkSecurityConfig: No Network Security Config specified, using platform default
04-09 18:16:52.070 24531-24612/jp.yohhoy.heifreader I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
04-09 18:16:52.070 24531-24612/jp.yohhoy.heifreader I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
04-09 18:16:52.079 24531-24531/jp.yohhoy.heifreader D/ViewRootImpl@aa45488[heic]: Relayout returned: oldFrame=[0,0][0,0] newFrame=[92,994][1347,1661] result=0x27 surface={isValid=true 490550738432} surfaceGenerationChanged=true
04-09 18:16:52.079 24531-24531/jp.yohhoy.heifreader D/ViewRootImpl@aa45488[heic]: mHardwareRenderer.initialize() mSurface={isValid=true 490550738432} hwInitialized=true
04-09 18:16:52.080 24531-24562/jp.yohhoy.heifreader D/mali_winsys: EGLint new_window_surface(egl_winsys_display*, void*, EGLSurface, EGLConfig, egl_winsys_surface**, egl_color_buffer_format*, EGLBoolean) returns 0x3000,  [1255x667]-format:1
04-09 18:16:52.083 24531-24531/jp.yohhoy.heifreader D/ViewRootImpl@aa45488[heic]: MSG_WINDOW_FOCUS_CHANGED 1
04-09 18:16:52.083 24531-24531/jp.yohhoy.heifreader D/ViewRootImpl@aa45488[heic]: mHardwareRenderer.initializeIfNeeded()#2 mSurface={isValid=true 490550738432}
04-09 18:16:52.099 24531-24531/jp.yohhoy.heifreader D/ViewRootImpl@aa45488[heic]: MSG_RESIZED_REPORT: ci=Rect(0, 0 - 0, 0) vi=Rect(0, 0 - 0, 0) or=1
04-09 18:16:52.107 24531-24531/jp.yohhoy.heifreader D/ViewRootImpl@9d02e27[MainActivity]: MSG_WINDOW_FOCUS_CHANGED 0
04-09 18:16:52.995 24531-24612/jp.yohhoy.heifreader I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
04-09 18:16:52.996 24531-24612/jp.yohhoy.heifreader I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
04-09 18:16:53.755 24531-24612/jp.yohhoy.heifreader I/HeifReader: HEIC caching elapsed=126.06175[msec]
04-09 18:16:53.793 24531-24612/jp.yohhoy.heifreader W/System.err: SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
04-09 18:16:53.793 24531-24612/jp.yohhoy.heifreader W/System.err: SLF4J: Defaulting to no-operation (NOP) logger implementation
04-09 18:16:53.793 24531-24612/jp.yohhoy.heifreader W/System.err: SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
04-09 18:16:53.935 24531-24612/jp.yohhoy.heifreader D/HeifReader: HEIC ftyp=FileTypeBox[majorBrand=mif1;minorVersion=0;compatibleBrand=mif1;compatibleBrand=heic]
04-09 18:16:53.936 24531-24612/jp.yohhoy.heifreader D/HeifReader: HEIC primary item_ID=1002
04-09 18:16:53.936 24531-24612/jp.yohhoy.heifreader I/HeifReader: HEIC image size=1440x960
04-09 18:16:53.936 24531-24612/jp.yohhoy.heifreader D/HeifReader: HEIC HEVC profile=1 level=6.2 bitDepth=8
04-09 18:16:53.938 24531-24612/jp.yohhoy.heifreader D/HeifReader: HEIC bitstream offset=534 length=131974
04-09 18:16:53.952 24531-24612/jp.yohhoy.heifreader E/AndroidRuntime: FATAL EXCEPTION: AsyncTask #1
                                                                      Process: jp.yohhoy.heifreader, PID: 24531
                                                                      java.lang.RuntimeException: An error occurred while executing doInBackground()
                                                                          at android.os.AsyncTask$3.done(AsyncTask.java:318)
                                                                          at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:354)
                                                                          at java.util.concurrent.FutureTask.setException(FutureTask.java:223)
                                                                          at java.util.concurrent.FutureTask.run(FutureTask.java:242)
                                                                          at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:243)
                                                                          at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)
                                                                          at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
                                                                          at java.lang.Thread.run(Thread.java:762)
                                                                       Caused by: java.lang.IllegalArgumentException: Bad position 134381/131974
                                                                          at java.nio.Buffer.position(Buffer.java:249)
                                                                          **at jp.yohhoy.heifreader.HeifReader.extractBitstream(HeifReader.java:352)
                                                                          at jp.yohhoy.heifreader.HeifReader.decodeByteArray(HeifReader.java:142)
                                                                          at jp.yohhoy.heifreader.HeifReader.decodeFile(HeifReader.java:180)
                                                                          at jp.yohhoy.heifreader.HeifReader.decodeStream(HeifReader.java:243)
                                                                          at jp.yohhoy.heifreader.MainActivity$1$1.doInBackground(MainActivity.java:71)
                                                                          at jp.yohhoy.heifreader.MainActivity$1$1.doInBackground(MainActivity.java:67)**
                                                                          at android.os.AsyncTask$2.call(AsyncTask.java:304)
                                                                          at java.util.concurrent.FutureTask.run(FutureTask.java:237)
                                                                          at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:243) 
                                                                          at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133) 
                                                                          at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607) 
                                                                          at java.lang.Thread.run(Thread.java:762) 
04-09 18:16:54.067 24531-24531/jp.yohhoy.heifreader D/ViewRootImpl@aa45488[heic]: MSG_WINDOW_FOCUS_CHANGED 0
04-09 18:16:54.321 24531-24531/jp.yohhoy.heifreader D/ViewRootImpl@9d02e27[MainActivity]: mHardwareRenderer.destroy()#1
04-09 18:16:54.355 24531-24531/jp.yohhoy.heifreader D/ViewRootImpl@9d02e27[MainActivity]: Relayout returned: oldFrame=[0,0][1440,2560] newFrame=[0,0][1440,2560] result=0x5 surface={isValid=false 0} surfaceGenerationChanged=true
04-09 18:16:54.374 24531-24531/jp.yohhoy.heifreader D/ViewRootImpl@aa45488[heic]: mHardwareRenderer.destroy()#1
04-09 18:16:54.396 24531-24531/jp.yohhoy.heifreader D/ViewRootImpl@aa45488[heic]: Relayout returned: oldFrame=[92,994][1347,1661] newFrame=[92,994][1347,1661] result=0x5 surface={isValid=false 0} surfaceGenerationChanged=true
04-09 18:16:54.718 24531-24531/jp.yohhoy.heifreader D/ViewRootImpl@9d02e27[MainActivity]: mHardwareRenderer.destroy()#4
04-09 18:16:54.719 24531-24531/jp.yohhoy.heifreader D/ViewRootImpl@9d02e27[MainActivity]: dispatchDetachedFromWindow
04-09 18:16:54.743 24531-24531/jp.yohhoy.heifreader D/InputTransport: Input channel destroyed: fd=87
04-09 18:16:54.755 24531-24531/jp.yohhoy.heifreader E/WindowManager: android.view.WindowLeaked: Activity jp.yohhoy.heifreader.MainActivity has leaked window DecorView@2e99e21[heic] that was originally added here
                                                                         at android.view.ViewRootImpl.<init>(ViewRootImpl.java:572)
                                                                         at android.view.WindowManagerGlobal.addView(WindowManagerGlobal.java:331)
                                                                         at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:97)
                                                                         at android.app.Dialog.show(Dialog.java:419)
                                                                         at android.app.ProgressDialog.show(ProgressDialog.java:151)
                                                                         at android.app.ProgressDialog.show(ProgressDialog.java:139)
                                                                         **at jp.yohhoy.heifreader.MainActivity$1.onItemClick(MainActivity.java:66)**
                                                                         at android.widget.AdapterView.performItemClick(AdapterView.java:339)
                                                                         at android.widget.AbsListView.performItemClick(AbsListView.java:1705)
                                                                         at android.widget.AbsListView$PerformClick.run(AbsListView.java:4171)
                                                                         at android.widget.AbsListView$13.run(AbsListView.java:6735)
                                                                         at android.os.Handler.handleCallback(Handler.java:751)
                                                                         at android.os.Handler.dispatchMessage(Handler.java:95)
                                                                         at android.os.Looper.loop(Looper.java:154)
                                                                         at android.app.ActivityThread.main(ActivityThread.java:6682)
                                                                         at java.lang.reflect.Method.invoke(Native Method)
                                                                         at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1520)
                                                                         at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1410)
04-09 18:16:54.755 24531-24531/jp.yohhoy.heifreader D/ViewRootImpl@aa45488[heic]: mHardwareRenderer.destroy()#4
04-09 18:16:54.757 24531-24531/jp.yohhoy.heifreader D/ViewRootImpl@aa45488[heic]: dispatchDetachedFromWindow
04-09 18:16:54.782 24531-24531/jp.yohhoy.heifreader D/InputTransport: Input channel destroyed: fd=105

Compile failed on macOS Catalina 10.15 using Android Studio 3.5.3

org.gradle.process.internal.ExecException: A problem occurred starting process 'command '/Users/xxxxxxx/Library/Android/sdk/build-tools/28.0.3/i686-linux-android-ld''
at org.gradle.process.internal.DefaultExecHandle.execExceptionFor(DefaultExecHandle.java:232)
at org.gradle.process.internal.DefaultExecHandle.setEndStateInfo(DefaultExecHandle.java:209)
at org.gradle.process.internal.DefaultExecHandle.failed(DefaultExecHandle.java:356)
at org.gradle.process.internal.ExecHandleRunner.run(ExecHandleRunner.java:86)
at org.gradle.internal.operations.CurrentBuildOperationPreservingRunnable.run(CurrentBuildOperationPreservingRunnable.java:38)
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)
at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)
at java.lang.Thread.run(Thread.java:748)
Caused by: net.rubygrapefruit.platform.NativeException: Could not start '/Users/xxxxxxx/Library/Android/sdk/build-tools/28.0.3/i686-linux-android-ld'
at net.rubygrapefruit.platform.internal.DefaultProcessLauncher.start(DefaultProcessLauncher.java:27)
at net.rubygrapefruit.platform.internal.WrapperProcessLauncher.start(WrapperProcessLauncher.java:36)
at org.gradle.process.internal.ExecHandleRunner.startProcess(ExecHandleRunner.java:97)
at org.gradle.process.internal.ExecHandleRunner.run(ExecHandleRunner.java:70)
... 7 more
Caused by: java.io.IOException: Cannot run program "/Users/xxxxxxx/Library/Android/sdk/build-tools/28.0.3/i686-linux-android-ld" (in directory "/Users/xxxxxxx/Downloads/gitrepo4/heifreader-master 2/app"): error=86, Bad CPU type in executable
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
at net.rubygrapefruit.platform.internal.DefaultProcessLauncher.start(DefaultProcessLauncher.java:25)
... 10 more
Caused by: java.io.IOException: error=86, Bad CPU type in executable
at java.lang.UNIXProcess.forkAndExec(Native Method)
at java.lang.UNIXProcess.(UNIXProcess.java:247)
at java.lang.ProcessImpl.start(ProcessImpl.java:134)
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
... 11 more

Why this issue

2021-01-15 23:08:11.955 27873-27873/ E/HeifReader: decodeByteArray failure
java.io.IOException: HevcConfigurationBox('hvcC') not found
at utils.HeifReader.parseHeif(HeifReader.java:273)

android 7.1 NoSuchMethodError

new AsyncTask<String, Void, Bitmap>() {
@OverRide
protected Bitmap doInBackground(String... strings) {
try {
return HeifReader.decodeFile(strings[0]);
// return HeifReader.decodeStream(new URL(strings[0]).openStream());
} catch (Exception ex) {
Log.e(TAG, "invalid URL", ex);
return null;
}
}
@OverRide
protected void onPostExecute(Bitmap result) {
progress.dismiss();
showImage(result);
}
}.execute("/sdcard/nut/IMG_61072668.heic");

This file exists!!!

Caused by: java.lang.NoSuchMethodError: No virtual method limit(I)Ljava/nio/ByteBuffer; in class Ljava/nio/ByteBuffer; or its super classes (declaration of 'java.nio.ByteBuffer' appears in /system/framework/core-oj.jar)
at org.mp4parser.AbstractBoxParser.parseBox(AbstractBoxParser.java:84)
at org.mp4parser.BasicContainer.initContainer(BasicContainer.java:107)
at org.mp4parser.IsoFile.(IsoFile.java:57)
at org.mp4parser.IsoFile.(IsoFile.java:52)
at jp.yohhoy.heifreader.HeifReader.decodeByteArray(HeifReader.java:139)
at jp.yohhoy.heifreader.HeifReader.decodeFile(HeifReader.java:179)
at jp.yohhoy.heifreader.MainActivity$1$1.doInBackground(MainActivity.java:72)
at jp.yohhoy.heifreader.MainActivity$1$1.doInBackground(MainActivity.java:68)
at android.os.AsyncTask$2.call(AsyncTask.java:305)
at java.util.concurrent.FutureTask.run(FutureTask.java:237)
at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:243) 
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133) 
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607) 
at java.lang.Thread.run(Thread.java:761) 

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.