On Sat, Apr 19, 2025 at 08:07:00PM +0100, Mark Thompson wrote: > Demuxes raw streams as defined in draft spec section 10.2. > --- > libavformat/Makefile | 1 + > libavformat/allformats.c | 1 + > libavformat/apvdec.c | 245 +++++++++++++++++++++++++++++++++++++++ > 3 files changed, 247 insertions(+) > create mode 100644 libavformat/apvdec.c [...]
> +static int apv_probe(const AVProbeData *p)
> +{
> + GetBitContext gbc;
> + APVHeaderInfo header;
> + uint32_t au_size, tag, pbu_size;
> + int score = AVPROBE_SCORE_EXTENSION + 1;
> + int ret;
> +
> + init_get_bits8(&gbc, p->buf, p->buf_size);
> +
> + au_size = get_bits_long(&gbc, 32);
> + if (au_size < 16) {
> + // Too small.
> + return 0;
> + }
> + // The spec doesn't have this tag, but the reference software and
> + // all current files do. Treat it as optional and skip if present,
> + // but if it is there then this is definitely an APV file.
> + tag = get_bits_long(&gbc, 32);
> + if (tag == APV_TAG) {
> + pbu_size = get_bits_long(&gbc, 32);
> + score = AVPROBE_SCORE_MAX;
> + } else {
> + pbu_size = tag;
> + }
> + if (pbu_size < 16) {
> + // Too small.
> + return 0;
> + }
> +
> + ret = apv_extract_header_info(&header, &gbc);
> + if (ret == 0)
> + return 0;
> + return score;
> +}
tools/probetest 256 4096
Failure of apv probing code with score=51 type=1 p=F14 size=32
(yes i saw you posted a new patch, but still had the old one locally
and saw this, so reporting anyway)
thx
[...]
--
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
Good people do not need laws to tell them to act responsibly, while bad
people will find a way around the laws. -- Plato
signature.asc
Description: PGP signature
_______________________________________________ ffmpeg-devel mailing list [email protected] https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email [email protected] with subject "unsubscribe".
