diff --git a/README b/README
deleted file mode 100644
index b34410b3e111db37069440ff05708c0f351c6834..0000000000000000000000000000000000000000
--- a/README
+++ /dev/null
@@ -1,54 +0,0 @@
-WHAT IT IS
-----------
-
-GStreamer plugin that wraps Kaldi's SingleUtteranceNnet2Decoder. It uses iVector-adapted
-DNN acoustic models. The iVectors are adapted to the current audio stream automatically.
-
-The iVectors are reset after the decoding session (stream) ends.
-Currently, it's not possible to save the adapted iVectors and recall them later
-for a particular speaker, to make the adaptation persistent over multiple decoding
-sessions.
-
-
-HOW TO COMPILE IT
------------------
-
-The following works on Linux (I'm using Debian 'testing').
-
-Compile Kaldi trunk, using the shared configuration:
-In Kaldi's 'src' directory:
-
-./configure --shared
-make depend
-make
-
-Install gstreamer-1.0:
-
-sudo apt-get install gstreamer1.0-plugins-bad  gstreamer1.0-plugins-base gstreamer1.0-plugins-good  gstreamer1.0-pulseaudio  gstreamer1.0-plugins-ugly  gstreamer1.0-tools libgstreamer1.0-dev
-
-Now we can compile this plugin. Change to 'src' of this project:
-
-cd src
-
-Compile, specifying Kaldi's root directory:
-
-make depend
-KALDI_ROOT=/path/of/kaldi-trunk make
-
-This should result in 'libgstkaldionline2.so'.
-
-Test if GStreamer can access the plugin:
-
-GST_PLUGIN_PATH=. gst-inspect-1.0 kaldinnet2onlinedecoder
-
-
-HOW TO USE IT
--------------
-
-Command-line usage is demonstrated in `demo/`.
-
-Usage through GSTreamer's Python bindings is demonstrated in 
-https://github.com/alumae/kaldi-gstreamer-server (kaldigstserver/decoder2.py).
-
-
-
diff --git a/README.md b/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..3be0922738acbf641823f9a792ab010ba792fb55
--- /dev/null
+++ b/README.md
@@ -0,0 +1,52 @@
+# WHAT IT IS
+
+
+GStreamer plugin that wraps Kaldi's SingleUtteranceNnet2Decoder. It requires iVector-adapted
+DNN acoustic models. The iVectors are adapted to the current audio stream automatically.
+
+The iVectors are reset after the decoding session (stream) ends.
+Currently, it's not possible to save the adaptation state and recall it later
+for a particular speaker, to make the adaptation persistent over multiple decoding
+sessions.
+
+
+# HOW TO COMPILE IT
+
+The following works on Linux (I'm using Debian 'testing').
+
+Compile Kaldi trunk, using the shared configuration:
+In Kaldi's 'src' directory:
+
+    ./configure --shared
+    make depend
+    make
+
+Install gstreamer-1.0:
+
+    sudo apt-get install gstreamer1.0-plugins-bad  gstreamer1.0-plugins-base gstreamer1.0-plugins-good  gstreamer1.0-pulseaudio  gstreamer1.0-plugins-ugly  gstreamer1.0-tools libgstreamer1.0-dev
+
+Now we can compile this plugin. Change to `src` of this project:
+
+    cd src
+
+Compile, specifying Kaldi's root directory:
+
+    make depend
+    KALDI_ROOT=/path/of/kaldi-trunk make
+
+This should result in 'libgstkaldionline2.so'.
+
+Test if GStreamer can access the plugin:
+
+    GST_PLUGIN_PATH=. gst-inspect-1.0 kaldinnet2onlinedecoder
+
+
+# HOW TO USE IT
+
+Command-line usage is demonstrated in `demo/`.
+
+Usage through GSTreamer's Python bindings is demonstrated in
+https://github.com/alumae/kaldi-gstreamer-server/kaldigstserver/decoder2.py.
+
+
+