[FFmpeg-trac] #11354(avformat:closed): Certain PlayStation STR complained "Invalid data"
FFmpeg
trac at avcodec.org
Tue Dec 17 23:34:07 EET 2024
#11354: Certain PlayStation STR complained "Invalid data"
-------------------------------------+-------------------------------------
Reporter: Joseph | Owner: (none)
DeVore |
Type: defect | Status: closed
Priority: normal | Component: avformat
Version: git-master | Resolution: invalid
Keywords: psxstr | Blocked By:
Blocking: | Reproduced by developer: 0
Analyzed by developer: 1 |
-------------------------------------+-------------------------------------
Changes (by MasterQuestionable):
* resolution: => invalid
* status: new => closed
Comment:
͏ The information is regardless valuable.
[[
͏ Each sector on a CD is 2,352 Bytes.
͏ A data track on a PlayStation CD follows the CD-ROM XA standard:
͏ https://en.wikipedia.org/wiki/CD-ROM#XA
͏ .
͏ Where there are 2 types of sectors:
͏ |1| Mode 2 Form 1:
͏ Uses 2,048 of those 2,352 bytes for data; and the rest for things
like error correction.
͏ This form is used for most data: because CD are unreliable and that
error correction is really important, if it's something like code.
͏ |2| Mode 2 Form 2:
͏ Uses 2,324 of those 2,352 bytes for data: getting rid of the error
correction in exchange for more space.
͏ Generally used for compressed audio where small errors are not a big
deal.
͏ So, most files on a PlayStation disc will use Mode 2 Form 1:
͏ With Mode 2 Form 2 only used for compressed audio, either on its own
or within a video file.
͏ So each of those STR files contains a mix of those 2 sector types.
͏ The problem you're running into is that:
͏ DuckStation's ISO browser simply dumps 2,048 Bytes of data for every
sector, regardless of what type it is.
͏ Whereas FFmpeg actually wants the full raw 2,352 Bytes sectors.
͏ Try dumping the files with jPSXdec instead.
]]
--
Ticket URL: <https://trac.ffmpeg.org/ticket/11354#comment:10>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list