High-bitrate video can't be scale with scale_rkrga? #213

Closed
opened 2025-12-23 10:36:03 +01:00 by backuprepo · 5 comments
Owner

Originally created by @cnjswwxbtcc on GitHub (Sep 2, 2025).

There is no error, but there is no picture, and the audio is normal.
I don't know how to confirm what the problem is, but there is no problem with the low bitrate video, about(bitrate: 1495593)

My hw filter is like:

scale_rkrga=w=480:h=360:force_original_aspect_ratio=disable:format=rgb24,hwdownload,format=rgb24

The format of Video is like:

# ./ffprobe -v quiet -print_format json -show_format ./SNOW_CAPPED_MOUNTAINS.mp4
mpp[10372]: mpp_platform: client 16 driver is not ready!
mpp[10372]: kmpp_meta: kmpp_meta_init kmpp meta get objdef failed
{
mpp[10372]: mpp_info: mpp version: unknown mpp version for missing VCS info
mpp[10372]: mpp_info: mpp version: unknown mpp version for missing VCS info
    "format": {
        "filename": "./SNOW_CAPPED_MOUNTAINS.mp4",
        "nb_streams": 2,
        "nb_programs": 0,
        "format_name": "mov,mp4,m4a,3gp,3g2,mj2",
        "format_long_name": "QuickTime / MOV",
        "start_time": "0.000000",
        "duration": "7.436944",
        "size": "30156476",
        "bit_rate": "32439642",
        "probe_score": 100,
        "tags": {
            "major_brand": "isom",
            "minor_version": "512",
            "compatible_brands": "isomiso2mp41",
            "creation_time": "2025-05-04T01:30:57.000000Z",
            "RecordSystemTime": "275816223355,275823625983",
            "com.android.manufacturer": "HUAWEI",
            "com.android.marketing_name": "HUAWEI Pura 70",
            "com.android.model": "ADY-AL10",
            "com.android.version": "12",
            "com.huawei.hdr format": "HDR Vivid, Version 1.0, HLG compatible"
        }
    }
}
Originally created by @cnjswwxbtcc on GitHub (Sep 2, 2025). There is no error, but there is no picture, and the audio is normal. I don't know how to confirm what the problem is, but there is no problem with the low bitrate video, about(bitrate: 1495593) ### My hw filter is like: scale_rkrga=w=480:h=360:force_original_aspect_ratio=disable:format=rgb24,hwdownload,format=rgb24 ### The format of Video is like: ```bash # ./ffprobe -v quiet -print_format json -show_format ./SNOW_CAPPED_MOUNTAINS.mp4 mpp[10372]: mpp_platform: client 16 driver is not ready! mpp[10372]: kmpp_meta: kmpp_meta_init kmpp meta get objdef failed { mpp[10372]: mpp_info: mpp version: unknown mpp version for missing VCS info mpp[10372]: mpp_info: mpp version: unknown mpp version for missing VCS info "format": { "filename": "./SNOW_CAPPED_MOUNTAINS.mp4", "nb_streams": 2, "nb_programs": 0, "format_name": "mov,mp4,m4a,3gp,3g2,mj2", "format_long_name": "QuickTime / MOV", "start_time": "0.000000", "duration": "7.436944", "size": "30156476", "bit_rate": "32439642", "probe_score": 100, "tags": { "major_brand": "isom", "minor_version": "512", "compatible_brands": "isomiso2mp41", "creation_time": "2025-05-04T01:30:57.000000Z", "RecordSystemTime": "275816223355,275823625983", "com.android.manufacturer": "HUAWEI", "com.android.marketing_name": "HUAWEI Pura 70", "com.android.model": "ADY-AL10", "com.android.version": "12", "com.huawei.hdr format": "HDR Vivid, Version 1.0, HLG compatible" } } } ```
backuprepo 2025-12-23 10:36:03 +01:00
  • closed this issue
  • added the
    question
    label
Author
Owner

@nyanmisaka commented on GitHub (Sep 2, 2025):

Video filters have nothing to do with video bitrate. The input and output resolutions supported by RGA hardware can be found in the RGA documentation.

