[FFmpeg-devel] [PATCH 1/4] avcodec/mdec: DC reading for STRv1 is like STRv2

aybe aybe aybe.one at hotmail.com
Sat Jan 6 14:31:03 EET 2024


Yes, I can see the warnings in patchwork but I don't understand what's 
the actual problem.

This is how I've done things over here:

- forked https://github.com/FFmpeg/FFmpeg which is synchronized with 
https://git.ffmpeg.org/ffmpeg.git
- made the changes, committed them
- created the patches with 'git format patch' instructions in 
https://ffmpeg.org/developer.html#Submitting-patches-1
- posted the .eml files without any editing (as the log is mentioning in 
patchwork)

Right now I just synced my fork and it merged new changes since then 
with no issues (https://github.com/aybe/FFmpeg/commits/master/).

So I don't know what's going on, maybe someone can shed some light on 
it?

------ Original Message ------
From "michael at niedermayer.cc" <nobody at invalid.invalid>
To
Date 1/5/2024 9:53:52 PM
Subject [FFmpeg-devel] [PATCH 1/4] avcodec/mdec: DC reading for STRv1 is 
like STRv2

>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 <aybe at users.noreply.github.com>
>>  ---
>>    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
>-------------- 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/20240105/fc813de7/attachment.sig>
>


More information about the ffmpeg-devel mailing list