#9280: meson-vdec: poor playback of h264
-------------------------------------+-------------------------------------
             Reporter:  danboid      |                    Owner:  (none)
                 Type:  defect       |                   Status:  new
             Priority:  normal       |                Component:
                                     |  undetermined
              Version:  unspecified  |               Resolution:
             Keywords:  v4l2m2m      |               Blocked By:
             Blocking:               |  Reproduced by developer:  0
Analyzed by developer:  0            |
-------------------------------------+-------------------------------------
Comment (by danboid):

 Thanks balling

 I have got a bit closer to playing to the test file with ffmpeg using the
 sdl2 demuxer but it says

 "Unsupported pixel format 'nv12'"

 {{{
 $ ffmpeg -c:v h264_v4l2m2m -i VID_20210512_180639.mp4 -f sdl2 -
 ffmpeg version N-102655-g282b9f4cba Copyright (c) 2000-2021 the FFmpeg
 developers
   built with gcc 10.2.0 (GCC)
   configuration: --prefix=/usr --disable-debug --disable-static --disable-
 stripping --enable-amf --enable-avisynth --enable-cuda-llvm --enable-lto
 --enable-fontconfig --enable-gmp --enable-gnutls --enable-gpl --enable-
 ladspa --enable-libaom --enable-libass --enable-libbluray --enable-
 libdav1d --enable-libdrm --enable-libfreetype --enable-libfribidi
 --enable-libgsm --enable-libiec61883 --enable-libjack --enable-libmodplug
 --enable-libmp3lame --enable-libopencore_amrnb --enable-libopencore_amrwb
 --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-librav1e
 --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libssh
 --enable-libtheora --enable-libv4l2 --enable-libvidstab --enable-libvorbis
 --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265
 --enable-libxcb --enable-libxml2 --enable-libxvid --enable-libzimg
 --enable-nvdec --enable-nvenc --enable-shared --enable-version3
   libavutil      57.  0.100 / 57.  0.100
   libavcodec     59.  1.101 / 59.  1.101
   libavformat    59.  2.101 / 59.  2.101
   libavdevice    59.  0.100 / 59.  0.100
   libavfilter     8.  0.101 /  8.  0.101
   libswscale      6.  0.100 /  6.  0.100
   libswresample   4.  0.100 /  4.  0.100
   libpostproc    56.  0.100 / 56.  0.100
 Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'VID_20210512_180639.mp4':
   Metadata:
     major_brand     : mp42
     minor_version   : 0
     compatible_brands: isommp42
     creation_time   : 2021-05-12T17:07:00.000000Z
     com.android.version: 10
   Duration: 00:00:20.03, start: 0.000000, bitrate: 43964 kb/s
   Stream #0:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv,
 unknown/bt470bg/unknown), 3840x2160, 43449 kb/s, SAR 1:1 DAR 16:9, 30 fps,
 30 tbr, 90k tbn (default)
     Metadata:
       creation_time   : 2021-05-12T17:07:00.000000Z
       handler_name    : VideoHandle
       vendor_id       : [0][0][0][0]
   Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo,
 fltp, 192 kb/s (default)
     Metadata:
       creation_time   : 2021-05-12T17:07:00.000000Z
       handler_name    : SoundHandle
       vendor_id       : [0][0][0][0]
 [h264_v4l2m2m @ 0xaaab223bf530] Using device /dev/video0
 [h264_v4l2m2m @ 0xaaab223bf530] driver 'meson-vdec' on card 'Amlogic Video
 Decoder' in mplane mode
 [h264_v4l2m2m @ 0xaaab223bf530] requesting formats: output=H264
 capture=NM12
 Stream mapping:
   Stream #0:0 -> #0:0 (h264 (h264_v4l2m2m) -> rawvideo (native))
 Press [q] to stop, [?] for help
 [sdl,sdl2 @ 0xaaab22384f50] Unsupported pixel format 'nv12'.
 Output #0, sdl,sdl2, to 'pipe:':
   Metadata:
     major_brand     : mp42
     minor_version   : 0
     compatible_brands: isommp42
     com.android.version: 10
     encoder         : Lavf59.2.101
   Stream #0:0(eng): Video: rawvideo (NV12 / 0x3231564E),
 nv12(progressive), 3840x2160 [SAR 1:1 DAR 16:9], q=2-31, 2985984 kb/s, 30
 fps, 30 tbn (default)
     Metadata:
       creation_time   : 2021-05-12T17:07:00.000000Z
       handler_name    : VideoHandle
       vendor_id       : [0][0][0][0]
       encoder         : Lavc59.1.101 rawvideo
 Unsupported pixel format
 av_interleaved_write_frame(): Operation not permitted
 frame=    1 fps=0.8 q=-0.0 Lsize=N/A time=00:00:00.03 bitrate=N/A
 speed=0.0271x
 video:12150kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB
 muxing overhead: unknown
 Conversion failed!
 }}}

 I said previously that I didn't think my gpu supported opengl but when
 using `-loglevel verbose` that is apparently what ffplay is using to play
 the video although using `-f opengl -` doesn't work with ffmpeg:

 {{{
 $ ffplay -loglevel verbose -vcodec h264_v4l2m2m VID_20210512_180639.mp4
 ffplay version N-102655-g282b9f4cba Copyright (c) 2003-2021 the FFmpeg
 developers
   built with gcc 10.2.0 (GCC)
   configuration: --prefix=/usr --disable-debug --disable-static --disable-
 stripping --enable-amf --enable-avisynth --enable-cuda-llvm --enable-lto
 --enable-fontconfig --enable-gmp --enable-gnutls --enable-gpl --enable-
 ladspa --enable-libaom --enable-libass --enable-libbluray --enable-
 libdav1d --enable-libdrm --enable-libfreetype --enable-libfribidi
 --enable-libgsm --enable-libiec61883 --enable-libjack --enable-libmodplug
 --enable-libmp3lame --enable-libopencore_amrnb --enable-libopencore_amrwb
 --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-librav1e
 --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libssh
 --enable-libtheora --enable-libv4l2 --enable-libvidstab --enable-libvorbis
 --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265
 --enable-libxcb --enable-libxml2 --enable-libxvid --enable-libzimg
 --enable-nvdec --enable-nvenc --enable-shared --enable-version3
   libavutil      57.  0.100 / 57.  0.100
   libavcodec     59.  1.101 / 59.  1.101
   libavformat    59.  2.101 / 59.  2.101
   libavdevice    59.  0.100 / 59.  0.100
   libavfilter     8.  0.101 /  8.  0.101
   libswscale      6.  0.100 /  6.  0.100
   libswresample   4.  0.100 /  4.  0.100
   libpostproc    56.  0.100 / 56.  0.100
 Initialized opengl renderer.
 [h264 @ 0xffff74001e90] Reinit context to 3840x2160, pix_fmt: yuv420p
 Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'VID_20210512_180639.mp4':
   Metadata:
     major_brand     : mp42
     minor_version   : 0
     compatible_brands: isommp42
     creation_time   : 2021-05-12T17:07:00.000000Z
     com.android.version: 10
   Duration: 00:00:20.03, start: 0.000000, bitrate: 43964 kb/s
   Stream #0:0(eng): Video: h264 (High), 1 reference frame (avc1 /
 0x31637661), yuv420p(tv, unknown/bt470bg/unknown, left), 3840x2160, 43449
 kb/s, SAR 1:1 DAR 16:9, 30 fps, 30 tbr, 90k tbn (default)
     Metadata:
       creation_time   : 2021-05-12T17:07:00.000000Z
       handler_name    : VideoHandle
       vendor_id       : [0][0][0][0]
   Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo,
 fltp, 192 kb/s (default)
     Metadata:
       creation_time   : 2021-05-12T17:07:00.000000Z
       handler_name    : SoundHandle
       vendor_id       : [0][0][0][0]
 [ffplay_abuffer @ 0xffff741000a0] tb:1/48000 samplefmt:fltp
 samplerate:48000 chlayout:0x3
 [ffplay_abuffersink @ 0xffff740ed010] auto-inserting filter
 'auto_resampler_0' between the filter 'ffplay_abuffer' and the filter
 'ffplay_abuffersink'
 [auto_resampler_0 @ 0xffff74011460] ch:2 chl:stereo fmt:fltp r:48000Hz ->
 ch:2 chl:stereo fmt:s16 r:48000Hz
 [h264_v4l2m2m @ 0xffff740f9440] Using device /dev/video0
 [h264_v4l2m2m @ 0xffff740f9440] driver 'meson-vdec' on card 'Amlogic Video
 Decoder' in mplane mode
 [h264_v4l2m2m @ 0xffff740f9440] requesting formats: output=H264
 capture=NM12
 [ffplay_abuffer @ 0xffff740ed010] tb:1/48000 samplefmt:fltp
 samplerate:48000 chlayout:0x3
 [ffplay_abuffersink @ 0xffff74011460] auto-inserting filter
 'auto_resampler_0' between the filter 'ffplay_abuffer' and the filter
 'ffplay_abuffersink'
 [auto_resampler_0 @ 0xffff741000a0] ch:2 chl:stereo fmt:fltp r:48000Hz ->
 ch:2 chl:stereo fmt:s16 r:48000Hz
 [ffplay_buffer @ 0xffff540321f0] w:3840 h:2160 pixfmt:nv12 tb:1/90000
 fr:30/1 sar:0/1
 [auto_scaler_0 @ 0xffff54033650] w:iw h:ih flags:'bicubic' interl:0
 [ffplay_buffersink @ 0xffff54032830] auto-inserting filter 'auto_scaler_0'
 between the filter 'ffplay_buffer' and the filter 'ffplay_buffersink'
 [auto_scaler_0 @ 0xffff54033650] w:3840 h:2160 fmt:nv12 sar:0/1 -> w:3840
 h:2160 fmt:yuv420p sar:0/1 flags:0x4
     Last message repeated 2 times
 [auto_scaler_0 @ 0xffff54033650] w:3840 h:2160 fmt:nv12 sar:1/1 -> w:3840
 h:2160 fmt:yuv420p sar:1/1 flags:0x4
 Created 3840x2160 texture with SDL_PIXELFORMAT_IYUV.=    0B f=0/0
 [AVIOContext @ 0xffff74009340] Statistics: 109381145 bytes read, 5 seeks
 }}}
-- 
Ticket URL: <https://trac.ffmpeg.org/ticket/9280#comment:10>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
_______________________________________________
FFmpeg-trac mailing list
[email protected]
https://ffmpeg.org/mailman/listinfo/ffmpeg-trac

To unsubscribe, visit link above, or email
[email protected] with subject "unsubscribe".

Reply via email to