Decoding adpcm_psx

classic Classic list List threaded Threaded
8 messages Options
Reply | Threaded
Open this post in threaded view
|

Decoding adpcm_psx

Markus Laaja
Greetings.
In short, I'm running into constant input errors when trying to decode
from different adpcm formats.
Compiling ffmpeg on a linux environment to see if it helps, is way
beyond my reach just to solve this, unfortunately.
Can anyone confirm this shouldn't happen?
Thanks for everyone in advance.

The input and output cut short:

D:\ffmpeg-4.0.2-win32-static\bin>ffmpeg -f adpcm_psx -ar 22050 -ac 1 -i
ST1.adpcm_psx ST1.wav
ffmpeg version 4.0.2 Copyright (c) 2000-2018 the FFmpeg developers
   built with gcc 7.3.1 (GCC) 20180722
   libavutil      56. 14.100 / 56. 14.100
   libavcodec     58. 18.100 / 58. 18.100
   libavformat    58. 12.100 / 58. 12.100
   libavdevice    58.  3.100 / 58.  3.100
   libavfilter     7. 16.100 /  7. 16.100
   libswscale      5.  1.100 /  5.  1.100
   libswresample   3.  1.100 /  3.  1.100
   libpostproc    55.  1.100 / 55.  1.100
Unknown input format: 'adpcm_psx'

--- It's the same with other adpcm formats, it seems.

D:\ffmpeg-4.0.2-win32-static\bin>ffmpeg -f adpcm_xa -i ST1.adpcm_psx ST1.wav
Unknown input format: 'adpcm_xa'

Unknown input format: 'adpcm_ms'

Unknown input format: 'adpcm_yamaha'


_______________________________________________
ffmpeg-user mailing list
[hidden email]
http://ffmpeg.org/mailman/listinfo/ffmpeg-user

To unsubscribe, visit link above, or email
[hidden email] with subject "unsubscribe".
Reply | Threaded
Open this post in threaded view
|

Re: Decoding adpcm_psx

Carl Eugen Hoyos-2



> Am 26.10.2018 um 21:12 schrieb Markus Laaja <[hidden email]>:
>
> Greetings.
> In short, I'm running into constant input errors when trying to decode from different adpcm formats.
> Compiling ffmpeg on a linux environment to see if it helps, is way beyond my reach just to solve this, unfortunately.
> Can anyone confirm this shouldn't happen?
> Thanks for everyone in advance.
>
> The input and output cut short:
>
> D:\ffmpeg-4.0.2-win32-static\bin>ffmpeg -f adpcm_psx -ar 22050 -ac 1 -i ST1.adpcm_psx ST1.wav

Please provide such an input file.

Carl Eugen
_______________________________________________
ffmpeg-user mailing list
[hidden email]
http://ffmpeg.org/mailman/listinfo/ffmpeg-user

To unsubscribe, visit link above, or email
[hidden email] with subject "unsubscribe".
Reply | Threaded
Open this post in threaded view
|

Re: Decoding adpcm_psx

Markus Laaja
Excuse me for attaching the file directly.
Successful conversion should yield 21840 samples in 22khz, mono.
The first two bytes might be (non-standard) header info, but omitting
them from the file doesn't seem to help here.

Here's the configuration output by ffmpeg just in case.

   configuration: --enable-gpl --enable-version3 --enable-sdl2
--enable-bzlib --enable-fontconfig --enable-gnutls --enable-iconv
--enable-libass --enable-libbluray --enable-libfreetype
--enable-libmp3lame --enable-libopencore-amrnb
--enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus
--enable-libshine --enable-libsnappy --enable-libsoxr --enable-libtheora
--enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp
--enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg
--enable-lzma --enable-zlib --enable-gmp --enable-libvidstab
--enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa
--enable-libspeex --enable-libxvid --enable-libaom --enable-libmfx
--enable-amf --enable-ffnvcodec --enable-cuvid --enable-d3d11va
--enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth



On 27.10.2018 00:55, Carl Eugen Hoyos wrote:

>
>
>> Am 26.10.2018 um 21:12 schrieb Markus Laaja <[hidden email]>:
>>
>> Greetings.
>> In short, I'm running into constant input errors when trying to decode from different adpcm formats.
>> Compiling ffmpeg on a linux environment to see if it helps, is way beyond my reach just to solve this, unfortunately.
>> Can anyone confirm this shouldn't happen?
>> Thanks for everyone in advance.
>>
>> The input and output cut short:
>>
>> D:\ffmpeg-4.0.2-win32-static\bin>ffmpeg -f adpcm_psx -ar 22050 -ac 1 -i ST1.adpcm_psx ST1.wav
> Please provide such an input file.
>
> Carl Eugen
> _______________________________________________
> ffmpeg-user mailing list
> [hidden email]
> http://ffmpeg.org/mailman/listinfo/ffmpeg-user
>
> To unsubscribe, visit link above, or email
> [hidden email] with subject "unsubscribe".

_______________________________________________
ffmpeg-user mailing list
[hidden email]
http://ffmpeg.org/mailman/listinfo/ffmpeg-user

To unsubscribe, visit link above, or email
[hidden email] with subject "unsubscribe".

