diff options
author | aybe aybe <aybe.one@hotmail.com> | 2024-01-02 02:57:18 +0000 |
---|---|---|
committer | Michael Niedermayer <michael@niedermayer.cc> | 2024-01-11 17:09:14 +0100 |
commit | 21ed52916d5843a8ab64a9a21131935886e8dd76 (patch) | |
tree | 2a30c862617bec126ca5cd0011c576c0cc42c2fb /libavformat/psxstr.c | |
parent | 8d0dda8260e67996efbc96d3148ce7238e42df60 (diff) | |
download | ffmpeg-21ed52916d5843a8ab64a9a21131935886e8dd76.tar.gz |
avformat/psxstr: fix unknown sector type 00/80
This third patch fixes warnings that are false positives (still on STRv1).
That's because these sectors are simply empty ones as can be read in "System Description CD-ROM XA, May 1991,
4.3.2.3".
Haven't attempted significant refactoring as it just works, left a comment instead about the situation.
The result is that there are no more false warnings when converting.
Signed-off-by: aybe <aybe@users.noreply.github.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Diffstat (limited to 'libavformat/psxstr.c')
-rw-r--r-- | libavformat/psxstr.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/libavformat/psxstr.c b/libavformat/psxstr.c index bb56b05688..22867416d9 100644 --- a/libavformat/psxstr.c +++ b/libavformat/psxstr.c @@ -48,6 +48,7 @@ #define CDXA_TYPE_DATA 0x08 #define CDXA_TYPE_AUDIO 0x04 #define CDXA_TYPE_VIDEO 0x02 +#define CDXA_TYPE_EMPTY 0x00 #define STR_MAGIC (0x80010160) @@ -270,6 +271,10 @@ static int str_read_packet(AVFormatContext *s, str->channels[channel].audio_stream_index; pkt->duration = 1; return 0; + case CDXA_TYPE_EMPTY: /* CD-ROM XA, May 1991, 4.3.2.3 */ + /* NOTE this also catches 0x80 (EOF bit) because of CDXA_TYPE_MASK */ + /* TODO consider refactoring so as to explicitly handle each case? */ + break; default: av_log(s, AV_LOG_WARNING, "Unknown sector type %02X\n", sector[0x12]); /* drop the sector and move on */ |