Hi,
I am working on AM5728 based on the am57xx-evm design.
I cannot get IVAHD hardware H264 decoding working on kernel 5.10.168.
Here is output:
gst-launch-1.0 playbin uri=file:///usr/share/ti/video/TearOfSteel-Short-1920x80 0.mov 'audio-sink=alsasink device=hw:0,0' 'video-sink=kmssink scale=true' Setting pipeline to PAUSED ... Pipeline is PREROLLING ... Missing element: MPEG-4 AAC decoder WARNING: from element /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0: No decoder available for type 'audio/mpeg, mpegversion=(int)4, framed=(boolean)true, stream-format=(string)raw, level=(string)2, base- profile=(string)lc, profile=(string)lc, codec_data=(buffer)1210, rate=(int)44100, channels=(int)2'. Additional debug info: ../gst-plugins-base-1.16.3/gst/playback/gsturidecodebin.c(920): unknown_type_cb (): /GstPlayBin:playbin0 /GstURIDecodeBin:uridecodebin0 MmRpc_create: Error: open failed, name=/dev/rpmsg-dce ../git/libdce.c:416: dce_ipc_init ERROR: Failed eError == DCE_EOK error val -4../git/libdce.c:47E: ngine_open ERROR: Failed dce_ipc_init(coreIdx) == DCE_EOK error val -4MmRpc_create: Error: open fai led, name=/dev/rpmsg-dce ../git/libdce.c:416: dce_ipc_init ERROR: Failed eError == DCE_EOK error val -4../git/libdce.c:47E: ngine_open ERROR: Failed dce_ipc_init(coreIdx) == DCE_EOK error val -4Missing element: H.264 (High Profile) decoder WARNING: from element /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0: No decoder available for type 'video/x-h264, stream-format=(string)byte-stream, alignment=(string)au, level=(string)4, profile=(string )high, width=(int)1920, height=(int)800, framerate=(fraction)24/1, pixel-aspect-ratio=(fraction)1/1, int erlace-mode=(string)progressive, chroma-format=(string)4:2:0, bit-depth-luma=(uint)8, bit-depth-chroma=( uint)8, parsed=(boolean)true'. Additional debug info: ../gst-plugins-base-1.16.3/gst/playback/gsturidecodebin.c(920): unknown_type_cb (): /GstPlayBin:playbin0 /GstURIDecodeBin:uridecodebin0 ERROR: from element /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0: Your GStreamer installation is m issing a plug-in. Additional debug info: ../gst-plugins-base-1.16.3/gst/playback/gsturidecodebin.c(987): no_more_pads_full (): /GstPlayBin:playbi n0/GstURIDecodeBin:uridecodebin0: no suitable plugins found: ../gst-plugins-base-1.16.3/gst/playback/gstdecodebin2.c(4678): gst_decode_bin_expose (): /GstPlayBin:pla ybin0/GstURIDecodeBin:uridecodebin0/GstDecodeBin:decodebin0: no suitable plugins found: Couldn't set ducatih264decvpe0 to READYCouldn't set ducatih264dec0 to READY Missing decoder: MPEG-4 AAC (audio/mpeg, mpegversion=(int)4, framed=(boolean)true, stream-format=(string )raw, level=(string)2, base-profile=(string)lc, profile=(string)lc, codec_data=(buffer)1210, rate=(int)4 4100, channels=(int)2) ERROR: pipeline doesn't want to preroll. Setting pipeline to NULL ... Freeing pipeline ...
It seems I am missing /dev/rpmsg-dce ?
However IPU2 firmware is loaded:
cat /sys/kernel/debug/remoteproc/remoteproc1/trace0 [0][ 0.000] 17 Resource entries at 0x3000 [0][ 0.000] Watchdog enabled: TimerBase = 0x6803e000 SMP-Core = 0 Freq = 20000000 [0][ 0.000] Watchdog enabled: TimerBase = 0x68036000 SMP-Core = 1 Freq = 20000000 [0][ 0.000] Watchdog_restore registered as a resume callback [0][ 0.000] IPU2 starting.. [0][ 0.000] [0][ 0.000] [0][ 0.000] **** IPUMM VERSION INFO **** [0][ 0.000] [0][ 0.000] Compile DATE Sep 6 2023 TIME 07:15:46 [0][ 0.000] GIT IPUMM [0][ 0.000] BRANCH : master [0][ 0.000] TAG : IPUMM commit df4c50a version MMIP 3_00_15_00 IPC 3_50_01_00 [0][ 0.000] COMMIT-ID : df4c50a [0][ 0.000] CODEC-VER BEGIN: [0][ 0.000] H264D-02.00.22.01 [0][ 0.000] MPEG4D-01.00.17.01 [0][ 0.000] MPEG2D-01.00.18.01 [0][ 0.000] VC1D-01.00.02.08 [0][ 0.000] MJPEGD-01.00.16.01 [0][ 0.000] [0][ 0.000] H264E-02.00.09.01 [0][ 0.000] MPEG4E-01.00.02.01 [0][ 0.000] MJPEGE-01.00.17.01 [0][ 0.000] CODEC-VER END: [0][ 0.000] [0][ 0.000] ** IPUMM VERSION INFO END ** [0][ 0.000] Trace level PA 0x95f53320 Trace Level 0 [0][ 0.000] Trace Usage: level:[0-4: 0-no trace, 1-err, 2-debug, 3-info, 4-CE,FC,IPC traces] [0][ 0.000] [0][ 0.000] Trace Buffer PA 0x98a00000 kpi_control (PA 0x95f4f7b4 value 0x0) [1][ 0.000] OMAPRPC: registered channel: dce-callback [1][ 0.000] OMAPRPC: Returning Object @80209388 [1][ 0.000] loadTask: started [1][ 0.000] SLEEP_TICKS: 1000 [1][ 0.000] Load_hwiEnabled: 0 [1][ 0.000] Load_swiEnabled: 0 [1][ 0.000] Load_taskEnabled: 1 [1][ 0.000] Load_updateInIdle: 1 [1][ 0.000] Load_windowInMs: 11 [1][ 0.001] OMAPRPC: connecting from local endpoint 101 to port 101 [1][ 0.001] registering rpmsg-rpc:dce-callback service on 101 with HOST [1][ 0.001] OMAPRPC: started channel dce-callback on port: 101 [0][ 0.001] OMAPRPC: registered channel: rpmsg-dce [0][ 0.001] OMAPRPC: Returning Object @8020c440 [1][ 0.001] OMAPRPC: connecting from local endpoint 102 to port 102 [1][ 0.002] registering rpmsg-rpc:rpmsg-dce service on 102 with HOST [1][ 0.002] OMAPRPC: started channel rpmsg-dce on port: 102
What am I missing?
BR,
Primoz