aboutsummaryrefslogtreecommitdiffstats
path: root/libavformat/psxstr.c
diff options
context:
space:
mode:
authoraybe aybe <aybe.one@hotmail.com>2024-01-02 02:57:18 +0000
committerMichael Niedermayer <michael@niedermayer.cc>2024-01-11 17:09:14 +0100
commit21ed52916d5843a8ab64a9a21131935886e8dd76 (patch)
tree2a30c862617bec126ca5cd0011c576c0cc42c2fb /libavformat/psxstr.c
parent8d0dda8260e67996efbc96d3148ce7238e42df60 (diff)
downloadffmpeg-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.c5
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 */