zoukankan      html  css  js  c++  java
  • iOS 播放器静音设置方法

    介绍:整理的两种设置播放器播放静音的方法

    一、MPVolumeView-设置音量值为0

    1.获取到当前系统音量值(恢复音量时有用)

    volumeFloat = [self getVolume];
    
    -(float) getVolume
    {
        //获取系统系统音量视图
        MPVolumeView *volumeView = [[MPVolumeView alloc] initWithFrame: CGRectMake(-1000, -100, 100, 100)];
        volumeView.hidden = NO;//不显示系统音量调节视图
        [self addSubview:volumeView];
        volumeViewSlider = nil;
        for(UIView *view in [volumeView subviews])
        {
            if([[[view class] description] isEqualToString:@"MPVolumeSlider"])
            {
                volumeViewSlider=(UISlider *)view;
                break;
            }
        }
        float val = [volumeViewSlider value];
        return val;
    }

    2.关闭系统音量(设置音量值为0)

    //关闭系统音量(静音)
    -(void)closeSysVolume
    {
        [volumeViewSlider setValue:0 animated:NO];
    }

    3.恢复原来的音量

    -(void)reStartSysVolume
    {
        NSLog(@"重启音量");
    
        if (volumeFloat == 0) {
            volumeFloat = 0.5;
        }
        [volumeViewSlider setValue:volumeFloat animated:NO];
        //注:设置恢复后不会影响系统音量图标的正常显示
        MPVolumeView *volumeView = [MPVolumeView new];
        volumeView.hidden = YES;
    }

    二、AVAudioSession

    1.静音

    //关闭系统音量(静音)
    -(void)closeSysVolume
    {
        [[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryRecord error:nil];
    }

    2.重新开启音量(注:调用closeSysVolume后使用该方法无效--还没找到恢复音量方法)

    -(void)reStartSysVolume
    {
        NSLog(@"重启音量");
        [[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryAmbient error:nil];
    }

    三、补充

    如果不想通过设置系统方式静音,可以更简单的使用播放器自带的音量属性实现静音(推荐这种方式,而不是使用修改系统方式)。例如ijkplayer的playbackVolume属性:

    //关闭音量(静音)
    -(void)closeSysVolume{
        NSLog(@"静音模式");
        self.player.playbackVolume = 0;
    }
    //重启音量
    -(void)reStartSysVolume{
        NSLog(@"重启音量");
        self.player.playbackVolume = 1;
    }
  • 相关阅读:
    【40讲系列1】数组、链表
    更改凭证类型
    将公司代码设置给生产性的(不能删除业务数据的配置)
    使用参考过账
    查看凭证行项目
    查看凭证过账行项目
    预制凭证
    做凭证时凭证日期等于过账日期
    英语-20210302
    自动计算税额
  • 原文地址:https://www.cnblogs.com/wusang/p/8438224.html
Copyright © 2011-2022 走看看