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); > -- > 2.41.0.windows.1 This is how the patch should look: (there are differencs in the whitespace which git seems to have problems with in above) not sure where these differences came from thx diff --git a/libavcodec/mdec.c b/libavcodec/mdec.c index 44b12471a9e..c4904216b81 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); [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB If you think the mosad wants you dead since a long time then you are either wrong or dead since a long time.