Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: vgmstream plugin decode XMA incorrectly (Read 1879 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

vgmstream plugin decode XMA incorrectly

Hi, kode54.
I'm using vgmstream plugin r1050-148-g6a4577f
and when playing xma audio(from xbox360 rip), I found 2 problems:
  1. last few seconds cut out suddenly and become silence before the seekbar reach the end. this happens on every xma file
  2. playback speed faster than normal. this happens on some xma file.

I also use towav.exe to decode the xma file to wave file, and this wave file playback with no problem I mentioned above

Here is the zip package,.
sample xma package
contain a sample of xma file "ar2_big_lp3.xma" and "towav.exe". towav usage: towav.exe inputfile
I upload it to the megaupload since I can't upload it to this forum.

I think this maybe a bug in vgmstream plugin.


Re: vgmstream plugin decode XMA incorrectly

Reply #1
  1. last few seconds cut out suddenly and become silence before the seekbar reach the end. this happens on every xma file
Enable looping as per-file, or else files will cut out when the stream ends. Feel free to report issues on the Github issue tracker, as I have co-developers who also work on issues, who may or may not be tracking this forum.

  2. playback speed faster than normal. this happens on some xma file.
This requires a hack to fix. The files themselves contain "fmt " chunks describing an XMA1 file, yet they are XMA2 files, also evidenced by the "XMA2" chunk later in the file.

A workaround needs to be added to FFmpeg's XMA parser to look for "XMA2" chunks first, and if found, disregard the RIFF "fmt " chunk. A workaround will likely be added to the XMA reader in VGMStream to pre-format a header for FFmpeg this way, before a fix makes it into FFmpeg.

I also use towav.exe to decode the xma file to wave file, and this wave file playback with no problem I mentioned above
towav.exe also cuts off the leading 576 samples of the file, offsetting the loop positions.

E: Okay, I was wrong. The headers are parsed correctly by VGMStream. Something is up with your files. Please forward them to the Github bug tracker.

 

Re: vgmstream plugin decode XMA incorrectly

Reply #2
Thank you for your reply, kode54.
  I'll report this to Github bug tracker.
 
  Oh, and about cut out problem, you said "Enable looping as per-file", do you mean to check the "Playback-->Order-->Repeat (track)" on? 
this seems no fix to the problem, still lost last few seconds of music.

Re: vgmstream plugin decode XMA incorrectly

Reply #3
Yeah, this file seems to be a different case. It will need careful examination.

Re: vgmstream plugin decode XMA incorrectly

Reply #4
Got it. Thank you kode54.