Любая помощь мне для записи и воспроизведения звука Одновременно в Iphone.Запись и воспроизведение звука Одновременно
ответ
Вы можете воспользоваться интерфейсом AVFoundation. У него есть AVAudioPlayer для воспроизведения аудиофайлов и AVAudioRecorder для записи. Вы должны помнить, что Recorder будет записываться с использованием только микрофона. Таким образом, при одновременном воспроизведении аудиофайла и записи это зависит от того, как микрофон будет воспринимать воспроизводимый звук.
Вы можете играть и записывать одновременно на устройствах iOS (кроме 1-го поколения Touch), используя либо Audio Unit RemoteIO, либо Audio Queue API. Это API-интерфейсы более низкого уровня, где вам приходится обрабатывать входящие буферы исходящих и входящих образцов PCM самостоятельно.
См. Пример приложения Apple aurioTouch, например, код.
Доступен любой объект C или быстрый код? –
Пожалуйста Проверьте aurioTouch яблочный пример кода для аудио звукозаписывающих и играть одновременно
Вы также можете проверить Recording Audio on an iPhone
Надеются, что это помогает некоторым людям ... Я сделал приложение, которое записывает аудио, скажем, из приложение, подобное Pandora, и может воспроизводить аудио. Запуск/Воспроизведение аудио приложения, запуск AudioMic, запись, отключение звука звукового приложения, возврат и воспроизведение записанного звука с AudioMic. Ура!
Для записи воспроизведения аудио файлов в прошивке, вы можете использовать рамки AVFoundation. Используйте ниже быстрый код для записи и воспроизведения аудио. Помните, что рекордер записывает звук с помощью микрофона, поэтому, пожалуйста, проверьте этот код на устройстве.
import UIKit
import AVFoundation
extension String {
func stringByAppendingPathComponent(path: String) -> String {
let nsSt = self as NSString
return nsSt.stringByAppendingPathComponent(path)
}
}
class ViewController: UIViewController, AVAudioPlayerDelegate, AVAudioRecorderDelegate{
var audioPlayer : AVAudioPlayer!
var audioRecorder : AVAudioRecorder!
@IBOutlet var recordButton : UIButton!
@IBOutlet var playButton : UIButton!
@IBOutlet var stopButton : UIButton!
override func viewDidLoad() {
super.viewDidLoad()
self.recordButton.enabled = true
self.playButton.enabled = false
self.stopButton.enabled = false
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
//MARK: UIButton action methods
@IBAction func playButtonClicked(sender : AnyObject){
let dispatchQueue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)
dispatch_async(dispatchQueue, {
if let data = NSData(contentsOfFile: self.audioFilePath())
{
do{
self.audioPlayer = try AVAudioPlayer(data: data)
self.audioPlayer.delegate = self
self.audioPlayer.prepareToPlay()
self.audioPlayer.play()
}
catch{
print("\(error)")
}
}
});
}
@IBAction func stopButtonClicked(sender : AnyObject){
if let player = self.audioPlayer{
player.stop()
}
if let record = self.audioRecorder{
record.stop()
let session = AVAudioSession.sharedInstance()
do{
try session.setActive(false)
}
catch{
print("\(error)")
}
}
}
@IBAction func recordButtonClicked(sender : AnyObject){
let session = AVAudioSession.sharedInstance()
do{
try session.setCategory(AVAudioSessionCategoryPlayAndRecord)
try session.setActive(true)
session.requestRecordPermission({ (allowed : Bool) -> Void in
if allowed {
self.startRecording()
}
else{
print("We don't have request permission for recording.")
}
})
}
catch{
print("\(error)")
}
}
func startRecording(){
self.playButton.enabled = false
self.recordButton.enabled = false
self.stopButton.enabled = true
do{
let fileURL = NSURL(string: self.audioFilePath())!
self.audioRecorder = try AVAudioRecorder(URL: fileURL, settings: self.audioRecorderSettings() as! [String : AnyObject])
if let recorder = self.audioRecorder{
recorder.delegate = self
if recorder.record() && recorder.prepareToRecord(){
print("Audio recording started successfully")
}
}
}
catch{
print("\(error)")
}
}
func audioFilePath() -> String{
let path = NSSearchPathForDirectoriesInDomains(NSSearchPathDirectory.DocumentDirectory, NSSearchPathDomainMask.UserDomainMask, true)[0]
let filePath = path.stringByAppendingPathComponent("test.caf") as String
return filePath
}
func audioRecorderSettings() -> NSDictionary{
let settings = [AVFormatIDKey : NSNumber(int: Int32(kAudioFormatMPEG4AAC)), AVSampleRateKey : NSNumber(float: Float(16000.0)), AVNumberOfChannelsKey : NSNumber(int: 1), AVEncoderAudioQualityKey : NSNumber(int: Int32(AVAudioQuality.Medium.rawValue))]
return settings
}
//MARK: AVAudioPlayerDelegate methods
func audioPlayerDidFinishPlaying(player: AVAudioPlayer, successfully flag: Bool) {
if flag == true{
print("Player stops playing successfully")
}
else{
print("Player interrupted")
}
self.recordButton.enabled = true
self.playButton.enabled = false
self.stopButton.enabled = false
}
//MARK: AVAudioRecorderDelegate methods
func audioRecorderDidFinishRecording(recorder: AVAudioRecorder, successfully flag: Bool) {
if flag == true{
print("Recording stops successfully")
}
else{
print("Stopping recording failed")
}
self.playButton.enabled = true
self.recordButton.enabled = false
self.stopButton.enabled = false
}
}
Я испытал этот код на Xcode 7.0 & IOS 9.
- 1. Воспроизведение и запись звука одновременно
- 2. Воспроизведение и запись звука одновременно в J2ME?
- 3. Запись звука и воспроизведение iPod одновременно?
- 4. Запись и воспроизведение звука одновременно в iOS
- 5. Воспроизведение Спотизация музыки и звука одновременно
- 6. Запись аудио/видео с AVCaptureSession и воспроизведение звука одновременно?
- 7. Воспроизведение и запись звука одновременно с iPhone SDK?
- 8. Naudio Запись и воспроизведение звука
- 9. Загрузка + кеширование + воспроизведение звука одновременно
- 10. Воспроизведение одновременно звука в C#
- 11. Воспроизведение изображения и звука одновременно в android
- 12. Игровая сессия Воспроизведение/запись звука
- 13. Запись и воспроизведение звука с помощью AVAssetWriter
- 14. Запись и воспроизведение звука с iPod
- 15. WP7 одновременная запись и воспроизведение звука
- 16. Android Запись и воспроизведение звука повреждены
- 17. Запись звука и воспроизведение после этого
- 18. Запись звука и воспроизведение с помощью libgdx
- 19. Воспроизведение звука и анимации
- 20. Запись звука И воспроизведение модулированного звука в Android?
- 21. Воспроизведение и запись одновременно на Corona SDK
- 22. Воспроизведение и запись одновременно в Asterisk
- 23. Воспроизведение и запись носителей одновременно в телефоне Windows 8.1
- 24. Аудиозапись и воспроизведение одновременно
- 25. Одновременная запись микрофона и воспроизведение звука (WP 8.1 XAML)
- 26. Qt и воспроизведение звука
- 27. Воспроизведение одного и того же звука одновременно? (swift, spritekit)
- 28. Воспроизведение отдельного видео и звука одновременно в видеоизображении android
- 29. Android - запись звука и проверка громкости звука
- 30. Воспроизведение звука параллельно
Отправить мне больше описание. Запись должна выполняться микрофоном? Насколько точны должны быть синхронизация и т. Д. Возможно, вам стоит проверить код примера Apple aurioTouch. – Vanya