From 49d0afa013007262cde4e7274cb9a7539eee0a40 Mon Sep 17 00:00:00 2001 From: jontio Date: Thu, 8 Apr 2021 11:44:53 +1200 Subject: [PATCH] readme update --- README.md | 21 +++++++++++++++++++-- images/app.png | Bin 0 -> 13674 bytes 2 files changed, 19 insertions(+), 2 deletions(-) create mode 100644 images/app.png diff --git a/README.md b/README.md index 19fb996..d6eb5cd 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,20 @@ -# JC2Rec is a GUI in Qt for recording speech using Codec2. +# JC2Rec is a GUI in Qt for recording speech using Codec2 -This is a simple speech recording application that uses Codec2 and Qt. For more information see https://jontio.zapto.org/hda1/jc2rec.html \ No newline at end of file +[Codec2] is an audio compression codec designed for speech. The codec is designed for very high compression ratios. It has bit rates as low as 450 bits per second!!! + +I wrote this application to make audio recordings with this audio compressor. + +![](images/app.png) + +For more information see https://jontio.zapto.org/hda1/jc2rec.html + +### Building + +You will need the [codec2 repo] cloned into a directory above the jc2rec repo. You'll have to build codec2 and have all the required QT things. On Windows I suggest using [MSYS2] to install everything needed. + +Jonti
+2021 + +[Codec2]: http://www.rowetel.com/wordpress/?page_id=452 +[codec2 repo]: https://github.com/drowe67/codec2 +[MSYS2]: https://www.msys2.org/ \ No newline at end of file diff --git a/images/app.png b/images/app.png new file mode 100644 index 0000000000000000000000000000000000000000..4cc0cafba28c2b635135b1dae579567633772f13 GIT binary patch literal 13674 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