ST1.adpcm_psx (16K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Decoding adpcm_psx

Paul B Mahol
On 10/27/18, Markus Laaja <[hidden email]> wrote:
> Excuse me for attaching the file directly.
> Successful conversion should yield 21840 samples in 22khz, mono.
> The first two bytes might be (non-standard) header info, but omitting
> them from the file doesn't seem to help here.
>
> Here's the configuration output by ffmpeg just in case.

If it is not supported by vgmstream already, it can not be supported
by ffmpeg either.
_______________________________________________
ffmpeg-user mailing list
[hidden email]
http://ffmpeg.org/mailman/listinfo/ffmpeg-user

To unsubscribe, visit link above, or email
[hidden email] with subject "unsubscribe".
Reply | Threaded
Open this post in threaded view
|

Re: Decoding adpcm_psx

Carl Eugen Hoyos-2
In reply to this post by Markus Laaja
2018-10-27 17:14 GMT+02:00, Markus Laaja <[hidden email]>:
> Excuse me for attaching the file directly.
> Successful conversion should yield 21840 samples in 22khz, mono.

Is it supposed to be (similar to) the attached file?

Can you tell us anything about the file? It looks hard to auto-detect,
where does it come from?

Thank you, Carl Eugen

_______________________________________________
ffmpeg-user mailing list
[hidden email]
http://ffmpeg.org/mailman/listinfo/ffmpeg-user

To unsubscribe, visit link above, or email
[hidden email] with subject "unsubscribe".

ST1.flac (57K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Decoding adpcm_psx

Markus Laaja
Oh my. Almost bitwise identical file with the one I converted using PSound.
Could you do the conversion with FFmpeg or VGMstream and if so, how did
you do it?
VGMstream apparently only supports file formats with known headers and
cannot be forced to decode "broken" files.

The file comes from Final Fantasy 7 and though has no header, the audio
stream itself is supposed to be compatible with
.vag/.vab format. The file ext is by me, to distinguish it somehow from
known formats.
Should be decodable using this code
https://github.com/MoochMcGee/super-hpsx64/blob/master/hps1x64/src/spu/src/adpcm.cpp

The reason I'm trying to use FFmpeg is that the input format can be forced,
potentially helping me to convert the samples PSound doesn't find.


On 28.10.2018 00:21, Carl Eugen Hoyos wrote:

> 2018-10-27 17:14 GMT+02:00, Markus Laaja <[hidden email]>:
>> Excuse me for attaching the file directly.
>> Successful conversion should yield 21840 samples in 22khz, mono.
> Is it supposed to be (similar to) the attached file?
>
> Can you tell us anything about the file? It looks hard to auto-detect,
> where does it come from?
>
> Thank you, Carl Eugen
>
>
> _______________________________________________
> ffmpeg-user mailing list
> [hidden email]
> http://ffmpeg.org/mailman/listinfo/ffmpeg-user
>
> To unsubscribe, visit link above, or email
> [hidden email] with subject "unsubscribe".

_______________________________________________
ffmpeg-user mailing list
[hidden email]
http://ffmpeg.org/mailman/listinfo/ffmpeg-user

To unsubscribe, visit link above, or email
[hidden email] with subject "unsubscribe".
Reply | Threaded
Open this post in threaded view
|

Re: Decoding adpcm_psx

Carl Eugen Hoyos-2
2018-10-28 0:47 GMT+02:00, Markus Laaja <[hidden email]>:
> Oh my. Almost bitwise identical file with the one I converted using PSound.

> Could you do the conversion with FFmpeg or VGMstream and if so, how did
> you do it?

I don't even know what VGMstream is, I forced the codec and block_align
in a random existing demuxer to be able to test.
As you found out, raw adpcm is not supported.

> VGMstream apparently only supports file formats with known headers and
> cannot be forced to decode "broken" files.

> The file comes from Final Fantasy 7 and though has no header,

Is there a directory structure with the exact file you attached?

> the audio stream itself is supposed to be compatible with
> .vag/.vab format.

> The file ext is by me, to distinguish it somehow from
> known formats.

What is the original file extension?

Please avoid top-posting here, Carl Eugen
_______________________________________________
ffmpeg-user mailing list
[hidden email]
http://ffmpeg.org/mailman/listinfo/ffmpeg-user

To unsubscribe, visit link above, or email
[hidden email] with subject "unsubscribe".
Reply | Threaded
Open this post in threaded view
|

Re: Decoding adpcm_psx

Markus Laaja
On 28.10.2018 02:27, Carl Eugen Hoyos wrote:
> 2018-10-28 0:47 GMT+02:00, Markus Laaja <[hidden email]>:
>
>> Could you do the conversion with FFmpeg or VGMstream and if so, how did
>> you do it?
> I don't even know what VGMstream is, I forced the codec and block_align
> in a random existing demuxer to be able to test.
> As you found out, raw adpcm is not supported.
Yes, this seems to be the case and I need to do something else.
Today I made a workaround by crafting suitable headers and using a
combination of multiple tools.

By the way, VGMstream is another decoding tool which was referred to by
another user, Paul B Mahol on 27.10.
>> The file comes from Final Fantasy 7 and though has no header,
> Is there a directory structure with the exact file you attached?
There should be no structures in the file I attached, as far as I know.
Just one stream, mono audio.
I separated it from a file which holds all the instrument sample data,
laid out one after another, only separated by 16 bytes of 0x00.
The game keeps track of the data with the help of another file, which
has hard pointers for each sample.

>
>> the audio stream itself is supposed to be compatible with
>> .vag/.vab format.
>>
>> The file ext is by me, to distinguish it somehow from
>> known formats.
> What is the original file extension?
The file is called "INSTR.ALL" and it's probably unique to this game in
its simplicity.
Final Fantasy 8 uses a similar way to store the samples, but it's way
more flexible
and is already supported by VGMstream, it seems.

Well, I think that's all for it now. Thank you for all your trouble!

_______________________________________________
ffmpeg-user mailing list
[hidden email]
http://ffmpeg.org/mailman/listinfo/ffmpeg-user

To unsubscribe, visit link above, or email
[hidden email] with subject "unsubscribe".