Welcome,

You're successfully signed up for the Dolby Developer Program and have unlocked all of the premium content including the Dolby Audio API, the Dolby Audio Plug-ins, the Quickstart Guide, and the White Paper

Okay!
  • As an Amazon App Developer, you now have access to Dolby® Digital Plus™, which is built into every Kindle Fire™ HD & HDX product. This means you can now include one of the world’s most advanced, recognizable, and trusted entertainment experiences directly in your application.

    Dolby is redefining the way your customers enjoy entertainment. Dolby® Digital Plus™ produces dynamic surround sound, while simultaneously making overall audio more consistent. The impact on music, movies, and games is noticeable and immediate. (Try this Demo )

    Dolby is introducing the Dolby® Audio API, which only takes 15 minutes to integrate, It's also 100% free!

    Plug-ins are available for Unity, Marmalade, Adobe Air, Xamarin, and Cordova

    Benefits include:

    • Volume Leveling: maintains constant volume across all content and applications.
    • Surround Virtualizer: creates a surround sound experience.
    • Audio Optimizer: gives you natural and louder, distortion-free sound.
    • Dolby Digital Pass-Through: allows direct home theater connections for a full multichannel experience.

    Download the Dolby® Audio API today and make your Kindle Fire™ Game sound better than ever.  

    Quick Start Guide

    To view the Dolby Audio API Quick Start Guide, click the direct link below.
    Dolby Audio API Quick Start Guide 0.0 mb
    VIEW THE GUIDE

    API Package

    Dolby® Audio API for Android™
    Dolby Audio API 2.2 mb
    BROWSE PACKAGE

    Code Snippet

    																// This is for DEMO purposes only, for a more in-depth use of the API make sure to download the Dolby Audio API Package for documentation and sample code
    
    import android.app.Activity;
    import android.media.MediaPlayer;
    import android.os.Bundle;
    import android.view.View;
    import android.widget.Button;
    import android.widget.Toast;
    
    import com.dolby.dap.DolbyAudioProcessing;
    import com.dolby.dap.OnDolbyAudioProcessingEventListener;
    import com.dolby.dap.DolbyAudioProcessing.PROFILE;
    
    public class MainActivity
    extends Activity implements MediaPlayer.OnCompletionListener, OnDolbyAudioProcessingEventListener
    {
    Button btnPlay;
    MediaPlayer mPlayer;
    DolbyAudioProcessing mDolbyAudioProcessing;
    
    @Override
    public void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      btnPlay = new Button(this);
      btnPlay.setText("Play");
      btnPlay.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
          if(mPlayer == null) {
            try {
              mPlayer = MediaPlayer.create(
                MainActivity.this,
                R.raw.audio_dolby_living_room);
              mPlayer.start();
            }
            catch (Exception e) {
              e.printStackTrace();
            }
          }
          else {
            mPlayer.stop();
            mPlayer.release();
            mPlayer = null;
          }
        }
      });
    setContentView(btnPlay);
    
    mDolbyAudioProcessing = DolbyAudioProcessing.getDolbyAudioProcessing(this, DolbyAudioProcessing.PROFILE.GAME, this);
    
    if (mDolbyAudioProcessing == null){
    	Toast.makeText(this, "Dolby isn't available on this device", Toast.LENGTH_SHORT).show();
    	finish();
    	return;
    }
    
    }
    
    @Override
    public void onDestroy() {
      super.onDestroy();
      if(mPlayer != null) {
        mPlayer.release();
      }	  
    
    this.releaseDolbyAudioProcessing();  
      
    }
    
    //OnCompletionListener Methods
    @Override
    public void onCompletion(MediaPlayer mp) {
      mPlayer.release();
      mPlayer = null;
    }
    
    @Override
    public void onDolbyAudioProcessingClientConnected() {
    }
    
    @Override
    public void onDolbyAudioProcessingClientDisconnected(){
    }
    
    @Override
    public void onDolbyAudioProcessingProfileSelected(PROFILE arg0){
    }
    
    @Override
    public void onDolbyAudioProcessingEnabled(boolean arg0) {
    	// TODO Auto-generated method stub
    }	
    
    public void releaseDolbyAudioProcessing(){
    	if (mDolbyAudioProcessing != null) {
    		mDolbyAudioProcessing.release();
    		mDolbyAudioProcessing = null;
    	}
    	}
    }
    															
    																// Dolby Audio Plug-in for Unity 3D available for download in the frameworks tab.
    
    using UnityEngine;
    using System.Collections;
    using System.Runtime.InteropServices; //Allows us to use DLLImport
    
    public class DolbyController : MonoBehaviour
    {
    
      #if UNITY_ANDROID && !UNITY_EDITOR
      [DllImport("DSPlugin")]
      public static extern bool isAvailable();
      [DllImport("DSPlugin")]
      public static extern int initialize();
      [DllImport("DSPlugin")]
      public static extern int setProfile(int profileid);
      [DllImport("DSPlugin")]
      public static extern int suspendSession();
      [DllImport("DSPlugin")]
      public static extern int restartSession();
      [DllImport("DSPlugin")]
      public static extern void release();
    
      void Start() {
        if (isAvailable()) {
          InitDolby(10);
        }
      }
    
      void InitDolby(int limit) {
        if (initialize() > -1) {
          setProfile(2); /* Set Profile to "Game" */
        } else if (limit > 0) {
          limit --;
          StartCoroutine(Delay(limit));
        }
      }
    
      IEnumerator Delay(int limit){
        // Wait 100ms to make sure Dolby service is enabled
        yield return new WaitForSeconds(0.1f);
        InitDolby(limit);
      }
    
      void OnApplicationPause(bool pauseStatus) {
        if (!pauseStatus) return;
        suspendSession();
      }
    
      void OnApplicationFocus(bool focusStatus) {
        if (!focusStatus) return;
        restartSession();
      }
    
      void OnApplicationQuit() {
        release();
      }
      #endif
    }
    															
    																// Dolby Audio Plug-in for AIR available for download in the frameworks tab.
    
    try{
    if (DolbyAudio.isSupported())
    {
    DolbyAudio.create();
    DolbyAudio.audio.setDolbyAudioEnabled(true);
    textDebug("Dolby audio enabled.");
    } else {
    textDebug("Dolby Audio Processing not available on this device.");
    }
    }catch(e:Error){
    textDebug("Error trying dolby audio"+e.toString());
    }
    															
    																// Dolby Audio Plug-in for Cordova available for download in the frameworks tab.
    
    <script type="text/javascript">
    		
            var onDeviceReady=function(){
    		
            //initialize Dolby Audio Processing
            dolby.dap.initialize(dolby.DapProfile.GAME, onSuccess, onFail);
            }
            
            function onSuccess() {
            }
    
            function onFail(err) {
            }
              
    </script>
    															

    Source code provided under Open Source Initiative-The BSD License

    Specs

      Format Support Codec Support Audio Enhancements
    Platform Dolby Digital(AC3) Dolby Digital Plus (E-AC3) Dolby Digital API Dolby Digital Plus API Dolby API
    Kindle Fire™ HD (2012)
    Kindle Fire™ HD (2013)
    Kindle Fire™ HDX (2013)

    Dolby Digital Plus

    Dolby® Digital Plus™, or Enhanced AC-3 (E-AC-3), is an advanced audio codec designed specifically for evolving media. It can be used in Smartphone Apps, Online Streaming Services, PCs, Tablets, Smartphones and Home Theatres. Dolby Digital Plus defines high-fidelity audio. Dolby® Digital Plus™ employs exclusive compression algorithms to efficiently reduce the file size of digital audio programs. This allows easier transmission and storage. It also brings multichannel capability to bandwidth-constrained applications, mobile networks and Internet-delivered entertainment.

    Sample App Downloads

    Dolby® Audio API for Android™ Sample App
    DolbyAudioExample.apk.zip 2.3 mb
    DOWNLOAD

    Android™ Developers, you can take advantage of Dolby® Digital Plus™, which is built into many Android™ devices out in the market. This means your Android™ Applications and Games can have amazing immersive sound by integrating the Dolby® Audio API for Android™

    The impact on music, movies, and games is noticeable and immediate. (Try this Demo )

    Dolby is introducing the Dolby® Audio API for Android™, which only takes 15 minutes to integrate, It's also 100% free!

    Plug-ins are available for Unity, Marmalade, Adobe Air, Xamarin, and Cordova

    Benefits include:

    • Volume Maximizing: outputs loudness without any distortion
    • Volume Leveling: maintains constant volume across all content and applications.
    • Surround Virtualizer: creates a surround sound experience.
    • Audio Optimizer: gives you natural and clearer sound.
    • Dolby Digital Pass-Through: allows direct home theater connections for a full multichannel experience.

    So it's time to stand out from the crowd. Download the Dolby® Audio API for Android™ today!

    Quick Start Guide

    To view the Dolby Audio API Quick Start Guide, click the direct link below.
    Dolby Audio API Quick Start Guide 0.0 mb
    VIEW THE GUIDE

    API Package

    Dolby® Audio API for Android™
    Dolby Audio API 2.2 mb
    BROWSE PACKAGE

    Code Snippet

    																// This is for DEMO purposes only, for a more in-depth use of the API make sure to download the Dolby Audio API Package for documentation and sample code
    
    import android.app.Activity;
    import android.media.MediaPlayer;
    import android.os.Bundle;
    import android.view.View;
    import android.widget.Button;
    import android.widget.Toast;
    
    import com.dolby.dap.DolbyAudioProcessing;
    import com.dolby.dap.OnDolbyAudioProcessingEventListener;
    import com.dolby.dap.DolbyAudioProcessing.PROFILE;
    
    public class MainActivity
    extends Activity implements MediaPlayer.OnCompletionListener, OnDolbyAudioProcessingEventListener
    {
    Button btnPlay;
    MediaPlayer mPlayer;
    DolbyAudioProcessing mDolbyAudioProcessing;
    
    @Override
    public void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      btnPlay = new Button(this);
      btnPlay.setText("Play");
      btnPlay.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
          if(mPlayer == null) {
            try {
              mPlayer = MediaPlayer.create(
                MainActivity.this,
                R.raw.audio_dolby_living_room);
              mPlayer.start();
            }
            catch (Exception e) {
              e.printStackTrace();
            }
          }
          else {
            mPlayer.stop();
            mPlayer.release();
            mPlayer = null;
          }
        }
      });
    setContentView(btnPlay);
    
    mDolbyAudioProcessing = DolbyAudioProcessing.getDolbyAudioProcessing(this, DolbyAudioProcessing.PROFILE.GAME, this);
    
    if (mDolbyAudioProcessing == null){
    	Toast.makeText(this, "Dolby isn't available on this device", Toast.LENGTH_SHORT).show();
    	finish();
    	return;
    }
    
    }
    
    @Override
    public void onDestroy() {
      super.onDestroy();
      if(mPlayer != null) {
        mPlayer.release();
      }	  
    
    this.releaseDolbyAudioProcessing();  
      
    }
    
    //OnCompletionListener Methods
    @Override
    public void onCompletion(MediaPlayer mp) {
      mPlayer.release();
      mPlayer = null;
    }
    
    @Override
    public void onDolbyAudioProcessingClientConnected() {
    }
    
    @Override
    public void onDolbyAudioProcessingClientDisconnected(){
    }
    
    @Override
    public void onDolbyAudioProcessingProfileSelected(PROFILE arg0){
    }
    
    @Override
    public void onDolbyAudioProcessingEnabled(boolean arg0) {
    	// TODO Auto-generated method stub
    }	
    
    public void releaseDolbyAudioProcessing(){
    	if (mDolbyAudioProcessing != null) {
    		mDolbyAudioProcessing.release();
    		mDolbyAudioProcessing = null;
    	}
    	}
    }
    															
    																// Dolby Audio Plug-in for Unity 3D available for download in the frameworks tab.
    
    
    using UnityEngine;
    using System.Collections;
    using System.Runtime.InteropServices; //Allows us to use DLLImport
    
    public class DolbyController : MonoBehaviour
    {
    
      #if UNITY_ANDROID && !UNITY_EDITOR
      [DllImport("DSPlugin")]
      public static extern bool isAvailable();
      [DllImport("DSJavaPlugin")]
      public static extern int initialize();
      [DllImport("DSJavaPlugin")]
      public static extern int setProfile(int profileid);
      [DllImport("DSJavaPlugin")]
      public static extern int suspendSession();
      [DllImport("DSJavaPlugin")]
      public static extern int restartSession();
      [DllImport("DSJavaPlugin")]
      public static extern void release();
    
      void Start() {
        if (isAvailable()) {
          InitDolby(10);
        }
      }
    
      void InitDolby(int limit) {
        if (initialize() > -1) {
          setProfile(2); /* Set Profile to "Game" */
        } else if (limit > 0) {
          limit --;
          StartCoroutine(Delay(limit));
        }
      }
    
      IEnumerator Delay(int limit){
        // Wait 100ms to make sure Dolby service is enabled
        yield return new WaitForSeconds(0.1f);
        InitDolby(limit);
      }
    
      void OnApplicationPause(bool pauseStatus) {
        if (!pauseStatus) return;
        suspendSession();
      }
    
      void OnApplicationFocus(bool focusStatus) {
        if (!focusStatus) return;
        restartSession();
      }
    
      void OnApplicationQuit() {
        release();
      }
      #endif
    }
    															
    																// Dolby Audio Plug-in for AIR available for download in the frameworks tab.
    
    try{
    if (DolbyAudio.isSupported())
    {
    DolbyAudio.create();
    DolbyAudio.audio.setDolbyAudioEnabled(true);
    textDebug("Dolby audio enabled.");
    } else {
    textDebug("Dolby Audio Processing not available on this device.");
    }
    }catch(e:Error){
    textDebug("Error trying dolby audio"+e.toString());
    }
    															
    																// Dolby Audio Plug-in for Cordova available for download in the frameworks tab.
    
    <script type="text/javascript">
    		
            var onDeviceReady=function(){
    		
            //initialize Dolby Audio Processing
            dolby.dap.initialize(dolby.DapProfile.GAME, onSuccess, onFail);
            }
            
            function onSuccess() {
            }
    
            function onFail(err) {
            }
            
              
    </script>
    															

    Source code provided under Open Source Initiative-The BSD License

    Specs

      Format Support Codec Support Audio Enhancements
    Platform Dolby Digital(AC3) Dolby Digital Plus (E-AC3) Dolby Digital API Dolby Digital Plus API Dolby API
    Android Devices w/ Dolby Tech

    Dolby Digital Plus

    Dolby® Digital Plus™, or Enhanced AC-3 (E-AC-3), is an advanced audio codec designed specifically for evolving media. It can be used in Smartphone Apps, Online Streaming Services, PCs, Tablets, Smartphones and Home Theaters. Dolby Digital Plus defines high-fidelity audio. Dolby® Digital Plus™ employs exclusive compression algorithms to efficiently reduce the file size of digital audio programs. This allows easier transmission and storage. It also brings multichannel capability to bandwidth-constrained applications, mobile networks and Internet-delivered entertainment.

    Sample App Downloads

    Dolby® Audio API for Android™ Sample App
    DolbyAudioExample.apk.zip 2.3 mb
    DOWNLOAD

    DOLBY CONSOLE DEVELOPMENT

    Your Game, Dolby Technology

    Dolby® surround sound puts gamers right in the middle of the action, providing a competitive advantage and making the experience more exciting and real. Featured in today’s top games, Dolby technologies enhance the impact of the dazzling graphics with striking surround sound that makes players feel as if they are actually inside the game.

    Dolby technologies help you create and deliver stunning multichannel sound on any game platform: Xbox®, PlayStation®, Wii™, or PC. Dolby encoding gives active sound positioning that follows the screen action for a listening experience that rivals Hollywood’s blockbusters.

    Audio Technologies

        
    Dolby Digital      
    Dolby Digital Plus      
    Dolby True HD      
    Dolby Pro Logic II      

    Creating Games with Dolby Technology

    It's simple and affordable to create games with Dolby® Digital or Dolby Pro Logic® II technology. The following steps describe the process.

    1. Contact Dolby Developer First, contact us. Whether you’re working on an upcoming game title, developing your next-generation in-house audio engine, or planning a new middleware product for developers, we offer custom support to suit your needs. If you are developing software for the PlayStation® 3 or PlayStation 4, please refer to information at Sony's PlayStation Developer Network. For Xbox 360® or Xbox One related documentation contact XBOX Live Developer Portal and for support contact XBOX Live Forums . The Xbox team has information particular to Dolby Digital and the Xbox consoles. For Wii™ products, take a look at the Dolby Pro Logic II support built into Nintendo's AX API.
    2. Get the logo Nearly every major game publisher has already executed our Trademark Agreement (TMA). This agreement allows publishers to use the Dolby Laboratories logo and associated trademarks. It's always a good idea to contact us to make sure your publisher is signed up and ready to proceed.
    3. Submit your game for Dolby review For quality assurance purposes, Dolby recommends that developers/publishers submit one copy of each of their products that use our technologies, so we can ensure that our technologies have been implemented in the best possible way before a title ships. Our quality assurance program can provide valuable feedback on the quality of the sound in your game title. If you are interested in receiving an evaluation from our experienced testing department, let us know. Also, if possible, any packaging, artwork, or instruction manual content that mention Dolby technologies should be submitted to Dolby for review before a product ships.
     

    Game Studio Services Program

    Our Dolby® Game Studio program can help ensure that you get the most successful results from Dolby technologies and your multichannel mix so that your audience receives the best audio experience possible.

    • Measurement and analysis of your development studios, and use of this data, with your input, to set a practical and achievable audio standard for such items as acoustic room tuning, reference recording levels, and reference SPL levels.
    • Consultation and referral services for acoustic design and audio hardware for your development studios.
    • Dolby Laboratories’ calibration for all completed facilities on an ongoing basis as determined by Dolby and you.
    • Please contact us for pricing and further information.

    Studio Design

    Bass Management

    Stereo requires the reproduction of signals from 20 Hz to 20 kHz. This is done with multi-way speaker systems, which use a combination of woofers and tweeters to achieve full-range response. These speakers are connected via a crossover network to route the appropriate frequencies to the various speakers in the system. This may be a two-way, three-way, four-way, or even-five way system, but in each case, the goal is to reproduce 20 Hz to 20 kHz evenly.

    read more

    Today's Dolby Digital consumer decoders include a bass management system to do just that. Just as with the old stereo and Dolby Surround systems, the goal is to be able to reproduce all frequencies within the system. The five main channels and extra LFE channel provide more possible combinations of speakers, including five full-range main speakers and a subwoofer for the LFE; five small speakers for the main channels and a subwoofer for both the LFE and bass redirected from all five main channels; and various combinations of the above examples.

    Studios must be able to reproduce all reasonable frequencies from each full bandwidth channel. Crossovers, subwoofers, and main speakers should work together to give flat response for each of the five main channels.

    Many manufacturers of near-field monitors make complementary subwoofers to complete the system. Larger rooms may dictate the need for more than one subwoofer to achieve adequate bass response.

    When using the LFE channel in a mixing situation, it is important to band-limit the information for this channel. During the Dolby Digital encoding process, the encoder will brickwall filter the LFE signal at 120 Hz. This is true for both professional Dolby Digital encoders, as well as the interactive encoders found in game consoles such as the Playstation 4 and Xbox One.

    Consumer decoders take the LFE signal and add any channels in need of bass management, as determined either by product design or user selection. The five main channels are then highpass filtered at either a fixed frequency of 80 Hz or a selectable frequency of 80, 100, or 120 Hz. The summation of the LFE and any other channels is lowpass filtered at the same frequency.

    While the Dolby Digital encoder and decoder together will handle bass management in decoding, it is often not feasible to use them in this way when mixing, due to the delay through the encoding and decoding process. Therefore, it is necessary to have a separate crossover system in place to handle the bass management. Many manufacturers now offer such devices for this purpose.

    To replicate what the consumer will hear, a third-order (minimum) 80 Hz filter in the LFE audio signal path to the recorder is recommended. It is advisable to include this filter in the console output before the monitor such that both the recorded information and the heard information are band-limited. Failure to include this filter will result in hearing substantial bass information above 80 Hz in the mix that will not be present in the Dolby Digital encoded version.

    Room Calibration

    Once the ability to reproduce all frequencies in each channel has been met (as described in the Bass Management section), the room must be calibrated. For each of the five main channels, pink noise is adjusted for 79 dB C-weighted slow. Many developers might find this level too loud, and may need to calibrate to a lower level.

    read more

    The LFE channel is calibrated such that each 1/3 octave band between 20 and 80 Hz is 10 dB higher than the equivalent 1/3 octave bands for any of the full-range speakers, assuming that the full-range speaker is ideally flat. This level is read from a real-time analyzer (RTA), rather than a sound pressure level (SPL) meter.

    If an RTA is not available, an SPL meter may be used to approximate the level. If an SPL meter is used with band-limited pink noise, then calibrate the subwoofer between 4 and 6 dB (C-weighted slow) higher than any of the full range speakers.

    A properly calibrated room will result in mixes that will sound correct when played back in a consumer environment. An improperly tuned room will result in mixes that will sound fine in the mixing facility, but will be incorrect in other situations. Using the guidelines above will result in a properly tuned room.

    Speaker Setup

    The following guidelines offer commonly accepted practices for setting up multichannel audio monitoring systems for game creation.

    Front Speakers

    Multichannel sound systems add a Center speaker to the Left/Right (L/R) pair used in stereo systems. To promote good imaging, all three speakers should be identical, just as conventional Left and Right stereo speakers must be matched. If all three cannot be the same model, the Center speaker may be a smaller model from the same product line.

    read more

    The front speakers should be equidistant from the listener, with their acoustic centers in the horizontal plane—that is, on-axis to the ear.

    The Center speaker may need to be positioned above or below a video monitor, forcing the acoustic centers of the three front speakers out of alignment. If this occurs, attempt to situate the speakers so the tweeters are in as close to a horizontal straight line as possible. This may require either an inverted or lateral orientation of the Center speaker, as well as rotating the tweeter (when possible) to maintain the proper dispersion characteristic.

    If the Center speaker is not equidistant with the L/R pair, signal delay may be used to obtain coincident arrivals.

    All front speakers must exhibit the same acoustic polarity. It is highly recommended that electronic signal polarity be maintained throughout the entire monitoring system.

    Surround Speakers

    Whenever possible, use the same speakers all around to achieve uniformity. If this is not feasible, the surround speakers may be smaller than the front speakers but should maintain the same character—for example, they might be smaller speakers from the same manufacturer.

    read more

    The front and surround speakers should be equidistant from the listener, with their acoustic centers in the horizontal plane that is on-axis to the ear.

    The surround speakers should achieve coincident arrival with the front speakers either as a result of equal path lengths or through alignment with signal delays.

    The Surround speakers must exhibit the same acoustic polarity as the front speakers. It is highly recommended that electronic signal polarity be maintained throughout the entire monitoring system.

    Subwoofer(s)

    The LFE channel requires the use of at least one subwoofer in the monitor system. It is equally important to include one or more subwoofers and bass management when some or all of the speakers may not cover the deepest bass in the game soundtrack.

    read more

    The bass from any channel that is not reproduced in the main speaker for that channel must be redirected to the subwoofer(s). There are now various products and techniques that handle bass management (crossover filters, bass mixing, and combining with the LFE channel in the proper mixing ratio) that can help achieve a proper monitor setup in the studio.

    It is essential to correctly integrate the subwoofer(s) with the main speakers to ensure a wide, smooth, and uniform frequency response from all five main channels. In addition, it is critical to have the LFE channel reproduced in the proper relation to the other channels.

    Positioning the subwoofer(s) often can be an arduous task and the relative location(s) will not be the same for all rooms. A certain amount of experimentation should be expected particularly when retrofitting an existing production room.

    Initially, place the subwoofer(s) near the listening position. Play program material with significant low frequency content and listen at likely subwoofer locations in the room. Locations delivering the smoothest bass response are apt to be the best choice for final subwoofer placement.

    Room Layout

    The International Telecommunications Unit, Radiocommunication Sector (ITU-R) has specifications for a listening room layout designed for the critical evaluation of multichannel programs. These recommendations are a good starting point for a mixing room setup as well. Aside from signal alignment, a specific geometry is described. With the Center speaker directly in front, position the L/R speakers 30 degrees from center (forming a 60 degree angle) and the Surround speakers 110 degrees off center.

    Artistic Considerations

    Dynamic Range

    Dynamic range is defined as the difference between the loudest possible peak and the softest sound that can be intelligibly reproduced. In games, dynamic range is used to describe the differences between the loudest sounds and the softest sounds of the game's output. For example, a game that outputs continuously loud or continuously quiet sounds is considered to have little dynamic range. A game that outputs quiet sounds as well as very loud sounds is considered to have a large amount of dynamic range.

    read more

    Utilizing dynamic range can be very effective in creating immersive environments that affect the player's emotions. For example, movie scenes that use quiet breathing and footsteps immediately followed by a loud shriek can create a sense of fear in the audience. This tactic has been used for many years in horror films. Another use of dynamic range can be to draw the player's attention in a certain direction. In a first person shooter, for example, a loud gunshot from a Surround channel can clue the player in to the location of his enemy. Conversely, a gunshot that is not substantially louder than the rest of the mix will not have the same effect.

    Another benefit of using dynamic range is found when using Dolby® Pro Logic® II. The Dolby Pro Logic II steering algorithm is based upon relative loudness, with the dominant signal in the mix being steered. Sounds that are not dominant usually fall into an "unsteered" state, causing leakage and crosstalk. If there is little dynamic range in a mix, there might not be an easily identifiable dominant signal to steer. This can cause the majority of the mix to fall into an unsteered state. Thus, mixes with more dynamic range will be reproduced closer to the sound designer's intent when listening through a Dolby Pro Logic II decoder.

    LFE Usage

    The LFE channel is a separate, limited-frequency bandwidth signal created by the mixing engineer or game engine. The LFE is delivered alongside the main channels in a Dolby Digital bitstream. The subwoofer signal is created in the decoder, and contains the LFE as well as any redirected bass from the main channels.

    read more

    This signal is created using bass management, which is performed by all Dolby Digital decoders. Through bass management, a subwoofer signal may comprise bass from any channel or combination of channels. Typically, bass frequencies from channels being replayed on small speakers are directed to the subwoofer speaker.

    If no subwoofer is present, the bass (including the LFE channel, if it exists) is redirected to the speaker(s) best able to reproduce it, usually the main stereo pair.

    In games, it is essential not to overuse the LFE. The LFE is used for delivering extra bass for cinematic impact during exceptional moments in gameplay. If overused, the cinematic impact will be diminished, as there will be no dynamic range left to exploit in the LFE channel. A good rule of thumb is to use content in the LFE channel when controller vibration is used. As with controller vibration, the LFE should be used sparingly and saved for impact, such as in the following situations:

    • The entrance of a boss at the end of a level
    • The destruction of a large, important structure
    • When firing a secret weapon used by the player that has limited ammunition
    • A very damaging explosion near the player character

    LFE should not be used in the following situations:

    • Options menu sound effects
    • Human dialogue
    • Frequent player character audio
    • Explosions far away from the player character

    Some game engines have the ability to route audio from the main channel to the LFE. This is often called an “LFE send” and is generally not recommended because a user's decoder will often sum the LFE and the redirected bass from the main channels during the decode process. If this has already been done in the game engine, the result will essentially be "double bass" present in the subwoofer. Any delays present in the overall signal delivery system will compound this problem, and might well result in comb filtering of the bass signal.

    The best way to use the LFE channel is to route unique bass signals that complement the signal routed to the main channels. This LFE signal can be created in a variety of ways, including:

    • Adding several sine waves <80 Hz that are not harmonically related
    • Processing a similar sound effect with an 80 Hz lowpass filter
    • Extracting from an LFE sample CD

    Using various settings on an attack-delay-sustain-release (ADSR) envelope, a single LFE signal can be reshaped to complement a variety of sound effects. As a result, a small library of standard LFE signals may be sufficient for most applications. A few hours in the studio with a synthesizer or sampler, combined with a bit of restraint during game creation, can result in a game that is incredibly dynamic as a result of proper use of the LFE channel.

    In most background music, it is unlikely there will be a technical need to use the LFE channel. Since the overall program level may be adjusted to render any proportion of bass perfectly, the LFE channel might be an advantage only in situations like the famous cannon shots in Tchaikovsky’s 1812 Overture.

    It is always important to remember that the Dolby Digital downmix process discards the LFE signal, so the LFE signals will not be present for users listening on stereo systems. Therefore, it is critical that any essential audio in the LFE channel be complemented (not replicated) in the main channels.

    Center Channel Usage

    Surround channels can enhance the sense of depth and space over conventional stereo, adding a new sonic dimension and fully immersing the player in the experience of the game.   A game player is already immersed in a fully enveloping world, and has the ability to directly interact with and often control the environment. As a result, a game player expects the audio associated with this environment to pan appropriately and dynamically. Passive media, such as film, often makes only subtle use of the surround speakers, as the viewer has no control over the soundfield. As a result, games tend to make much more overt use of the surround speakers, and often use them to directly drive gameplay.

    read more

    The most obvious use of surround audio is offering audio cues to drive the player toward or away from anything that is out of the limited field of view offered by a television screen. These cues can warn the player of enemy fire from a particular direction, lead her toward the location of a hidden item, or help her find a friendly non-player character by the sound of his voice.

    The use of audio clues is one of the most important aspects of surround audio for games. If implemented correctly, the surround soundfield can enhance a game tremendously. The surround soundfield can also be used to enhance the feeling of player immersion, reduce player fatigue, increase playing time, and enhance overall enjoyment of the experience. The ambience of an environment can be accurately conveyed from proper use of the front and surround speakers, and can drastically change the listener’s experience. A properly rendered surround ambience can be the difference between peering through a window and actually jumping inside the world of the game.

    The most effective way to create a surround ambience is to create an interactive environment engine that makes use of both the front and surround speakers. If a stereo interactive environment engine has already been implemented, incorporating multichannel panning is quite easy.

    Prerendered looping or streaming ambiences are often used when an interactive environment engine is not practical. If streaming or looping multichannel audio is not feasible for this purpose, multichannel reverberation may be able to create the feeling of immersion.

    Many games also send stereo ambiences to the front speakers, and then attenuate by half and route the same audio to the surround speakers. This technique can be effective in some situations, but does not convey a sense of immersion as well as true surround ambiences.

    Background music can often benefit as well from a creative use of the surrounds, whether with background singers, instruments, or effects. But as with any new tool or effect, it can be overdone and become tiresome if used to excess. When using surround audio, it is critical to maintain proper balance between ambiences, music, player character audio, and dynamically panned effects, and to leave enough headroom for the audio that drives gameplay. This is even more important in a surround soundfield, where perception of directionality is critical. If the level of nonessential audio, such as background music, is too high, it will be difficult for the player to perceive the directionality of essential audio.

    Surround Channel Usage

    In a stereo program, there is only one way to obtain a centrally placed sound image: mix the signal equally to the Left and Right channels. In a multichannel system, there are three ways to obtain this sound image:

    • Create a phantom center just as with stereo
    • Use the Center channel alone
    • Use all three front channels equally or in varied proportion
    read more

    Each approach offers advantages and drawbacks. The phantom center has been in use since stereo began, and thus is well understood. The primary disadvantage of this technique is that the listener must be equidistant from the Left and Right speakers to achieve proper center imaging. This is rarely the case in the home, especially when multiple users are playing on a single console.

    Using the Center speaker alone creates a stable center image for every listener no matter where they sit. As a result, it is most important to place sounds in the Center channel that benefit from a focused, central audio image. Sounds that are often routed directly to the Center channel include:

    • Sound effects emanating from the first-person player character
    • Onscreen dialogue during a cinematic sequence

    In contrast, it is often beneficial to position environmental sound effects among the four remaining channels (Left, Right, Left surround, and Right surround). These sound effects may include:

    • Sounds emanating from opponents or other player characters
    • Background music
    • Environmental ambiences

    Even in a game presented in a third-person perspective, it can help to route audio emanating from the player's character directly to the Center channel. This helps users distinguish their character’s sounds from audio emanating from other sources.

    To prevent the image from sounding too focused or narrow, reverb from the Center channel can be spread to the Left and Right channels. Alternatively, distributing the center image among the three front speakers allows control of the range of spatial depth and width.

    A phantom center can be reinforced by additional signals in the Center channel, or a Center channel signal can be enhanced with additional signals spread into the L/R pair. However, the more channels that are used to carry the same signal, the more likely it is that side effects may occur. Signals might interact with each other, causing the phantom image to conflict with the true center image. In systems using dissimilar speakers, or in cases where the listeners are seated off the central axis, the sound arriving from all three speakers may not blend well. Differences in arrival time can cause a comb-filtering effect, shifts in tonal color, or a smearing of the image.

    Another negative aspect of distributing a signal across the front three channels is a potential loss of audio focus, which is a primary reason for using the Center channel in the first place. Consider all of these effects when placing the exact same signal in all three front channels. In general, it is best to use the Center channel discreetly. If a loss of focus is specifically desired, process the additional signals first to change their spatial character, timbre, or prominence relative to the main center signal.

    Console Development

    PlayStation

    What technology do the PlayStation 3 and PlayStation 4 use?

    The PlayStation® 3 and PlayStation 4 (PS3™/PS4™) are able to support Dolby® Digital audio during game play. The Dolby logo on the back of the games indicate support for Dolby Digital 5.1, which will make the most of a home theater system.

    What kind of system do users need to get the most out of their PS3 or PS4?

    Many gamers are buying home-theater-in-a-box (HTIB) products, which include a Dolby Digital receiver, five main speakers, a subwoofer, and all the wiring necessary to connect the system. These products often cost around $300. They deliver between 50 and 100 watts of power to each of the main speakers, so they can make some serious sound.

    The subwoofers in particular often pack quite a punch, as they are perfectly matched to the system and can handle a lot of power. This allows many HTIBs to create bass that can deliver a massive game experience. While Dolby Digital comes standard in most of these systems, gamers often look for systems that have Dolby Pro Logic® II as well for use with a Wii™ console.

    How do users hook up their PS3 or PS4 to a Dolby Digital receiver?

    A receiver has many different inputs in the back, which allows it to function as a "switch box" between several different components. If a user connects everything properly, it will be easy to switch between their PlayStation and other game consoles or source components.

    The PS3 and PS4 feature a digital S/PDIF optical and HDMI® digital output. Both digital outputs are capable of outputting a Dolby Digital 5.1-channel signal.   For the console to be connected properly, users will need at least one free optical digital or HDMI input on their receiver. An optical digital audio cable or HDMI cable is needed to connect the digital audio output from the console to the optical or HDMI digital input on the receiver.

    Xbox

    What technology does the Xbox 360 and Xbox One use?

    The Xbox® 360® and Xbox One supports Dolby® Digital audio during game play. The Dolby Digital logo on the back of an Xbox 360 or Xbox One game indicates that the game will make the most of a home theater system.   The Xbox One doesn’t currently support Dolby Digital during game play; Microsoft is working to update the console with this capability in the near future.

    What kind of system do users need to get the most out of their Xbox?

    Many gamers are buying home-theater-in-a-box (HTIB) products, which include a Dolby Digital receiver, five main speakers, a subwoofer, and all the wiring necessary to connect the system. These products often cost around $300. They deliver between 50 and 100 watts of power to each of the main speakers, so they can make some serious sound.

    The subwoofers in these systems often pack quite a punch, as they are perfectly matched to the system and can handle a lot of power. This allows many HTIBs to create bass that can deliver a massive game experience. While Dolby Digital comes standard in most of these systems, gamers often look for systems with Dolby Pro Logic II as well for use with a Wii™ console.

    How do users hook up their Xbox 360 to a Dolby Digital receiver?

    A receiver has many different inputs in the back, which allows it to function as a "switch box" between several different components. If a user connects everything properly, it will be easy to switch between their console and other game consoles or source components.

    The Xbox 360 and Xbox One feature a digital S/PDIF optical output and an HDMI® digital output. Both digital outputs are capable of outputting a Dolby Digital 5.1-channel signal.   For the Xbox to be connected properly, users will need at least one free optical digital or HDMI input on their receiver. An optical digital audio cable or HDMI cable is needed to connect the digital audio output from the console to the optical or HDMI digital input on the receiver.

    Wii

    What technology do the Wii and Wii U use?

    The Wii™ is able to support Dolby® Pro Logic® II audio during game play. The Dolby Pro Logic II logo on the back of Nintendo Wii games indicates support for Dolby Pro Logic II, which will make the most of a home theater system.   The Wii U currently does not support Dolby Pro Logic II.

    What kind of system do users need to get the most out of their Nintendo Wii?

    Many gamers are buying home-theater-in-a-box (HTIB) products, which include a Dolby Digital and Dolby Pro Logic II receiver, five main speakers, a subwoofer, and all the wiring necessary to connect the system. These products often cost around $300. They deliver between 50 and 100 watts of power to each of the main speakers, so they can make some serious sound.  The subwoofers in particular often pack quite a punch, as they are perfectly matched to the system and can handle a lot of power. This allows many HTIBs to create bass that can deliver a massive game experience.

    How do users hook up their Nintendo Wii to a Dolby Pro Logic II receiver?

    A receiver has many different inputs in the back, which allows it to function as a "switch box" between several different components. If a user connects everything properly, it will be easy to switch between their Nintendo Wii and other game consoles or source components.

    The Nintendo Wii features a two-channel analog audio output capable of transmitting a Dolby Pro Logic II–encoded signal.

    For the Nintendo Wii to be connected properly, users will need at least one free two-channel analog input on their receiver. When available, Dolby recommends gamers use Dolby Pro Logic II Game mode to get the optimal surround Dolby Pro Logic II gaming experience.

    Dolby Audio Products for Games

    Dolby designs and manufactures state-of-the-art hardware incorporating Dolby technologies for game developers and audio professionals.

    • DP600 Program Optimizer offers simpler, faster multistream processing for producing rich, immersing surround sound and creating the best possible game sound.  
    • DP564 Multichannel Audio Decoder is the indispensable multichannel audio reference decoder for game audio production and quality control.  
    • LM100 Loudness Meter uses Dialogue Intelligence™ to automatically measure the dialogue portions of a game’s programming. This enables consistent levels throughout your game.  

    Co-Marketing Support

    We offer an array of marketing support options to assist you in promoting game titles featuring Dolby technologies. Take a look at how we can help.

    Launch Events

    Imagine launching your new game in one of our state-of-the-art presentation theaters. We have locations around the world. Take advantage of these spacious, comfortable environments, where your guests will feel very special as they try out your products in style on Dolby’s advanced A/V equipment. Our staff will be on hand to help you communicate your message and emphasize the idea that what you want is to provide the best possible game experience ever.

    Tradeshows

    Dolby is equipped to support your presence at industry events and tradeshows in a variety of ways. These include helping you plan demonstrations relating to our technologies. In some cases, we even provide equipment for those demos. We also have an assortment of collateral materials to help you demonstrate your commitment to excellence in the game experience.

    Using Dolby Logos

    Nearly every major game publisher has already executed our Trademark License Agreement, allowing them to use the Dolby Laboratories logo and associated trademarks. We recommend that you contact us to make sure your publisher is signed up and ready to proceed.

    In addition to using a Dolby logo on your game packaging, you may also include a Dolby trailer or splash screen specifically designed for games. Please contact us if you would like us to send you these assets.

    As a Windows App Developer, you can now include one of the world’s most advanced, recognizable, and trusted entertainment experiences directly in your apps. If you are a Windows® 8/8.1 Developer, you're in a unique position to utilize our genuine Dolby® Digital Plus™ technology. Dolby Digital Plus is included in every single Windows 8 system (including Windows RT). This means you simply enable the feature in your app and deliver the Dolby experience for your customers. Take a look at the code samples and Dolby encoded demo content below.

    Code Snippet

    																// Set the picker to include files that can contain Dolby content such as (.3g2, .3gp2, .3gp, .3gpp., m4a., m4v., mp4v, .mp4, .mov, .m2ts, .asf, .wm, .wmv, .wav, .avi, .ac3, .ec3)
    
    
    FileOpenPicker filePicker = new FileOpenPicker(); 
                    filePicker.SuggestedStartLocation = PickerLocationId.VideosLibrary; 
                    filePicker.FileTypeFilter.Add(".mp4"); 
                    filePicker.FileTypeFilter.Add(".wmv"); 
                    filePicker.ViewMode = PickerViewMode.Thumbnail; 
     
    
    
    //Play picked file through native Win 8 playback stack
    
                    StorageFile localVideo = await filePicker.PickSingleFileAsync(); 
                    if (localVideo != null) 
                    { 
                        var stream = await localVideo.OpenAsync(FileAccessMode.Read); 
                        VideoSource.SetSource(stream, localVideo.ContentType); 
                        rootPage.NotifyUser("You are playing a local video file", NotifyType.StatusMessage); 
                    } 
    															
    																// Set the picker to include files that can contain Dolby content such as (.3g2, .3gp2, .3gp, .3gpp., m4a., m4v., mp4v, .mp4, .mov, .m2ts, .asf, .wm, .wmv, .wav, .avi, .ac3, .ec3)
     
    		FileOpenPicker^ filePicker = ref new FileOpenPicker(); 
    		filePicker->SuggestedStartLocation = PickerLocationId::VideosLibrary; 
    		filePicker->FileTypeFilter->Append(".mp4"); 
    		filePicker->FileTypeFilter->Append(".wmv"); 
    		filePicker->ViewMode = PickerViewMode::Thumbnail; 
     
     
    //Play picked file through native Win 8 playback stack
    		 
    		task<StorageFile^>(filePicker->PickSingleFileAsync()).then( 
    			[this](StorageFile^ videoFile) 
    		{ 
    			if (videoFile) 
    			{ 
    				localFile = videoFile; 
    				task<IRandomAccessStream^>(videoFile->OpenAsync(FileAccessMode::Read)).then( 
    					[this](IRandomAccessStream^ stream) 
    				{ 
    					if (stream) 
    					{ 
    						VideoSource->SetSource(stream, localFile->ContentType); 
    						rootPage->NotifyUser("You are playing a local video file", NotifyType::StatusMessage); 
    					} 
    				}); 
    			} 
    		}); 
    	} 
    } 
     
     
    void Scenario1::playButton_Click(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e) 
    { 
    	VideoSource->Play(); 
    } 
    
    															
    																// Set the picker to include files that can contain Dolby content such as (.3g2, .3gp2, .3gp, .3gpp., m4a., m4v., mp4v, .mp4, .mov, .m2ts, .asf, .wm, .wmv, .wav, .avi, .ac3, .ec3)
    
    var openPicker = new Windows.Storage.Pickers.FileOpenPicker();
    
           	openPicker.suggestedStartLocation = Windows.Storage.Pickers.PickerLocationId.videosLibrary;
           
    	openPicker.fileTypeFilter.replaceAll([".mp4", ".wmv"]);
           
    	openPicker.pickSingleFileAsync().then(function (file) {
    
    
    //Play picked file through native Win 8 playback stack
          
     if (file) {
                   var localVideo = id("VideoSource");
                   localVideo.src = URL.createObjectURL(file, { oneTimeOnly: true });
                   localVideo.play();
               }
     },
    															
    																// Set the picker to include files that can contain Dolby content such as (.3g2, .3gp2, .3gp, .3gpp., m4a., m4v., mp4v, .mp4, .mov, .m2ts, .asf, .wm, .wmv, .wav, .avi, .ac3, .ec3)
    
    
       Private Async Sub videoFile_Click(sender As Object, e As RoutedEventArgs)
    
           Dim b As Button = TryCast(sender, Button)
    
           If b IsNot Nothing Then
    
               Dim filePicker As New FileOpenPicker()
    
               filePicker.SuggestedStartLocation = PickerLocationId.VideosLibrary
    
               filePicker.FileTypeFilter.Add(".mp4")
    
               filePicker.FileTypeFilter.Add(".wmv")
    
               filePicker.ViewMode = PickerViewMode.Thumbnail
    
    
    //Play picked file through native Win 8 playback stack
    
    
               Dim localVideo As StorageFile = Await filePicker.PickSingleFileAsync()
    
               If localVideo IsNot Nothing Then
    
                   Dim stream = Await localVideo.OpenAsync(FileAccessMode.Read)
    
                   VideoSource.SetSource(stream, localVideo.ContentType)
    
                   rootPage.NotifyUser("You are playing a local video file", NotifyType.StatusMessage)
    
               End If
    
           End If
    
       End Sub
    
    
    
       Private Sub playButton_Click(sender As Object, e As RoutedEventArgs)
    
           VideoSource.Play()
    
       End Sub
    															

    Source code provided under Microsoft Limited Public License

    Specs

      Format Support Codec Support Audio Enhancements
    Platform Dolby Digital(AC3) Dolby Digital Plus (E-AC3) Dolby Digital API Dolby Digital Plus API Dolby API
    Windows 8/8.1
    Windows Phone 8

    Dolby Digital Plus

    Dolby® Digital Plus™, or Enhanced AC-3 (E-AC-3), is an advanced audio codec designed specifically for evolving media. It can be used in Smartphone Apps, Online Streaming Services, PCs, Tablets, Smartphones and Home Theatres. Dolby Digital Plus defines high-fidelity audio. Dolby® Digital Plus™ employs exclusive compression algorithms to efficiently reduce the file size of digital audio programs. This allows easier transmission and storage. It also brings multichannel capability to bandwidth-constrained applications, mobile networks and Internet-delivered entertainment.

    White Paper

    Each of the different technologies in Dolby Digital Plus for mobile devices can be configured optimally for the content type and the endpoint (headphones, built-in speakers, and external speakers). The solution comes bundled with a small set of profiles (Music, Movie, Game, and Voice) that optimize the settings of the various technologies for the corresponding content. Advanced users can edit these presets and create new custom presets. 



    Dolby_DS1T_White_Paper_letter_v3_web.pdf 1 mb
    Download Whitepaper

    Sample App Downloads

    CineSphere Sample Project
    Cinesphere.zip 1.9 mb
    DOWNLOAD

    Perfect Audio —  No Matter How You Plug in

    Dolby Developer has come up with some cool solutions for App & Game Developers. We've introduced the Dolby Audio API which is a Java solution and works naturally with native Android Developers, but we understand that developers want choice when it comes to cross-platform tools. That's why we're including some plug-ins for you to use.

     

    We’re adding new frameworks constantly so if you don't see yours , let us know , or check back soon.