]> gitweb @ CieloNegro.org - wavpack.git/blob - examples/WvInfo.hs
5e0b86fbe62bdbd020e6dc76bbbbcf78752808a3
[wavpack.git] / examples / WvInfo.hs
1 {-# LANGUAGE
2     UnboxedTuples
3   , UnicodeSyntax
4   #-}
5 module Main where
6 import Codec.Audio.WavPack.Block
7 import qualified Data.ByteString.Lazy as L
8 import qualified Data.Strict as S
9 import System.Environment
10 import System.IO
11
12 main ∷ IO ()
13 main = do [wvFile] ← getArgs
14           wvStream ← L.readFile wvFile
15           hSetBuffering stdout NoBuffering
16           showWvInfo wvStream
17
18 showWvInfo ∷ L.ByteString → IO ()
19 showWvInfo stream
20     = case findNextBlock stream of
21         (# S.Just block, _ #)
22             → print block
23         (# S.Nothing   , _ #)
24             → fail "Can't find any WavPack block headers."