如何使用CoreAudio API获取MP3文件的未压缩文件大小

时间:2009-08-25 22:57:52

标签: iphone streaming mp3 core-audio

使用CoreAudio,我能够获得sampleRate(每秒帧数)和文件大小,但为了获得歌曲的“总”时间,我需要知道该压缩mp3的真实文件大小。

        AudioStreamBasicDescription asbd;
        UInt32 asbdSize = sizeof(asbd);

        // get the stream format.
        err = AudioFileStreamGetProperty(inAudioFileStream, kAudioFileStreamProperty_DataFormat, &asbdSize, &asbd);
        if (err)
        {
            [self failWithErrorCode:AS_FILE_STREAM_GET_PROPERTY_FAILED];
            return;
        }

        sampleRate = asbd.mSampleRate;

有什么方法可以用Objective-C知道这首歌的真实大小吗?

提前致谢。

1 个答案:

答案 0 :(得分:1)

查看this question

的答案

你可以在AudioFileGetProperty kAudioFilePropertyEstimatedDuration中提出一个可以解决问题的属性。