2009-04-17 21 views
4

我需要開發一個音頻流應用程序,它具有播放,暫停和查找(快進)的功能。我已經執行除搜索以外的所有操作..我使用Matt的音頻流sample code。任何人都可以詳細解釋如何實現音頻查找操作。我有一個關於尋求操作的想法。即。使用AudioQueueGetCurrentTime()方法。但我無法實現它的整個概念。那麼你能幫我一個示例代碼嗎?如何在iPhone中查找流媒體音頻?

由於提前, SYAM

回答

4

傢伙我在完全相同的工作。 我看着永遠!

我試圖

SInt64 byteOffset; 
      UInt32 ioFlags; 
      NSLog(@"seek to packet %i", mainMP3delegate.seek_Packet); 
      OSStatus err = AudioFileStreamSeek(inAudioFileStream, mainMP3delegate.seek_Packet, &byteOffset, &ioFlags); 
      if (err) { PRINTERROR("seek error"); myData->failed = true;} 

,我試圖改變的開始時間的地方,我想

AudioTimeStamp TS; ts.mFlags = kAudioTimeStampSampleTimeValid; ts.mSampleTime = 111110; NSLog(@「sample time%f」,ts.mSampleTime); ts.mSampleTime = mainMP3delegate.MP3_Timestamp; NSLog(@「sample time%f」,ts.mSampleTime);

  err = AudioQueueStart(myData->audioQueue, &ts.mSampleTime); 
     if (err) { PRINTERROR("AudioQueueStart"); myData->failed = true; return err; }  
     myData->started = true; 

但既不工作

我知道它的簡單的東西,我只是不知道,所以我提出了一個報價上elance找人來解決它的錢甚至!!! http://www.elance.com/jobs/16779786/iphone_application_audio_streaming_seek_scrub&&catId=11033&backurl=aHR0cDovL3d3dy5lbGFuY2UuY29tL3BocC9zZWFyY2gvbWFpbi9lb2xzZWFyY2gucGhwP21hdGNoVHlwZT1wcm9qZWN0I21hdGNoS2V5d29yZHM9aXBob25lJTIwc3RyZWFtJTIwc2VlayZzb3J0Qnk9JnNvcnRPcmRlcj0mcGFnZT0xJmNhdEZpbHRlcj0xMDAmc3ViY2F0RmlsdGVyPSZ0aW1lbGVmdEZpbHRlcj0mdGltZWxpc3RlZEZpbHRlcj0mYnVkZ2V0RmlsdGVyPS0xJmZlYXR1cmVkcHJvamVjdEZpbHRlcj1mYWxzZSZlc2Nyb3dwcm9qZWN0RmlsdGVyPWZhbHNlJmIyYnByb2plY3RGaWx0ZXI9ZmFsc2UmaG91cmx5cHJvamVjdEZpbHRlcj10cnVlJmZpeGVkcHJvamVjdEZpbHRlcj10cnVlJnN0YXR1c0ZpbHRlcj0xMDAzNyZhbWV4cHJvamVjdEZpbHRlcj0%3D&job_tier=11188

但是,沒有運氣。 我結束了(現在)下載MP3並尋找像這裏顯示的緩衝區,但它不是一個好的解決方案。

http://lists.apple.com/archives/coreaudio-api/2009/Jan//msg00143.html

人!如果你知道這個或某人做了什麼,我會發瘋。我也提出了有人正在處理的rentacoder的出價,

0

我也在使用Matt的音頻流示例代碼,但我無法通過他的代碼實現良好的查找。

現在我正在使用MPMoviePlayerController來完成音頻流,其查找功能很好。唯一的問題是總時間是逐步計算的,只有當下載到最後你才能知道總時間。

MPMoviePlayerController Class Reference