https://github.com/airockchip/librga/blob/main/docs/Rockchip_Developer_Guide_RGA_EN.md#design-index

@nyanmisaka commented on GitHub (Sep 2, 2025): Video filters have nothing to do with video bitrate. The input and output resolutions supported by RGA hardware can be found in the RGA documentation. https://github.com/airockchip/librga/blob/main/docs/Rockchip_Developer_Guide_RGA_EN.md#design-index
Author
Owner

@cnjswwxbtcc commented on GitHub (Sep 2, 2025):

Video filters have nothing to do with video bitrate. The input and output resolutions supported by RGA hardware can be found in the RGA documentation.

https://github.com/airockchip/librga/blob/main/docs/Rockchip_Developer_Guide_RGA_EN.md#design-index

当这个视频没有顺利转换成RGB数据的时候, 我该怎么去定位呢?
这中间有多少步骤, 我查了些资料, 但是没有看明白这个bitrate和生成图像有什么关系

@cnjswwxbtcc commented on GitHub (Sep 2, 2025): > Video filters have nothing to do with video bitrate. The input and output resolutions supported by RGA hardware can be found in the RGA documentation. > > https://github.com/airockchip/librga/blob/main/docs/Rockchip_Developer_Guide_RGA_EN.md#design-index 当这个视频没有顺利转换成RGB数据的时候, 我该怎么去定位呢? 这中间有多少步骤, 我查了些资料, 但是没有看明白这个bitrate和生成图像有什么关系
Author
Owner

@nyanmisaka commented on GitHub (Sep 2, 2025):

There is simply no relationship between them. Video filters process raw video frames, which are YUV or RGA data, and their size is determined by the video resolution rather than the bit rate.

@nyanmisaka commented on GitHub (Sep 2, 2025): There is simply no relationship between them. Video filters process raw video frames, which are YUV or RGA data, and their size is determined by the video resolution rather than the bit rate.
Author
Owner

@cnjswwxbtcc commented on GitHub (Sep 3, 2025):

There is simply no relationship between them. Video filters process raw video frames, which are YUV or RGA data, and their size is determined by the video resolution rather than the bit rate.

好的, 我可能得把方向放在pix_fmt;
还有个疑问, 我现在构造滤镜链的时候, 组成的字符串:
video_size=1920x1080:pix_fmt=179:time_base=1/1:pixel_aspect=1/1
pix_fmt是填枚举值, 还是说要写pix_fmt的name的字符串?

@cnjswwxbtcc commented on GitHub (Sep 3, 2025): > There is simply no relationship between them. Video filters process raw video frames, which are YUV or RGA data, and their size is determined by the video resolution rather than the bit rate. 好的, 我可能得把方向放在pix_fmt; 还有个疑问, 我现在构造滤镜链的时候, 组成的字符串: `video_size=1920x1080:pix_fmt=179:time_base=1/1:pixel_aspect=1/1` pix_fmt是填枚举值, 还是说要写pix_fmt的name的字符串?
Author
Owner

@cnjswwxbtcc commented on GitHub (Sep 3, 2025):

There is simply no relationship between them. Video filters process raw video frames, which are YUV or RGA data, and their size is determined by the video resolution rather than the bit rate.

我发现个问题, 是HEVC都解不了..., 是我编译有问题?

