iOS音频频谱动画,仿QQ录音频谱

作者: Genie_GY | 来源:发表于2016-08-19 14:07 被阅读2400次

    先上效果图:

    display.gif

    有需要的请移步GitHub下载:
    https://github.com/HuangGY1993/GYSpectrum

    用法很简单,示例:

    SpectrumView * spectrumView = [[SpectrumView alloc] initWithFrame:CGRectMake(CGRectGetMidX(self.view.frame) - 100,180,200, 40.0)];
    spectrumView.text = [NSString stringWithFormat:@"%d",0];
    __weak SpectrumView * weakWaver = spectrumView;
    spectrumView.itemLevelCallback = ^() {
    
    [self.audioRecorder updateMeters];
    
    //取得第一个通道的音频,音频强度范围是-160到0
    float power = [self.audioRecorder averagePowerForChannel:0];
    weakWaver.level = power;
    
    };
    [self.view addSubview:spectrumView];
    

    使用前请注意:

    SpectrumView.frame.size.width / SpectrumView.numberOfItems >= 5
    
    默认SpectrumView.numberOfItems = 20 (可修改,必须为偶数),所以SpectrumView.frame.size.width默认要大于100
    例如:SpectrumView * spectrumView = [[SpectrumView alloc] initWithFrame:CGRectMake(0,0,100,40)];

    相关文章

      网友评论

      • olny胡:也就是说 怎么改变两个频谱之间的间距 谢谢
      • olny胡:效果非常好 我这有一个小小的需求 就是把中间的那个 0 换成时间 0:03 这种样式 赋值之后就变成3个点 我改了 半天源码 还是不知道改时间lab的frame
        olny胡:@Genie_GY 我把左右频谱 往左右拉了一下 可以了 3Q
        Genie_GY:我添加了属性 middleInterval,用于设置两个频谱间的间距,你可以commit试一下
        Genie_GY:@olny胡 明天帮你看看
      • Misscxuan:第一次进去,并没有动画.
        Misscxuan:@Genie_GY 第二次再录音就有动画.
        Misscxuan:@Genie_GY 你给的demo第一次录音的时候是没有动画的
        Genie_GY:@Misscxuan 你说这些gif图吗?当时制作时设置成了只播放一遍,后来懒得改:joy:
      • Louis_hey:播放的时候怎么设置动画效果
        Genie_GY:@Louis_hey 你可以改我的源码,或者你说下你需要什么效果?讨论一下

      本文标题:iOS音频频谱动画,仿QQ录音频谱

      本文链接:https://www.haomeiwen.com/subject/fdybsttx.html