[FFmpeg-cvslog] avcodec/mdec: DC reading for STRv1 is like STRv2
aybe aybe
git at videolan.org
Tue Jan 16 02:36:49 EET 2024
ffmpeg | branch: master | aybe aybe <aybe.one-at-hotmail.com at ffmpeg.org> | Tue Jan 2 02:49:26 2024 +0000| [36b402f80d0adc6b0687e014e3f51a00b72335eb] | committer: Michael Niedermayer
avcodec/mdec: DC reading for STRv1 is like STRv2
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 <aybe at users.noreply.github.com>
Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=36b402f80d0adc6b0687e014e3f51a00b72335eb
---
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);
More information about the ffmpeg-cvslog
mailing list