|
|
|
@ -59,8 +59,8 @@ notZero x = not (isNaN x || x == 0)
@@ -59,8 +59,8 @@ notZero x = not (isNaN x || x == 0)
|
|
|
|
|
-- ============================================================================= |
|
|
|
|
|
|
|
|
|
-- Чтение данных аудиофайла |
|
|
|
|
waveinfo :: WAVE -> [[Double]] |
|
|
|
|
waveinfo = map samplesToDouble . waveSamples |
|
|
|
|
wavinfo :: WAVE -> [[Double]] |
|
|
|
|
wavinfo = map samplesToDouble . wavSamples |
|
|
|
|
where samplesToDouble (l:r:[]) = [sampleToDouble l, sampleToDouble r] |
|
|
|
|
|
|
|
|
|
--Выбор канала из пары |
|
|
|
@ -123,7 +123,7 @@ calcPhase samples
@@ -123,7 +123,7 @@ calcPhase samples
|
|
|
|
|
-- ============================================================================= |
|
|
|
|
|
|
|
|
|
-- Параметры |
|
|
|
|
data WaveInfo = WaveInfo { |
|
|
|
|
data WavInfo = WavInfo { |
|
|
|
|
info :: String, |
|
|
|
|
samples :: Int, |
|
|
|
|
channel :: String, |
|
|
|
@ -133,15 +133,15 @@ data WaveInfo = WaveInfo {
@@ -133,15 +133,15 @@ data WaveInfo = WaveInfo {
|
|
|
|
|
} deriving (Show, Data,Typeable) |
|
|
|
|
|
|
|
|
|
-- Стандартные значения и описания параметров |
|
|
|
|
defaultOptions :: IO WaveInfo |
|
|
|
|
defaultOptions = cmdArgs $ WaveInfo { |
|
|
|
|
defaultOptions :: IO WavInfo |
|
|
|
|
defaultOptions = cmdArgs $ WavInfo { |
|
|
|
|
file = "none" &= typ "FILE.WAV" &= help "File for analysis", |
|
|
|
|
info = "none" &= typ "samples,phase,db,lufs" &= help "Type of information", |
|
|
|
|
samples = 1200 &= typ "12000" &= help "Number of samples for analysis", |
|
|
|
|
channel = "L" &= typ "L/R" &= help "Channel from stereo stream", |
|
|
|
|
title = 0 &= typ "1/0" &= help "File for analysis", |
|
|
|
|
vu = "db" &= typ "db/lufs" &= help "Type of vu scale" |
|
|
|
|
} &= summary "wave-info v0.3: information about audiofiles" |
|
|
|
|
} &= summary "wav-info v0.3: information about audiofiles" |
|
|
|
|
|
|
|
|
|
-- Вывод строки с префиксом и суффиксом |
|
|
|
|
describe :: (Show s) => Int -> String -> s -> String -> IO () |
|
|
|
@ -160,7 +160,7 @@ main = do
@@ -160,7 +160,7 @@ main = do
|
|
|
|
|
exitFailure |
|
|
|
|
|
|
|
|
|
d <- getWAVEFile $ file cmd |
|
|
|
|
let w = samples cmd ## waveinfo d |
|
|
|
|
let w = samples cmd ## wavinfo d |
|
|
|
|
|
|
|
|
|
let exec fx = do |
|
|
|
|
describe (title cmd) ("\n---[ " ++ fx) "" (" ]:") |