2015-07-21 62 views
0

即时试图找出音频轨道的多少样本处于满量程值(最大值和最小值)。问题是,即时通讯新的matlab和不知道如何得到我的结果。Matlab获取满量程值的数量

问题出在我的代码的第二行。有没有办法为每个样本获取信号的y值?或者获得所有最小值和最大值的方法? (findpeaks()dont't的工作,因为我的信号是两个声道的音频文件)

 unclipped = audioread(fileName); 

     total= 0; 
     values = YV(unclipped); 
     for k = 1 : lenght(values) 
      if values(k)== max(unclipped) 
       total = total + 1; 
      end  
       if values(k)== min(unclipped) 
       total = total + 1; 
      end  
     end 
     display (total); 
+0

不知道你想要什么。未剪辑已包含振幅,不知道'YV'应该做什么。最大值和峰值之间有区别,你想要哪个? – Daniel

+0

我想获得最小和最大值的样本总数。所以我想比较每个样本与最小和最大 –

+0

好吧,然后findpeaks绝对不是你想要的。你想在两个频道中使用一个最大值还是为每个频道使用一个单独的最大值? 'unclipped = [0 .1; 1.1; 1.1; 1.1; 1.1; 1.1;]'的预期最大计数是多少? – Daniel

回答

0
sum(max(unclipped(:))==unclipped)) 

得到最大和统计数据的频率等于最大。

+0

谢谢:)它很容易,如果我看到它 –