mmsyn7ukr 0.7.2.0 → 0.7.3.0
raw patch · 4 files changed
+42/−13 lines, 4 filesPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
API changes (from Hackage documentation)
- Processing_mmsyn7ukr: tempoR :: IO ()
+ Processing_mmsyn7ukr: tempeRa :: IO ()
Files
- ChangeLog.md +4/−0
- Main.hs +33/−8
- Processing_mmsyn7ukr.hs +4/−4
- mmsyn7ukr.cabal +1/−1
ChangeLog.md view
@@ -99,3 +99,7 @@ * Seventh version revised B. Fixed an issue with the noise reduction that can remove sensitive sound recording data from the program produced recordings. Added some additional functions. Some documentation improvements. The program now creates a noise profile at the beginning of its execution. Afterwards, it is removed if the program ends successfully.++## 0.7.3.0 -- 2020-01-22++* Seventh version revised C. Changed the realization of the main function. The function tempoR renamed to tempeRa. Documentation improvements.
Main.hs view
@@ -27,7 +27,8 @@ import ReplaceP (replaceP, replaceP4) -- | Function responds for general program execution. It starts with CAUTION to be responsible for usage and to --- use it personally in some important cases (see README). Then the program guides you through the creating your Ukrainian \"voice\". +-- use it personally in some important cases (see README) and with some additional information. Then the program+-- guides you through the creating your Ukrainian \"voice\". -- Please, use it carefully. The function uses command line arguments. -- For their meaning, please, refer to README file. -- @@ -101,6 +102,33 @@ putStr "response for any possible issues, but by this notification tries to " putStrLn "intent you to be aware of some possible issues." putStrLn ""+ putStrLn " ***** More Information *****"+ putStrLn ""+ putStr "You can create a sound in either a \'sharp\' mode or in a usual mode."+ putStr "The first one means that the program does not check whether the"+ putStr "specified duration for recording the initial sound data"+ putStr "is greater than 3 seconds. In such a case the duration can be"+ putStr "much smaller. This mode needs more mastership in interacting with a"+ putStr "program. For speech synthesis (as an advice) use this mode for"+ putStr "the very short sounds (like the sound representation for \"ь\")"+ putStr "or for the sounds, you can articulate for a long time continually"+ putStr "(for example, vowels and some consonants). The \'sharp\' mode delegates"+ putStr "the responsibility for the sound to much broader extent to the user,"+ putStrLn "so for a beginning it is not recommended (though you can give it a try)."+ putStrLn ""+ putStr "At the beginning the program also creates a noise profile (once per execution)."+ putStr "It is now used to reduce the noise level for the recorded sound representations."+ putStr "It uses the default SoX noise reducing settings with a hope that for you they can"+ putStrLn "be sufficient."+ putStrLn ""+ putStrLn " ***** Ukrainian Localization *****"+ putStrLn ""+ putStr "Please, before using the program check that uk_UA.UTF8 localization is"+ putStr "present in your system as one of the system locales. Otherwise,"+ putStr "the program will possibly (in some cases surely) cycle. In such a case,"+ putStrLn "you can terminate it in a usual way by sending interruption signals."+ putStrLn ""+ putStrLn "" onException (if take 5 os == "mingw" then do let eS = fromJust (showE "sox")@@ -112,7 +140,7 @@ eSp = fromJust (showE "play") eSr = fromJust (showE "rec") return ()) (error "SoX is not properly installed in your system. Please, install it properly and then run the program again! ")- tempoR+ tempeRa let a0 = if null . take 1 $ args then [] else concat . take 1 $ args@@ -133,9 +161,6 @@ silenceFs <- mapM makeAbsolute ["-.wav", "0.wav", "1.wav"] let pairs = zip copiedFs silenceFs mapM_ (\(x, y) -> copyFile x y) pairs- putStrLn ""- putStrLn "Your voice sound files are now created in the current directory! Use in a secure way! Remember the initial CAUTION! "- putStrLn "" else do putStrLn "" let rrs = show a2@@ -152,7 +177,7 @@ silenceFs <- mapM makeAbsolute ["-.wav", "0.wav", "1.wav"] let pairs = zip copiedFs silenceFs mapM_ (\(x, y) -> copyFile x y) pairs- putStrLn ""- putStrLn "Your voice sound files are now created in the current directory! Use in a secure way! Remember the initial CAUTION! "- putStrLn ""+ putStrLn ""+ putStrLn "Your voice sound files are now created in the current directory! Use in a secure way! Remember the initial CAUTION! "+ putStrLn "" cleanTempN
Processing_mmsyn7ukr.hs view
@@ -21,7 +21,7 @@ -- * Additional functions , tempS , showCoef- , tempoR+ , tempeRa -- * Cleaning , cleanTemp , cleanTempN@@ -265,10 +265,10 @@ filenames <- getDirectoryContents =<< getCurrentDirectory let rems = filter (\x -> head x == 'n') filenames in mapM_ removeFile rems --- | Function 'tempoR' is used to create a noise profile for all the recorded sounds. If you provide a 3 seconds silence as needed, the program will+-- | Function 'tempeRa' is used to create a noise profile for all the recorded sounds. If you provide a 3 seconds silence as needed, the program will -- reduce the noise in your recordings. This will create a cleaner sound.-tempoR :: IO ()-tempoR = do {+tempeRa :: IO ()+tempeRa = do { putStrLn "Now, please, be in a silence for 5 seconds so that the program can create a noise profile to remove the noise from the recording. " ; putStrLn "Otherwise, the program can remove from the recorded sound data some important parts as a noise." ; recA "nx.wav" 0.07
mmsyn7ukr.cabal view
@@ -2,7 +2,7 @@ -- documentation, see http://haskell.org/cabal/users-guide/ name: mmsyn7ukr-version: 0.7.2.0+version: 0.7.3.0 synopsis: A simple basic interface to some SoX functionality or to produce a voice that can be used by mmsyn7h description: A program and a library that can be used as a simple basic interface to some SoX functionality or to produce your voice in Ukrainian (if you pronounce the sounds properly) represented by the separate sounds or something special like soft sign. homepage: https://hackage.haskell.org/package/mmsyn7ukr