             return (nil, nil, nil)
         }
         
+        let audioSettings: [String : AnyObject] = [AVFormatIDKey: Int(kAudioFormatMPEG4AAC),
+                             AVNumberOfChannelsKey: 2]
         let audioInput: AVAssetWriterInput? = AVAssetWriterInput(mediaType: AVMediaTypeAudio,
-                                                                 outputSettings: nil,
+                                                                 outputSettings: audioSettings,
                                                                  sourceFormatHint: audioFormatHint)
         audioInput?.expectsMediaDataInRealTime = true
         

        // Audio output
        let audioTracks = asset.tracksWithMediaType(AVMediaTypeAudio)
        if audioTracks.count > 0 {
            audioOutput = AVAssetReaderTrackOutput(track: asset.tracksWithMediaType(AVMediaTypeAudio).first!, outputSettings: nil)
            if assetReader!.canAddOutput(audioOutput!) {
                assetReader!.addOutput(audioOutput!)
            }

        
        return (nil, nil)
    }
    
    static func createSilentAudioSampleBufferWithFormatDescription(formatDescription:CMAudioFormatDescription,
                                                                   numSamples: Int,
                                                                   presentationTime: CMTime) -> CMSampleBuffer?
    {
        let audioStreamBasicDescription = CMAudioFormatDescriptionGetStreamBasicDescription(formatDescription).memory
        let blockSize: size_t = numSamples * Int(audioStreamBasicDescription.mBytesPerFrame); // TODO: Probably need to calc in another way
        var blockPointer: CMBlockBuffer? = nil
        CMBlockBufferCreateWithMemoryBlock(kCFAllocatorDefault,
                                           nil,
                                           blockSize,
                                           nil,
                                           nil,
                                           0,
                                           blockSize,
                                           0,
                                           &blockPointer);
        
        guard let block = blockPointer else {
            return nil
        }
        
        CMBlockBufferFillDataBytes(0, block, 0, blockSize);
        
        var sampleBuffer: CMSampleBuffer? = nil;
        CMAudioSampleBufferCreateReadyWithPacketDescriptions(kCFAllocatorDefault,
                                                             block,
                                                             formatDescription,
                                                             numSamples,
                                                             presentationTime,
                                                             nil,
                                                             &sampleBuffer);
        return sampleBuffer;
    }
}
