On Tue, Jan 02, 2024 at 02:49:26AM +0000, aybe aybe wrote: > Hi, > > As I understand, support for .STR files is broken for almost 10 years now (since 161442ff2c4b0dd8a5072c6bbe6bf55303fffccf it seems). > > Currently, ffmpeg fails with tons of errors like this on version 1 STRs, e.g. Wipeout 1: > [mdec @ 00000000027c72c0] ac-tex damaged at 1 9 > > What happens is that only the audio is present in the video file. > > Anyway, that one character patch fixes the problem, video is now rendered. > > Signed-off-by: aybe > --- > libavcodec/mdec.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/libavcodec/mdec.c b/libavcodec/mdec.c > index 44b12471a9..c4904216b8 100644 > --- a/libavcodec/mdec.c > +++ b/libavcodec/mdec.c > @@ -68,7 +68,7 @@ static inline int mdec_decode_block_intra(MDECContext *a, int16_t *block, int n) > const int qscale = a->qscale; > > /* DC coefficient */ > - if (a->version == 2) { > + if (a->version <= 2) { > block[0] = 2 * get_sbits(&a->gb, 10) + 1024; > } else { > component = (n <= 3 ? 0 : n - 4 + 1); This seems not to apply automatically here Applying: avcodec/mdec: DC reading for STRv1 is like STRv2 Using index info to reconstruct a base tree... error: patch failed: libavcodec/mdec.c:68 error: libavcodec/mdec.c: patch does not apply error: Did you hand edit your patch? [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB Asymptotically faster algorithms should always be preferred if you have asymptotical amounts of data