2016-03-31 21 views
2

でEZAudio Frameworkを使用してオーディオファイルを再生する:こんにちは、私はスウィフトに次のObjective-Cのコードを変換しようとしていますスウィフト

EZAudioFile *audioFile = [EZAudioFile audioFileWithURL:NSURL]; //required type NSURL 
[self.player playAudioFile:audioFile]; 

しかし、私はそれを動作させることができません。 Cannot convert value of type 'NSURL' to expected argument type 'EZAudioFile'

上記Objective-Cのコードは、ここから参照されています:

let audioFile = EZAudioFile.url(EZAudioFile) //required type EZAudioFile, so I am unable to pass the NSURL of the audio file here. 
player.play() 

エラーがあるEZAudio Example:Record File

+1

私は 'EZAudioFile'を使用していませんが、Swiftでは' AVAudioPlayer'をOKにしました。参考のためにいくつかのコードがあります(下にスクロールしてください)。 http://stackoverflow.com/a/32879428/3681880 – Suragch

+0

私もそれを迅速に行っています。しかし、私がEZAudioに固執しているのは、録音中に波形を作成するための1つの方法を使用しているからです。 AVAudioPlayerを使用してオーディオを録音、再生することができます。だから私は、このフレームワーク(EZAudio)を使って、すべてのメソッドを使う方が良いと考えました。 –

+1

ああ、そうです。興味深いですね。私はいくつかのアプリがどのように波形を作るのか疑問に思いました。私はそれが働くことを望みます。 – Suragch

答えて

1

私がテストしていないので、私は間違っているかもしれないが、私はあなたがいないだと思います正しい構文を使用して:EZAudioFile.url(EZAudioFile)あなたが考えている初期化子を呼び出すことはありません。

私は、オーディオファイルのURLの初期化子が確かにありますことをin the EZAudioFile sourceを参照してください。

+ (instancetype)audioFileWithURL:(NSURL *)url

だから私の推測では、スウィフトに構文がかなりあるべきであるということである。

また、通常のURL initのラッパーにすぎないようです。

let audioFile = EZAudioFile(URL: yourURL) 
+0

スポットオン! Xcodeのオートコンプリートが私をここで捕まえました。 Swiftの '[self.player playAudioFile:audioFile];の置き換えは何ですか? –

+0

それは[類似](https://github.com/syedhali/EZAudio/blob/master/EZAudio/EZAudioPlayer.m#L334)でなければなりません: 'self.player.playAudioFile(audioFile)'私は(再び、私はEZのインストールにアクセスできないので、ソースを読んでいる間に推測する)。 – Moritz

+0

非常にトリッキーな迅速な変換。 'player = EZAudioPlayer(EZAudioFile:audioFile)'と出てきました。あなたの有益なコメントありがとう! –

関連する問題