         currentPlayer.enableRate = true
     }
     
-    /**
-    Plays a sound asynchronously.
-    */
+    /// Plays a sound asynchronously.
     public func play() {
         currentPlayer.play()
     }
     
-    /**
-    Pauses playback; sound remains ready to resume playback from where it left off.
-    Calling pause leaves the audio player prepared to play; it does not release the audio hardware that was acquired upon calling play or prepareToPlay.
-    */
+    /// Pauses playback; sound remains ready to resume playback from where it left off.
+    /// Calling pause leaves the audio player prepared to play; it does not release the audio hardware that was acquired upon
+    /// calling play or prepareToPlay.
     public func pause() {
         currentPlayer.pause()
     }
-
-    /**
-    Stops playback and undoes the setup needed for playback.
-    Calling this method, or allowing a sound to finish playing, undoes the setup performed upon calling the play or prepareToPlay methods.
-    The stop method does not reset the value of the currentTime property to 0. In other words, if you call stop during playback and then call play, playback resumes at the point where it left off.
-    */
+    
+    /// Stops playback and undoes the setup needed for playback.
+    /// Calling this method, or allowing a sound to finish playing, undoes the setup performed upon calling the play or
+    /// prepareToPlay methods.
+    /// The stop method does not reset the value of the currentTime property to 0. In other words, if you call stop during
+    /// playback and then call play, playback resumes at the point where it left off.
     public func stop() {
         currentPlayer.stop()
     }
-
-    /**
-    Returns the total duration, in seconds, of the sound associated with the audio player. (read-only)
-    */
+    
+    /// Returns the total duration, in seconds, of the sound associated with the audio player. (read-only)
     public var duration : Double {
         get {
             return Double(currentPlayer.duration)
         }
     }
     
-    /**
-    Returns true if the receiver's current playback rate > 0. Otherwise returns false.
-    */
+    /// Returns true if the receiver's current playback rate > 0. Otherwise returns false.
     public var playing : Bool {
         get {
             return currentPlayer.playing
         }
     }
     
-    /**
-    The audio player’s stereo pan position.
-    By setting this property you can position a sound in the stereo field. A value of –1.0 is full left, 0.0 is center, and 1.0 is full right.
-    */
+    /// The audio player’s stereo pan position.
+    /// By setting this property you can position a sound in the stereo field. A value of –1.0 is full left, 0.0 is center, and
+    /// 1.0 is full right.
     public var pan : Double {
         get {
             return Double(currentPlayer.pan)

        }
    }
    
    /**
    The audio player’s playback rate.
    This property’s default value of 1.0 provides normal playback rate. The available range is from 0.5 for half-speed playback through 2.0 for double-speed playback.
    To set an audio player’s playback rate, you must first enable rate adjustment as described in the enableRate property description.
        
        let ap = C4AudioPlayer("audioTrackFileName")
        ap.enableRate = true
        ap.rate = 0.5
        ap.play()

    */
    public var rate: Double {
        get {
            return Double(currentPlayer.rate)

            currentPlayer.meteringEnabled = v
        }
    }
    
    /// A Boolean value that specifies whether playback rate adjustment is enabled for an audio player.
    /// To enable adjustable playback rate for an audio player, set this property to true after you initialize the player and before you call the prepareToPlay
    /// instance method for the player.
    public var enableRate : Bool {
        get {
            return currentPlayer.enableRate
