Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-119231

Android: Codec failure message running declarative-camera example

    XMLWordPrintable

Details

    • Android
    • 2024wk06FOQtforAndroid, 2024wk08FOQtforAndroid, 2024wk12FOQtforAndroid, 2024wk14FOQtforAndroid, 2024wk16FOQtforAndroid

    Description

      I ran the unmodified declarative-camera example on an Moto g power (2021) Android 13 (API 33) phone; the codec reported errors. To reproduce this, I ran the application, tapped "
      Switch to Video", then tapped "Record"; the application crashed immediately after that tap, probably due to QTBUG-116526. However, this bug focuses on these reported codec failures:

      W OMXUtils: do not know color format 0x7fa30c04 = 2141391876
      W OMXUtils: do not know color format 0x7fa30c00 = 2141391872
      W OMXUtils: do not know color format 0x7f000789 = 2130708361
      I ACodec  : width height(1920x1088) stride(1920) sliceHeight(1088)
      E ACodec  : [OMX.qcom.video.encoder.hevc] failed to set input port definition parameters.
      E ExtendedACodec: [OMX.qcom.video.encoder.hevc] configureCodec returning error -12
      E ACodec  : signalError(omxError 0x80001001, internalError -12)
      E ACodec  : [OMX.qcom.video.encoder.hevc] configureCodec returning error -12
      E ACodec  : signalError(omxError 0x80001001, internalError -12)
      E MediaCodec: Codec reported err 0xfffffff4, actionCode 0, while in state 3
      D MediaCodec: flushMediametrics
      E MediaCodec: Codec reported err 0xfffffff4, actionCode 0, while in state 0

       

      The full trace from the Application Output of the hosting Qt Creator:

      I libc    : SetHeapTaggingLevel: tag level set to 0
      I larative_camer: Late-enabling -Xcheck:jni
      I larative_camer: Unquickening 19 vdex files!
      D NetworkSecurityConfig: No Network Security Config specified, using platform default
      D NetworkSecurityConfig: No Network Security Config specified, using platform default
      W System  : ClassLoader referenced unknown path:
      D Qt JAVA : Class org.qtproject.qt.android.multimedia.QtAudioDeviceManager does not implement setActivity method
      W linker  : Warning: "/data/app/~~DSZEBDMu_of3VyVjIZB7Xg==/org.qtproject.example.declarative_camera-iyWmX2vQFPi886Pxbmm-Bw==/lib/arm64/libc++_shared.so" unused DT entry: unknown processor-specific (type 0x70000001 arg 0x0) (ignoring)
      I QtCore  : Start
      I Qt      : qt started
      I AdrenoGLES-0: QUALCOMM build                   : 704ecd9a2b, Ib3f3e69395
      I AdrenoGLES-0: Build Date                       : 12/29/20
      I AdrenoGLES-0: OpenGL ES Shader Compiler Version: EV031.32.02.06
      I AdrenoGLES-0: Local Branch                     :
      I AdrenoGLES-0: Remote Branch                    :
      I AdrenoGLES-0: Remote Branch                    :
      I AdrenoGLES-0: Reconstruct Branch               :
      I AdrenoGLES-0: Build Config                     : S P 10.0.7 AArch64
      I AdrenoGLES-0: Driver Path                      : /vendor/lib64/egl/libGLESv2_adreno.so
      I AdrenoGLES-0: PFP: 0x016ee190, ME: 0x00000000
      I CameraManagerGlobal: Connecting to camera service
      D qml     : : State: MobilePortrait
      D qml     : : State: MobilePortrait
      W qt.multimedia.ffmpeg.androidCamera: : Failed to parse frame.. dropping frame
      W qt.qml.context: : qrc:/PhotoCaptureControls.qml:120:9 Parameter "target" is not declared. Injection of parameters into signal handlers is deprecated. Use JavaScript functions with formal parameters instead.
      I MediaCodec: (0x77c9421a00) init name(OMX.qcom.video.encoder.hevc)
      I OMXClient: IOmx service obtained
      I MediaCodec: (0x77c9421a00) Component Allocated (OMX.qcom.video.encoder.hevc)
      I MediaCodec: (0x77c9421a00) configure surface(0x0) crypto(0x0) flags(1)
      D MediaCodec: (0x77c9421a00) configure format: AMessage(what = 0x00000000) = {
      D MediaCodec:       int32_t color-format = 21
      D MediaCodec:       int32_t i-frame-interval = 1
      D MediaCodec:       int32_t level = 8192
      D MediaCodec:       string mime = "video/hevc"
      D MediaCodec:       int32_t profile = 1
      D MediaCodec:       int32_t width = 1920
      D MediaCodec:       int32_t bitrate-mode = 2
      D MediaCodec:       int32_t bitrate = -1
      D MediaCodec:       int32_t frame-rate = 60
      D MediaCodec:       int32_t height = 1088

      {\{D MediaCodec:     }

      }}
      D MediaCodec: flushMediametrics
      I ExtendedACodec: setupVideoEncoder()
      I ACodec  : [OMX.qcom.video.encoder.hevc] setupVideoEncoder mime(video/hevc) colorFormat(15)
      W OMXUtils: do not know color format 0x7fa30c04 = 2141391876
      W OMXUtils: do not know color format 0x7fa30c00 = 2141391872
      W OMXUtils: do not know color format 0x7f000789 = 2130708361
      I ACodec  : width height(1920x1088) stride(1920) sliceHeight(1088)
      E ACodec  : [OMX.qcom.video.encoder.hevc] failed to set input port definition parameters.
      E ExtendedACodec: [OMX.qcom.video.encoder.hevc] configureCodec returning error -12
      E ACodec  : signalError(omxError 0x80001001, internalError -12)
      E ACodec  : [OMX.qcom.video.encoder.hevc] configureCodec returning error -12
      E ACodec  : signalError(omxError 0x80001001, internalError -12)
      E MediaCodec: Codec reported err 0xfffffff4, actionCode 0, while in state 3
      D MediaCodec: flushMediametrics
      E MediaCodec: Codec reported err 0xfffffff4, actionCode 0, while in state 0
      E MediaCodec: configure failed with err 0xfffffff4, resetting...
      W ImageReader_JNI: Unable to acquire a buffer item, very likely client tried to acquire more than maxImages buffers
      E AndroidRuntime: FATAL EXCEPTION: CameraBackground
      E AndroidRuntime: Process: org.qtproject.example.declarative_camera, PID: 5536
      E AndroidRuntime: java.lang.IllegalStateException: maxImages (10) has already been acquired, call #close before acquiring more.
      E AndroidRuntime:     at android.media.ImageReader.acquireNextImage(ImageReader.java:527)
      E AndroidRuntime:     at android.media.ImageReader.acquireLatestImage(ImageReader.java:411)
      E AndroidRuntime:     at org.qtproject.qt.android.multimedia.QtCamera2$5.onImageAvailable(QtCamera2.java:236)
      E AndroidRuntime:     at android.media.ImageReader$ListenerHandler.handleMessage(ImageReader.java:812)
      E AndroidRuntime:     at android.os.Handler.dispatchMessage(Handler.java:106)
      E AndroidRuntime:     at android.os.Looper.loop(Looper.java:250)
      E AndroidRuntime:     at android.os.HandlerThread.run(HandlerThread.java:67)
      W ImageReader_JNI: Unable to acquire a buffer item, very likely client tried to acquire more than maxImages buffers
      I Process : Sending signal. PID: 5536 SIG: 9
      09:37:24: "org.qtproject.example.declarative_camera" died.

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            bartlomiejmoskal Bartlomiej Moskal
            bjones Bryan Jones
            Votes:
            1 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:

              Gerrit Reviews

                There are no open Gerrit changes