Audio

From SpinetiX Support Wiki

Jump to: navigation, search


Audio output

Audio output or audio out simply refers to an audio signal, digital or analog, driven out from one device (in this case, a SpinetiX player) to another device’s audio input. All SpinetiX players are capable of outputting both digital and analog audio.

Note Note:
Audio decoding and audio output require some CPU power, therefore enabling the audio on the player might have an influence on the overall rendering quality of the content.

Enable audio output

The audio output is disabled by default on the player, it can be enabled by activating the "Enable audio output" check-box option from Control CenterDisplay & Audio page, respectively Display Settings page >Advanced tab on legacy players.

Digital audio output

The HMP400 and HMP400W players can output digital audio/video over the HDMI port, the DisplayPort USB-C port, as well as digital audio over any of the USB-C ports when using an adapter/device capable of active digital-to-analog conversion (DAC). These players support up to 8 audio channels (5.1 and 7.1 surround sound) on the HDMI and DisplayPort outputs, starting with DSOS 4.7.0.

The HMP350, HMP300, DiVA, and legacy players can transmit a digital audio signal, along with a video signal, on the HDMI port.

Note Note:
HDCP content via the HDMI port is not supported; HDCP protected content will not be played.

Analog audio output

The players can transmit a two-channel (i.e., stereo) line-level analog audio signal on the dedicated output connector:

Note Notes:
  • For built-in analog audio output on HMP400/HMP400W (DSOS 4.6.2 or later), we recommend using the SpinetiX USB-C analog audio cable (SX-HW-UCAUD), which is a true analog cable conforming to the USB-C alternate audio specification. It is purely passive, so no risk regarding the reliability of active electronic components, and the noise level and distortion have been validated in our lab.
  • Simultaneous audio via both HDMI (digital) and 3.5 mm jack (analog) is supported only on legacy players; nevertheless, we do not recommend using both outputs in the same environment as there might be phase/sync issues depending on the screen or HDMI decoder.
The players' analog stereo audio line output is powered by a PCM5121 integrated circuit, which provides an unbalanced, ground-centered output signal, full-scale at up to 2.1 VRMS or ~6.0 Vp-p (+/- 3.0V). Transposed to analog audio levels, this is equivalent to 8.66 dBu (reference 0.775 VRMS) or 6.44 dBV (reference 1.0 VRMS). As such, the analog audio outputs are suitable to drive professional audio equipment (+4dBu pro line level) with a margin of 4.66 dB or consumer equipment (-10 dBV consumer level).

Audio decoding

Note  
Because video and audio are often used together, more details on this topic are available under Video decoding page.

File formats

The following container formats are supported for files with audio, on all player models, unless noted otherwise:

Extension Description Audio codecs Notes
.mp3 Raw MPEG audio elementary stream MPEG Audio Layer III
.m4a, .mp4 MPEG-4 Part 14 Audio Only AAC
.wma Raw WMA elementary stream WMA2
.wav RIFF Audio File Format PCM, DTS
.ac3 Raw AC-3 elementary stream AC-3 Not supported on HMP200, HMP130, and HMP100.
.mka Matroska Audio Only AAC Not supported on HMP200, HMP130, and HMP100.
.aiff, .aif Audio Interchange File Format PCM Supported only on HMP200, HMP130 and HMP100.
Note Note:
Audio files are not supported and cannot be uploaded as Fusion content.

Codecs

Supported audio codecs

  • AAC
    Advanced Audio Coding (AAC) is an audio coding standard for lossy digital audio compression. Designed to be the successor of the MP3 format, AAC generally achieves better sound quality than MP3 at similar bit rates.AAC has been standardized by ISO and IEC, as part of the MPEG-2 and MPEG-4 specifications. High Efficiency Advanced Audio Coding (HE-AAC) which is part of MPEG-4 Audio is an extension of Low Complexity AAC (AAC LC).
    Supported profiles (up to 6 channels input): (MPEG-2 Part 7) Low Complexity Profile, (MPEG-4 Part 3) AAC Profile and High-Efficiency AAC Profile (note that HE-AAC v2 profile is supported only on DiVA, HMP350 and HMP300; up to 8 channels input).
  • MPEG-1/2 Layer III (MP3)
    MPEG-1 or MPEG-2 Audio Layer III, more commonly referred to as MP3, is an audio coding format for digital audio which uses a form of lossy data compression. Supported: 48KHz max sample rate and 2 channels. The previous versions: MPEG-1/2 Audio Layer II (MP2) and MPEG-1 Audio Layer I (MP1) are supported as well;
  • Windows Media Audio (WMA v2).
    WMA is a lossy audio codec which can encode audio signals sampled at up to 48 kHz with up to two discrete channels (stereo). Like AAC, WMA was intended to address perceived deficiencies in the MP3 standard.
  • Linear PCM (LPCM);
    Linear pulse-code modulation (LPCM) is a specific type of PCM where the quantization levels are linearly uniform. Supported only on HMP200, HMP130 and HMP100.
  • ITU-T G.711 and G.726;
    G.711 is an ITU-T standard for audio companding. It is primarily used in telephony. G.726 is an ITU-T ADPCM speech codec standard covering the transmission of voice. Supported only on HMP200, HMP130 and HMP100.
  • AC3 (Dolby Digital)
    Dolby Digital is the name for audio compression technologies, developed by Dolby Laboratories, containing up to six discrete channels of sound. AC-3 supports audio sample-rates up to 48 kHz. Supported on DiVA, HMP350 and HMP300 players.

