Menu

#303 AIF files fail normalisation or playback

open
None
3
2011-07-31
2010-03-16
No

Xena v5.0.0 Stable Branch. Audio plugin v0.5.5 b10.

Xena viewer can't playback normalised AIF audio files. Other AIF files fail normalisation. Tested in Linux only.

To reproduce:
1. Normalise AIF file.
2. Use Xena Viewer to open AIF file.
3. Click play.
Result: No error is displayed in the GUI - I just can't hear anything being played. The following error is displayed in the console:

java.lang.IllegalArgumentException: unable to convert FLAC 96000.0 Hz, 24 bit, stereo, unknown frame size, unknown frame rate, to PCM_SIGNED 96000.0 Hz, 16 bit, stereo, 4 bytes/frame, little-endian
at org.kc7bfi.jflac.sound.spi.FlacFormatConversionProvider.getAudioInputStream(FlacFormatConversionProvider.java:298)
at au.gov.naa.digipres.xena.plugin.audio.AudioPlayerView.initAudioLine(AudioPlayerView.java:130)
at au.gov.naa.digipres.xena.plugin.audio.AudioPlayerView.access$400(AudioPlayerView.java:50)
at au.gov.naa.digipres.xena.plugin.audio.AudioPlayerView$1.actionPerformed(AudioPlayerView.java:95)

I have reproduced the above with a couple of different AIF files. File command gives: outputfile.aif: IFF data, AIFF audio or alaw.aifc: IFF data, AIFF-C compressed audio. I can supply a variety of samples. I have also checked that the version of flac I'm running is 1.2.1.

Some AIF files fail normalisation with the following error displayed in the GUI and console:

java.io.IOException: An error occured in the flac normaliser. Please ensure you are using Flac version 1.2.1 or later.NOTE: --keep-foreign-metadata is a new feature; make sure to test the output file before deleting the original.

flac 1.2.1, Copyright (C) 2000,2001,2002,2003,2004,2005,2006,2007 Josh Coalson
flac comes with ABSOLUTELY NO WARRANTY. This is free software, and you are
welcome to redistribute it under certain conditions. Type `flac' for details.

emperor_gong2.aif: ERROR reading foreign metadata: invalid AIFF file: unexpected EOF (012)

Trace:
au.gov.naa.digipres.xena.kernel.normalise.NormaliserManager.parse(NormaliserManager.java:824)
au.gov.naa.digipres.xena.kernel.normalise.NormaliserManager.normalise(NormaliserManager.java:1005)
au.gov.naa.digipres.xena.core.Xena.normalise(Xena.java:599)
au.gov.naa.digipres.xena.core.Xena.normalise(Xena.java:543)
au.gov.naa.digipres.xena.litegui.NormalisationThread.normaliseFile(NormalisationThread.java:328)
au.gov.naa.digipres.xena.litegui.NormalisationThread.normaliseStandard(NormalisationThread.java:250)
au.gov.naa.digipres.xena.litegui.NormalisationThread.run(NormalisationThread.java:191)

Discussion

  • Allan Cunliffe

    Allan Cunliffe - 2010-03-16

    Errors from failed normalisation vary, depending on the type of AIFF file.

     
  • Daniel Black

    Daniel Black - 2011-01-18

    could be related to:
    https://sourceforge.net/tracker/?func=detail&aid=2410731&group_id=13478&atid=113478

    1.
    are outputs playable otherwise using a different program?

    2.
    emperor_gong2.aif: definately seems to be flac --foriegn-metadata releated in the flac library. This seems to be going through a slow bugfix phase.

    error handling at NormaliserManager.java:824 is hiding underlying backtrace. Can this code be improved to place a more thorough output of the original backtrace?

    warning: org.kc7bfi.jflac source code is only available on the sf git for project jflac - still active despite slow release cycle

     
  • Allan Cunliffe

    Allan Cunliffe - 2011-02-15

    The AIF files play OK in VLC and Audacity.

     
  • Michael Carden

    Michael Carden - 2011-07-31
    • priority: 5 --> 3
    • assigned_to: matthewoliver --> terryoneill
     

Log in to post a comment.