From: "罗勇刚(Yonggang Luo)" <luoyonggang@gmail.com>
To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org>
Subject: Re: [FFmpeg-devel] I have an issue when try to using h264_amf encoding rtsp stream
Date: Wed, 19 Apr 2023 13:15:21 +0800
Message-ID: <CAE2XoE8Oi8fN9OimuJBRU7eaPrwFLvGWhjmOcNWZgKJrDV+v7Q@mail.gmail.com> (raw)
In-Reply-To: <CADXbNkRt+3anzyzJob3tUJEKbDH7iNXx3KWuFOPvJFRFppfA-g@mail.gmail.com>
thanks, I have already tried the top size 1 and 10 before on the enconder,
I assume you are talking about the encoder, as the decoder can not config
the gop size, I think it's should be a bug of and encoder or decoder,
because if I start the decoder before amf encoder, it's working fine, it is
either because the encoder only encode the first I frame properly or the
decoder can not recognize the I frame generated by amf encoder.
Dmitrii Ovchinnikov <ovchinnikov.dmitrii@gmail.com> 于 2023年4月19日周三 01:55写道:
> For libx264 the default gop size is 10, while for amf the default gop size
> is 250. I suspect this is the reason.
> Try adding the following parameter “* -g 10* ” when using amf encoder.
> This parameter will set gop size to 10.
>
> вт, 11 апр. 2023 г. в 09:42, 罗勇刚(Yonggang Luo) <luoyonggang@gmail.com>:
>
> > When using libx264:
> > The pull result is:
> > ```
> > C:\work\xtal\xtal-video\ffmpeg-6.0-full_build-shared\bin>ffplay
> -max_delay
> > 0 -max_probe_packets 1 -analyzeduration 0 -flags +low_delay -fflags
> > +nobuffer -protocol_whitelist file,udp,rtp rtp_h264_30003.sdp
> > ffplay version 6.0-full_build-www.gyan.dev Copyright (c) 2003-2023 the
> > FFmpeg developers
> > built with gcc 12.2.0 (Rev10, Built by MSYS2 project)
> > configuration: --enable-gpl --enable-version3 --enable-shared
> > --disable-w32threads --disable-autodetect --enable-fontconfig
> > --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp
> --enable-bzlib
> > --enable-lzma --enable-libsnappy --enable-zlib --enable-librist
> > --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth
> > --enable-libbluray --enable-libcaca --enable-sdl2 --enable-libaribb24
> > --enable-libdav1d --enable-libdavs2 --enable-libuavs3d --enable-libzvbi
> > --enable-librav1e --enable-libsvtav1 --enable-libwebp --enable-libx264
> > --enable-libx265 --enable-libxavs2 --enable-libxvid --enable-libaom
> > --enable-libjxl --enable-libopenjpeg --enable-libvpx
> > --enable-mediafoundation --enable-libass --enable-frei0r
> > --enable-libfreetype --enable-libfribidi --enable-liblensfun
> > --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf
> > --enable-cuda-llvm --enable-cuvid --enable-ffnvcodec --enable-nvdec
> > --enable-nvenc --enable-d3d11va --enable-dxva2 --enable-libvpl
> > --enable-libshaderc --enable-vulkan --enable-libplacebo --enable-opencl
> > --enable-libcdio --enable-libgme --enable-libmodplug --enable-libopenmpt
> > --enable-libopencore-amrwb --enable-libmp3lame --enable-libshine
> > --enable-libtheora --enable-libtwolame --enable-libvo-amrwbenc
> > --enable-libilbc --enable-libgsm --enable-libopencore-amrnb
> > --enable-libopus --enable-libspeex --enable-libvorbis --enable-ladspa
> > --enable-libbs2b --enable-libflite --enable-libmysofa
> > --enable-librubberband --enable-libsoxr --enable-chromaprint
> > libavutil 58. 2.100 / 58. 2.100
> > libavcodec 60. 3.100 / 60. 3.100
> > libavformat 60. 3.100 / 60. 3.100
> > libavdevice 60. 1.100 / 60. 1.100
> > libavfilter 9. 3.100 / 9. 3.100
> > libswscale 7. 1.100 / 7. 1.100
> > libswresample 4. 10.100 / 4. 10.100
> > libpostproc 57. 1.100 / 57. 1.100
> > Input #0, sdp, from 'rtp_h264_30003.sdp':= 0KB sq= 0B f=0/0
> > Duration: N/A, start: -0.017911, bitrate: N/A
> > Stream #0:0: Video: h264 (High), yuv420p(progressive), 1920x1060, 50
> fps,
> > 50 tbr, 90k tbn
> > 3.79 M-V: 3.731 fd= 0 aq= 0KB vq= 0KB sq= 0B f=0/0
> > ```
> >
> > But when using h264_amf:
> > ```
> >
> > C:\work\xtal\xtal-video\ffmpeg-6.0-full_build-shared\bin>ffplay
> -max_delay
> > 0 -max_probe_packets 1 -analyzeduration 0 -flags +low_delay -fflags
> > +nobuffer -protocol_whitelist file,udp,rtp rtp_h264_30003.sdp
> > ffplay version 6.0-full_build-www.gyan.dev Copyright (c) 2003-2023 the
> > FFmpeg developers
> > built with gcc 12.2.0 (Rev10, Built by MSYS2 project)
> > configuration: --enable-gpl --enable-version3 --enable-shared
> > --disable-w32threads --disable-autodetect --enable-fontconfig
> > --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp
> --enable-bzlib
> > --enable-lzma --enable-libsnappy --enable-zlib --enable-librist
> > --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth
> > --enable-libbluray --enable-libcaca --enable-sdl2 --enable-libaribb24
> > --enable-libdav1d --enable-libdavs2 --enable-libuavs3d --enable-libzvbi
> > --enable-librav1e --enable-libsvtav1 --enable-libwebp --enable-libx264
> > --enable-libx265 --enable-libxavs2 --enable-libxvid --enable-libaom
> > --enable-libjxl --enable-libopenjpeg --enable-libvpx
> > --enable-mediafoundation --enable-libass --enable-frei0r
> > --enable-libfreetype --enable-libfribidi --enable-liblensfun
> > --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf
> > --enable-cuda-llvm --enable-cuvid --enable-ffnvcodec --enable-nvdec
> > --enable-nvenc --enable-d3d11va --enable-dxva2 --enable-libvpl
> > --enable-libshaderc --enable-vulkan --enable-libplacebo --enable-opencl
> > --enable-libcdio --enable-libgme --enable-libmodplug --enable-libopenmpt
> > --enable-libopencore-amrwb --enable-libmp3lame --enable-libshine
> > --enable-libtheora --enable-libtwolame --enable-libvo-amrwbenc
> > --enable-libilbc --enable-libgsm --enable-libopencore-amrnb
> > --enable-libopus --enable-libspeex --enable-libvorbis --enable-ladspa
> > --enable-libbs2b --enable-libflite --enable-libmysofa
> > --enable-librubberband --enable-libsoxr --enable-chromaprint
> > libavutil 58. 2.100 / 58. 2.100
> > libavcodec 60. 3.100 / 60. 3.100
> > libavformat 60. 3.100 / 60. 3.100
> > libavdevice 60. 1.100 / 60. 1.100
> > libavfilter 9. 3.100 / 9. 3.100
> > libswscale 7. 1.100 / 7. 1.100
> > libswresample 4. 10.100 / 4. 10.100
> > libpostproc 57. 1.100 / 57. 1.100
> > [h264 @ 000001ba7836b100] non-existing PPS 0 referenced 0B f=0/0
> > Last message repeated 1 times
> > [h264 @ 000001ba7836b100] decode_slice_header error
> > [h264 @ 000001ba7836b100] no frame!
> > [h264 @ 000001ba7836b100] non-existing PPS 0 referenced 0B f=0/0
> > Last message repeated 1 times
> > [h264 @ 000001ba7836b100] decode_slice_header errorq= 0B f=0/0
> > [h264 @ 000001ba7836b100] no frame!
> > [h264 @ 000001ba7836b100] non-existing PPS 0 referenced 0B f=0/0
> > Last message repeated 1 times
> > [h264 @ 000001ba7836b100] decode_slice_header error
> > [h264 @ 000001ba7836b100] no frame!
> > [h264 @ 000001ba7836b100] non-existing PPS 0 referenced 0B f=0/0
> > Last message repeated 1 times
> > [h264 @ 000001ba7836b100] decode_slice_header error
> > [h264 @ 000001ba7836b100] no frame!
> > [h264 @ 000001ba7836b100] non-existing PPS 0 referenced 0B f=0/0
> > Last message repeated 1 times
> > [h264 @ 000001ba7836b100] decode_slice_header error
> > [h264 @ 000001ba7836b100] no frame!
> > [h264 @ 000001ba7836b100] non-existing PPS 0 referenced 0B f=0/0
> > Last message repeated 1 times
> > [h264 @ 000001ba7836b100] decode_slice_header error
> > [h264 @ 000001ba7836b100] no frame!
> > [h264 @ 000001ba7836b100] non-existing PPS 0 referenced 0B f=0/0
> > Last message repeated 1 times
> > [h264 @ 000001ba7836b100] decode_slice_header error
> > [h264 @ 000001ba7836b100] no frame!
> > [h264 @ 000001ba7836b100] non-existing PPS 0 referenced 0B f=0/0
> > Last message repeated 1 times
> > [h264 @ 000001ba7836b100] decode_slice_header error
> > [h264 @ 000001ba7836b100] no frame!
> > [h264 @ 000001ba7836b100] non-existing PPS 0 referenced 0B f=0/0
> > Last message repeated 1 times
> > [h264 @ 000001ba7836b100] decode_slice_header error
> > [h264 @ 000001ba7836b100] no frame!
> > [h264 @ 000001ba7836b100] non-existing PPS 0 referenced 0B f=0/0
> > Last message repeated 1 times
> > [h264 @ 000001ba7836b100] decode_slice_header errorq= 0B f=0/0
> > [h264 @ 000001ba7836b100] no frame!
> > [h264 @ 000001ba7836b100] non-existing PPS 0 referenced 0B f=0/0
> > Last message repeated 1 times
> > [h264 @ 000001ba7836b100] decode_slice_header error
> > [h264 @ 000001ba7836b100] no frame!
> > [h264 @ 000001ba7836b100] non-existing PPS 0 referenced 0B f=0/0
> > Last message repeated 1 times
> > [h264 @ 000001ba7836b100] decode_slice_header error
> > [h264 @ 000001ba7836b100] no frame!
> > [h264 @ 000001ba7836b100] non-existing PPS 0 referenced 0B f=0/0
> > [h264 @ 000001ba7836b100] non-existing PPS 0 referenced 0B f=0/0
> > [h264 @ 000001ba7836b100] decode_slice_header error
> > [h264 @ 000001ba7836b100] no frame!
> > [h264 @ 000001ba7836b100] non-existing PPS 0 referenced 0B f=0/0
> > Last message repeated 1 times
> > [h264 @ 000001ba7836b100] decode_slice_header error
> > [h264 @ 000001ba7836b100] no frame!
> > [h264 @ 000001ba7836b100] non-existing PPS 0 referenced 0B f=0/0
> > Last message repeated 1 times
> > [h264 @ 000001ba7836b100] decode_slice_header error
> > [h264 @ 000001ba7836b100] no frame!
> > [h264 @ 000001ba7836b100] non-existing PPS 0 referenced 0B f=0/0
> > Last message repeated 1 times
> > [h264 @ 000001ba7836b100] decode_slice_header error
> > [h264 @ 000001ba7836b100] no frame!
> > [h264 @ 000001ba7836b100] non-existing PPS 0 referenced 0B f=0/0
> > Last message repeated 1 times
> > [h264 @ 000001ba7836b100] decode_slice_header error
> > [h264 @ 000001ba7836b100] no frame!
> > [h264 @ 000001ba7836b100] non-existing PPS 0 referenced 0B f=0/0
> > Last message repeated 1 times
> > [h264 @ 000001ba7836b100] decode_slice_header error
> > [h264 @ 000001ba7836b100] no frame!
> > [h264 @ 000001ba7836b100] non-existing PPS 0 referenced 0B f=0/0
> > Last message repeated 1 times
> > [h264 @ 000001ba7836b100] decode_slice_header error
> > [h264 @ 000001ba7836b100] no frame!
> > ```
> >
> > And if I start the ffplay pull script before the rstp push executable,
> > then it can decoding the stream properly.
> > ```
> >
> > C:\work\xtal\xtal-video\ffmpeg-6.0-full_build-shared\bin>ffplay
> -max_delay
> > 0 -max_probe_packets 1 -analyzeduration 0 -flags +low_delay -fflags
> > +nobuffer -protocol_whitelist file,udp,rtp rtp_h264_30003.sdp
> > ffplay version 6.0-full_build-www.gyan.dev Copyright (c) 2003-2023 the
> > FFmpeg developers
> > built with gcc 12.2.0 (Rev10, Built by MSYS2 project)
> > configuration: --enable-gpl --enable-version3 --enable-shared
> > --disable-w32threads --disable-autodetect --enable-fontconfig
> > --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp
> --enable-bzlib
> > --enable-lzma --enable-libsnappy --enable-zlib --enable-librist
> > --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth
> > --enable-libbluray --enable-libcaca --enable-sdl2 --enable-libaribb24
> > --enable-libdav1d --enable-libdavs2 --enable-libuavs3d --enable-libzvbi
> > --enable-librav1e --enable-libsvtav1 --enable-libwebp --enable-libx264
> > --enable-libx265 --enable-libxavs2 --enable-libxvid --enable-libaom
> > --enable-libjxl --enable-libopenjpeg --enable-libvpx
> > --enable-mediafoundation --enable-libass --enable-frei0r
> > --enable-libfreetype --enable-libfribidi --enable-liblensfun
> > --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf
> > --enable-cuda-llvm --enable-cuvid --enable-ffnvcodec --enable-nvdec
> > --enable-nvenc --enable-d3d11va --enable-dxva2 --enable-libvpl
> > --enable-libshaderc --enable-vulkan --enable-libplacebo --enable-opencl
> > --enable-libcdio --enable-libgme --enable-libmodplug --enable-libopenmpt
> > --enable-libopencore-amrwb --enable-libmp3lame --enable-libshine
> > --enable-libtheora --enable-libtwolame --enable-libvo-amrwbenc
> > --enable-libilbc --enable-libgsm --enable-libopencore-amrnb
> > --enable-libopus --enable-libspeex --enable-libvorbis --enable-ladspa
> > --enable-libbs2b --enable-libflite --enable-libmysofa
> > --enable-librubberband --enable-libsoxr --enable-chromaprint
> > libavutil 58. 2.100 / 58. 2.100
> > libavcodec 60. 3.100 / 60. 3.100
> > libavformat 60. 3.100 / 60. 3.100
> > libavdevice 60. 1.100 / 60. 1.100
> > libavfilter 9. 3.100 / 9. 3.100
> > libswscale 7. 1.100 / 7. 1.100
> > libswresample 4. 10.100 / 4. 10.100
> > libpostproc 57. 1.100 / 57. 1.100
> > Input #0, sdp, from 'rtp_h264_30003.sdp':= 0KB sq= 0B f=0/0
> > Duration: N/A, start: -0.053911, bitrate: N/A
> > Stream #0:0: Video: h264 (Main), yuv420p(tv, bt709/reserved/reserved,
> > progressive), 1920x1060 [SAR 1:1 DAR 96:53], 50 fps, 50 tbr, 90k tbn
> > ```
> >
> > Is that a bug of h264_amf or the config option for h264_amf is invalid?
> >
> >
> >
> > --
> > 此致
> > 礼
> > 罗勇刚
> > Yours
> > sincerely,
> > Yonggang Luo
> > _______________________________________________
> > ffmpeg-devel mailing list
> > ffmpeg-devel@ffmpeg.org
> > https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
> >
> > To unsubscribe, visit link above, or email
> > ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
> >
>
>
> --
> Sincerely, Ovchinnikov D.A.
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
>
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
next prev parent reply other threads:[~2023-04-19 5:15 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-04-11 7:41 罗勇刚(Yonggang Luo)
2023-04-18 17:55 ` Dmitrii Ovchinnikov
2023-04-19 5:15 ` 罗勇刚(Yonggang Luo) [this message]
2023-04-29 7:01 ` Dmitrii Ovchinnikov
2023-05-02 6:43 ` 罗勇刚(Yonggang Luo)
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=CAE2XoE8Oi8fN9OimuJBRU7eaPrwFLvGWhjmOcNWZgKJrDV+v7Q@mail.gmail.com \
--to=luoyonggang@gmail.com \
--cc=ffmpeg-devel@ffmpeg.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
This inbox may be cloned and mirrored by anyone:
git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \
ffmpegdev@gitmailbox.com
public-inbox-index ffmpegdev
Example config snippet for mirrors.
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git