Unsupported audio codecs

This list is not exhaustive and any codec that is not written above, should be considered as part of this list.

  • 24-bit PCM audio;
  • MPEG-4 SLS (HD-AAC);
  • Raw AAC files (use AAC within an MP4 or M4A file instead!);
  • RealAudio.

Background audio playback

A background audio playlist can be done in two ways:

  1. Create a playlist of audio files in your Elementi project, make sure that it is set to loop, and include it in the content to be rendered. A media playlist widget can also be used.
  2. Create an "index.m3u8" file (plain-text file which uses UTF-8-encoded characters) in your project, where each entry is a local path name (e.g., audio1.mp3) or a full URL to the audio file. This file is automatically detected and rendered independently of any other audio/video content being present within the regular content. This feature was added in firmware 4.1.0.

Audio level control

Using Elementi

It is possible to control the audio level of media content in Elementi, using the "audio-level" property of the media layer, as follows:

  1. Open the Layer Properties dialog, Advanced tab.
  2. Click on the "Click to add..." field under the "Name" column until the selection box is expanded.
  3. Select the "audio-level" property from the list.
  4. Click on the right column next to it (under the "Value" column).
  5. Enter a numeric value between 0 (no audio) and 1 (maximum level).
  6. Press the "Enter" key to validate the chosen value.
  7. Click on the "OK" button to save the changes.

Advanced

For advanced users, the audio level can be changed through jSignage (via the audioLevel attribute) or directly within the SVG code (via the audio-level property). The audio level can be set on:

  • the animation / audio / video elements individually,
  • on the entire document using a <set> element. (Note that the audio-level attribute doesn't have any effect when used directly on the <svg> element).

Example of SVG code:

<svg xmlns="http://www.w3.org/2000/svg" [...] >
  <set attributeName="audio-level" to="0.7"/> 
  ...
  <video audio-level="0.5" height="360" width="640" xlink:href="my_video.avi" id="my_video">
  ...
</svg>

Example of jSignage code (using the attr function):

$('#my_video').attr( 'audio-level', 0 ); // mute the audio

Audio content in Fusion

Note  
This section applies only to HMP200, HMP130, and HMP100 devices.

Audio files cannot be directly uploaded as Fusion content, however it is possible to use audio content within Fusion.

The solution is to upload the audio files via a Style Pack or configure the player to pull them into the "publish" folder through Pull Mode, and then include the audio content into a Fusion Skin or a Fusion Template.

Troubleshooting

  • When using audio and interactivity make sure that the Reduce latency to 60ms when events are received option is NOT enabled.
  • Using audio in the background, while rendering a complex project may need special optimizations during content creation, otherwise, the audio may shutter.
    For this, you need to identify the content that is "heavy" to render by the player (see the player logs) and optimize it (if possible) or remove it.
  • In some cases, the audio may play only for a few seconds and then stay silent.
    This is the result of non-optimal multiplexing of the audio and video streams that requires more than 1 MB of buffering of the audio or video stream in order to keep it in sync with the other. In this case, the player.log has the following error:
    Stream demuxing failed because more than 1048576 bytes of buffering is required
    Re-encoding the media, either within Elementi 2015 (or later) or with another application (like FFMpeg) should fix the image freeze or the audio lost. Alternatively, the spx:maxDemuxingBufferSize attribute could be increased.
  • Skipping granule errors for MP3 files
    The resources.log might show decoding errors at INFO level for MP3 files. This error (skipping granule) is harmless and can usually be ignored. Constant bit rate MP3s can use a Bit Reservoir which can save redundant bits in a frame for the next frame if they are not all used (i.e. if the content is not that complex). Part of the next frame is then decoded in advance. If the file has been edited in the middle of two frames that use this, then the granule is discarded. It should normally have next to no audible difference, as each granule represents a few milliseconds of the file.
This page was last modified on 30 January 2024, at 12:01.