[FFmpeg-devel] [PATCH] avformat/flvdec: RtmpSampleAccess no longer breaks stream detection

Michael Niedermayer michael at niedermayer.cc
Thu Aug 20 14:19:28 EEST 2020


On Wed, Aug 19, 2020 at 09:06:54AM +0200, Peter van der Spek wrote:
> Since release 4.2, FFmpeg fails to detect the correct streams in an RTMP
> stream that contains a |RtmpSampleAccess AMF object prior to the
> onMetaData AMF object. In the debug log it would show "[flv] Unknown
> type |RtmpSampleAccess".
> 
> This functionality broke in commit d7638d8dfc3c4ffd0dc18a64937a5a07ed67b354
> as unknown metadata packets now result in an opaque data stream, and the
> |RtmpSampleAccess packet was an "unknown" metadata packet type.
> 
> With this change the RTMP streams are correctly detected when there
> is a |RtmpSampleAccess object prior to the onMetaData object.
> 
> Signed-off-by: Peter van der Spek <p.vanderspek at bluebillywig.com>
> ---
>  libavformat/flvdec.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/libavformat/flvdec.c b/libavformat/flvdec.c
> index 0862273..d480d0b 100644
> --- a/libavformat/flvdec.c
> +++ b/libavformat/flvdec.c
> @@ -715,7 +715,7 @@ static int flv_read_metabody(AVFormatContext *s, int64_t next_pos)
>      if (!strcmp(buffer, "onCaptionInfo"))
>          return TYPE_ONCAPTIONINFO;
>  
> -    if (strcmp(buffer, "onMetaData") && strcmp(buffer, "onCuePoint")) {
> +    if (strcmp(buffer, "onMetaData") && strcmp(buffer, "onCuePoint") && strcmp(buffer, "|RtmpSampleAccess")) {
>          av_log(s, AV_LOG_DEBUG, "Unknown type %s\n", buffer);
>          return TYPE_UNKNOWN;
>      }

when transcoding this will copy this "|RtmpSampleAccess" thing in the output
is that intended ?

thx

[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

It is what and why we do it that matters, not just one of them.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 195 bytes
Desc: not available
URL: <https://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20200820/b7967a8d/attachment.sig>


More information about the ffmpeg-devel mailing list