# ./ffmpeg -stream_loop -1 -hwaccel rkmpp -hwaccel_output_format drm_prime -vcodec hevc_rkmpp -i Test\ Jellyfin\ 1080p\ HEVC\ 10bit\ 3M.mp4  -an -sn -vframes 5000 -f null -
mpp[16650]: mpp_platform: client 16 driver is not ready!
mpp[16650]: kmpp_meta: kmpp_meta_init kmpp meta get objdef failed
ffmpeg version 6.1 Copyright (c) 2000-2023 the FFmpeg developers
  built with gcc 10.3.1 (GNU Toolchain for the A-profile Architecture 10.3-2021.07 (arm-10.29)
  configuration: --enable-cross-compile --cross-prefix=/home/cc/workspace/buildroot/rkbuildroot/output/xinje_ts7_1000/host/bin/aarch64-none-linux-gnu- --sysroot=/home/cc/workspace/buildroot/rkbuildroot/output/xinje_ts7_1000/host/aarch64-buildroot-linux-gnu/sysroot --host-cc='/home/cc/workspace/buildroot/rkbuildroot/output/xinje_ts7_1000/host/bin/ccache /usr/bin/gcc' --arch=aarch64 --target-os=linux --disable-stripping --pkg-config=/home/cc/workspace/buildroot/rkbuildroot/output/xinje_ts7_1000/host/bin/pkg-config --disable-static --enable-shared --prefix=host --extra-cflags=-fPIC --enable-logging --enable-optimizations --disable-extra-warnings --enable-avdevice --enable-avcodec --enable-avformat --enable-network --disable-gray --enable-swscale-alpha --disable-small --disable-crystalhd --disable-dxva2 --enable-runtime-cpudetect --disable-hardcoded-tables --disable-mipsdsp --disable-mipsdspr2 --disable-msa --enable-hwaccels --disable-cuda --disable-cuvid --disable-nvenc --disable-decoder=vp9 --disable-avisynth --disable-frei0r --disable-libopencore-amrnb --disable-libopencore-amrwb --disable-libdc1394 --disable-libgsm --disable-libilbc --disable-libvo-amrwbenc --enable-static --disable-symver --enable-nonfree --enable-version3 --enable-rkmpp --enable-rkrga --disable-doc --enable-libfdk-aac --shlibdir=host/dynamic --disable-gpl --enable-nonfree --enable-ffmpeg --enable-ffplay --disable-libv4l2 --enable-ffprobe --disable-libxcb --disable-postproc --enable-swscale --disable-encoders --enable-encoder=rawvideo --enable-encoder=wrapped_avframe --enable-encoder=anull --enable-encoder=vnull --enable-encoder=h264_rkmpp --enable-encoder=hevc_rkmpp --enable-encoder=mjpeg_rkmpp --enable-encoder=pcm_s16le --enable-encoder=pcm_s24le --enable-encoder=pcm_s32le --disable-decoders --enable-decoder=anll --enable-decoder=vnull --enable-decoder=wrapped_avframe --enable-decoder=h263_rkmpp --enable-decoder=h264_rkmpp --enable-decoder=hevc_rkmpp --enable-decoder=av1_rkmpp --enable-decoder=mpeg1_rkmpp --enable-decoder=mpeg2_rkmpp --enable-decoder=mpeg4_rkmpp --enable-decoder=vp8_rkmpp --enable-decoder=vp9_rkmpp --enable-decoder=mp1 --enable-decoder=mp1float --enable-decoder=mp2 --enable-decoder=mp2float --enable-decoder=mp3 --enable-decoder=mp3adu --enable-decoder=mp3float --enable-decoder=mp3adufloat --enable-decoder=mp3on4 --enable-decoder=mp3on4float --enable-decoder=aac --enable-decoder=ac3 --enable-decoder=flac --enable-decoder=vorbis --enable-decoder=opus --enable-decoder=pcm_s16le --enable-decoder=pcm_s32le --enable-decoder=pcm_f32le --enable-decoder=pcm_f64le --enable-decoder=wmav1 --enable-decoder=wmav2 --disable-muxers --enable-muxer=null --enable-muxer=rawvideo --disable-demuxers --enable-demuxer=h263 --enable-demuxer=h264 --enable-demuxer=hevc --enable-demuxer=av1 --enable-demuxer=mpegvideo --enable-demuxer=ivf --enable-demuxer=webm_dash_mainfest --enable-demuxer=mov --enable-demuxer=mp3 --enable-demuxer=avi --enable-demuxer=aac --enable-demuxer=flac --enable-demuxer=flv --enable-demuxer=wav --enable-demuxer=rtsp --enable-demuxer=rtp --enable-demuxer=sdp --disable-parsers --enable-parser=h263 --enable-parser=h264 --enable-parser=hevc --enable-parser=av1 --enable-parser=mpegaudio --enable-parser=mpegvideo --enable-parser=mpeg4video --enable-parser=vp8 --enable-parser=vp9 --enable-parser=aac --enable-parser=aac_latm --enable-parser=flac --enable-parser=ac3 --enable-parser=flac --disable-bsfs --disable-filters --enable-filter=testsrc2 --enable-filter=aresample --enable-filter=scale_rkrga --enable-filter=overlay_rkrga --enable-filter=vpp_rkrga --enable-filter=hwupload --enable-filter=hwdownload --enable-filter=hwmap --enable-indevs --enable-alsa --enable-outdevs --enable-pthreads --enable-zlib --disable-bzlib --disable-libfdk-aac --disable-libcdio --disable-gnutls --enable-openssl --enable-libdrm --disable-libopenh264 --disable-vaapi --disable-vdpau --disable-mmal --disable-omx --disable-omx-rpi --disable-libopencv --enable-libopus --enable-libvpx --disable-libass --disable-libbluray --disable-libmfx --disable-librtmp --disable-libmp3lame --disable-libmodplug --disable-libspeex --disable-libtheora --disable-iconv --enable-libfreetype --enable-fontconfig --enable-libopenjpeg --disable-libx264 --disable-libx265 --disable-libdav1d --disable-x86asm --disable-mmx --disable-sse --disable-sse2 --disable-sse3 --disable-ssse3 --disable-sse4 --disable-sse42 --disable-avx --disable-avx2 --disable-armv6 --disable-armv6t2 --enable-vfp --enable-neon --disable-altivec --extra-libs=-latomic --enable-pic --cpu=cortex-a53
  libavutil      58. 29.100 / 58. 29.100
  libavcodec     60. 31.102 / 60. 31.102
  libavformat    60. 16.100 / 60. 16.100
  libavdevice    60.  3.100 / 60.  3.100
  libavfilter     9. 12.100 /  9. 12.100
  libswscale      7.  5.100 /  7.  5.100
  libswresample   4. 12.100 /  4. 12.100
mpp[16650]: mpp_info: mpp version: unknown mpp version for missing VCS info
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'Test Jellyfin 1080p HEVC 10bit 3M.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2mp41
    encoder         : Lavf61.1.100
  Duration: 00:00:29.95, start: 0.000000, bitrate: 3020 kb/s
  Stream #0:0[0x1](und): Video: hevc (hvc1 / 0x31637668), drm_prime(progressive), 1920x1080, 3018 kb/s, SAR 1:1 DAR 16:9, 60 fps, 60 tbr, 15360 tbn (default)
    Metadata:
      handler_name    : VideoHandler
      vendor_id       : [0][0][0][0]
      encoder         : Lavc61.3.100 hevc_videotoolbox
mpp[16650]: mpp_info: mpp version: unknown mpp version for missing VCS info
Stream mapping:
  Stream #0:0 -> #0:0 (hevc (hevc_rkmpp) -> wrapped_avframe (native))
Press [q] to stop, [?] for help
key    function
?      show this help
+      increase verbosity
-      decrease verbosity
c      Send command to first matching filter supporting it
C      Send/Queue command to all matching filters
h      dump packets/hex press to cycle through the 3 states
q      quit
s      Show QP histogram


[q] command received. Exiting.

[out#0/null @ 0x55896919e0] Nothing was written into output file, because at least one of its streams received no packets.
frame=    0 fps=0.0 q=0.0 Lsize=       0kB time=N/A bitrate=N/A speed=N/A
Conversion failed!
@cnjswwxbtcc commented on GitHub (Sep 3, 2025): > There is simply no relationship between them. Video filters process raw video frames, which are YUV or RGA data, and their size is determined by the video resolution rather than the bit rate. 我发现个问题, 是HEVC都解不了..., 是我编译有问题? ```bash # ./ffmpeg -stream_loop -1 -hwaccel rkmpp -hwaccel_output_format drm_prime -vcodec hevc_rkmpp -i Test\ Jellyfin\ 1080p\ HEVC\ 10bit\ 3M.mp4 -an -sn -vframes 5000 -f null - mpp[16650]: mpp_platform: client 16 driver is not ready! mpp[16650]: kmpp_meta: kmpp_meta_init kmpp meta get objdef failed ffmpeg version 6.1 Copyright (c) 2000-2023 the FFmpeg developers built with gcc 10.3.1 (GNU Toolchain for the A-profile Architecture 10.3-2021.07 (arm-10.29) configuration: --enable-cross-compile --cross-prefix=/home/cc/workspace/buildroot/rkbuildroot/output/xinje_ts7_1000/host/bin/aarch64-none-linux-gnu- --sysroot=/home/cc/workspace/buildroot/rkbuildroot/output/xinje_ts7_1000/host/aarch64-buildroot-linux-gnu/sysroot --host-cc='/home/cc/workspace/buildroot/rkbuildroot/output/xinje_ts7_1000/host/bin/ccache /usr/bin/gcc' --arch=aarch64 --target-os=linux --disable-stripping --pkg-config=/home/cc/workspace/buildroot/rkbuildroot/output/xinje_ts7_1000/host/bin/pkg-config --disable-static --enable-shared --prefix=host --extra-cflags=-fPIC --enable-logging --enable-optimizations --disable-extra-warnings --enable-avdevice --enable-avcodec --enable-avformat --enable-network --disable-gray --enable-swscale-alpha --disable-small --disable-crystalhd --disable-dxva2 --enable-runtime-cpudetect --disable-hardcoded-tables --disable-mipsdsp --disable-mipsdspr2 --disable-msa --enable-hwaccels --disable-cuda --disable-cuvid --disable-nvenc --disable-decoder=vp9 --disable-avisynth --disable-frei0r --disable-libopencore-amrnb --disable-libopencore-amrwb --disable-libdc1394 --disable-libgsm --disable-libilbc --disable-libvo-amrwbenc --enable-static --disable-symver --enable-nonfree --enable-version3 --enable-rkmpp --enable-rkrga --disable-doc --enable-libfdk-aac --shlibdir=host/dynamic --disable-gpl --enable-nonfree --enable-ffmpeg --enable-ffplay --disable-libv4l2 --enable-ffprobe --disable-libxcb --disable-postproc --enable-swscale --disable-encoders --enable-encoder=rawvideo --enable-encoder=wrapped_avframe --enable-encoder=anull --enable-encoder=vnull --enable-encoder=h264_rkmpp --enable-encoder=hevc_rkmpp --enable-encoder=mjpeg_rkmpp --enable-encoder=pcm_s16le --enable-encoder=pcm_s24le --enable-encoder=pcm_s32le --disable-decoders --enable-decoder=anll --enable-decoder=vnull --enable-decoder=wrapped_avframe --enable-decoder=h263_rkmpp --enable-decoder=h264_rkmpp --enable-decoder=hevc_rkmpp --enable-decoder=av1_rkmpp --enable-decoder=mpeg1_rkmpp --enable-decoder=mpeg2_rkmpp --enable-decoder=mpeg4_rkmpp --enable-decoder=vp8_rkmpp --enable-decoder=vp9_rkmpp --enable-decoder=mp1 --enable-decoder=mp1float --enable-decoder=mp2 --enable-decoder=mp2float --enable-decoder=mp3 --enable-decoder=mp3adu --enable-decoder=mp3float --enable-decoder=mp3adufloat --enable-decoder=mp3on4 --enable-decoder=mp3on4float --enable-decoder=aac --enable-decoder=ac3 --enable-decoder=flac --enable-decoder=vorbis --enable-decoder=opus --enable-decoder=pcm_s16le --enable-decoder=pcm_s32le --enable-decoder=pcm_f32le --enable-decoder=pcm_f64le --enable-decoder=wmav1 --enable-decoder=wmav2 --disable-muxers --enable-muxer=null --enable-muxer=rawvideo --disable-demuxers --enable-demuxer=h263 --enable-demuxer=h264 --enable-demuxer=hevc --enable-demuxer=av1 --enable-demuxer=mpegvideo --enable-demuxer=ivf --enable-demuxer=webm_dash_mainfest --enable-demuxer=mov --enable-demuxer=mp3 --enable-demuxer=avi --enable-demuxer=aac --enable-demuxer=flac --enable-demuxer=flv --enable-demuxer=wav --enable-demuxer=rtsp --enable-demuxer=rtp --enable-demuxer=sdp --disable-parsers --enable-parser=h263 --enable-parser=h264 --enable-parser=hevc --enable-parser=av1 --enable-parser=mpegaudio --enable-parser=mpegvideo --enable-parser=mpeg4video --enable-parser=vp8 --enable-parser=vp9 --enable-parser=aac --enable-parser=aac_latm --enable-parser=flac --enable-parser=ac3 --enable-parser=flac --disable-bsfs --disable-filters --enable-filter=testsrc2 --enable-filter=aresample --enable-filter=scale_rkrga --enable-filter=overlay_rkrga --enable-filter=vpp_rkrga --enable-filter=hwupload --enable-filter=hwdownload --enable-filter=hwmap --enable-indevs --enable-alsa --enable-outdevs --enable-pthreads --enable-zlib --disable-bzlib --disable-libfdk-aac --disable-libcdio --disable-gnutls --enable-openssl --enable-libdrm --disable-libopenh264 --disable-vaapi --disable-vdpau --disable-mmal --disable-omx --disable-omx-rpi --disable-libopencv --enable-libopus --enable-libvpx --disable-libass --disable-libbluray --disable-libmfx --disable-librtmp --disable-libmp3lame --disable-libmodplug --disable-libspeex --disable-libtheora --disable-iconv --enable-libfreetype --enable-fontconfig --enable-libopenjpeg --disable-libx264 --disable-libx265 --disable-libdav1d --disable-x86asm --disable-mmx --disable-sse --disable-sse2 --disable-sse3 --disable-ssse3 --disable-sse4 --disable-sse42 --disable-avx --disable-avx2 --disable-armv6 --disable-armv6t2 --enable-vfp --enable-neon --disable-altivec --extra-libs=-latomic --enable-pic --cpu=cortex-a53 libavutil 58. 29.100 / 58. 29.100 libavcodec 60. 31.102 / 60. 31.102 libavformat 60. 16.100 / 60. 16.100 libavdevice 60. 3.100 / 60. 3.100 libavfilter 9. 12.100 / 9. 12.100 libswscale 7. 5.100 / 7. 5.100 libswresample 4. 12.100 / 4. 12.100 mpp[16650]: mpp_info: mpp version: unknown mpp version for missing VCS info Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'Test Jellyfin 1080p HEVC 10bit 3M.mp4': Metadata: major_brand : isom minor_version : 512 compatible_brands: isomiso2mp41 encoder : Lavf61.1.100 Duration: 00:00:29.95, start: 0.000000, bitrate: 3020 kb/s Stream #0:0[0x1](und): Video: hevc (hvc1 / 0x31637668), drm_prime(progressive), 1920x1080, 3018 kb/s, SAR 1:1 DAR 16:9, 60 fps, 60 tbr, 15360 tbn (default) Metadata: handler_name : VideoHandler vendor_id : [0][0][0][0] encoder : Lavc61.3.100 hevc_videotoolbox mpp[16650]: mpp_info: mpp version: unknown mpp version for missing VCS info Stream mapping: Stream #0:0 -> #0:0 (hevc (hevc_rkmpp) -> wrapped_avframe (native)) Press [q] to stop, [?] for help key function ? show this help + increase verbosity - decrease verbosity c Send command to first matching filter supporting it C Send/Queue command to all matching filters h dump packets/hex press to cycle through the 3 states q quit s Show QP histogram [q] command received. Exiting. [out#0/null @ 0x55896919e0] Nothing was written into output file, because at least one of its streams received no packets. frame= 0 fps=0.0 q=0.0 Lsize= 0kB time=N/A bitrate=N/A speed=N/A Conversion failed! ```
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: starred/ffmpeg-rockchip#213
No description provided.