peak3 다이내믹 신호처리(6)-피크 모드 컴프레서, 리미터 피크 검출기를 이용한 컴프레서 저번의 실효치를 이용한 컴프레서에서 피크 포락선을 검출하는 방법으로 변형하여 컴프레서를 구현해 보겠습니다. 내용은 저번 글과 동일하게 포락선을 구하고, 포락선과 문턱 레벨(threshold)의 차이를 이용해서 압축비(ratio)를 반영한 이득을 구하고, 입력 신호에 이득을 곱해서 출력하는 방법입니다. 구현 코드 다음은 GNU Octave로 구현한 피크 모드 컴프레서입니다. clear all file_name = 'test.wav'; [xx,fs]=audioread(file_name); peak_hold_time = 5*10^-3; peak_hold_max = peak_hold_time * fs; peak_hold_cnt =0; start_x = 25000; gap = 300.. 2021. 10. 21. 다이내믹 신호처리(3)-실효치 포락선, 피크 포락선 포락선 구하기 저번 글에서는 오디오 신호의 변화 특성 그리고 시정수를 이용하서 포락선을 구하는 개요를 알아 봤습니다. 이번 글에서는 실제 다이내믹 선호처리에서 사용하난 실효치를 이용한 포락선 검출과 피크 발생을 고려한 포락선을 구하는 두가지 방법을 알아보겠습니다. 실효치 포락선 구하기 실효치(rms)는 아래의 글과 같이 특정 구간의 신호들에 대해 평균을 먼저 계산해야지만 구해지는 값입니다. 그런데 신호처리 과정에서 실효치를 구하기 위한 연산을 할당할 정도로 DSP가 한가한 경우는 드물 것입니다. 굳이 실효치가 매우 중요한 역할을 하지 않는 한 입력 신호에 대해 곧바로 근삿값이라도 실효치를 계산해 준다면 좋을 것입니다. 또 신호처리 과정에서 레벨 미터 정보를 만들 필요가 있는데 근사 실효치는 아날로그식 V.. 2021. 10. 21. 오디오 신호(13)-피크 신호(Peak Signal)와 파고율(Peak Factor, PF) 신호의 피크 피크 신호는 주변의 신호보다 월등히 크기가 큰 최대 값을 의미합니다. 굳이 가장 큰 값을 의미하지는 않습니다. 그런데 특정 구간을 정해놓고 피크를 얘기할 때는 신호의 절댓값에 대한 최댓값을 의미하기도 합니다. 이는 우리가 피크 미터 등을 사용할 때 정의하는 방법입니다. 파고율 파고율(peak factor, crest factor, PF)는 아래 수식과 같은 특정 구간에서 발견된 피크 신호와 실효값의 비율로 표시됩니다. $$PF=20log(\frac{v_{peak}}{v_{rms}})$$ 파고율을 신호의 에너지 성분을 대표하는 실효치에 비해 피크 신호가 얼마나 크게 형성되었는지 알려줍니다. 그러면 다음과 같인 최대 신호 크기를 구할 수 있습니다. $$v_{peak}=v_{rms}\cdot 10.. 2021. 8. 18. 이전 1 다음