X-Git-Url: https://git.ao2.it/vidi-player.git/blobdiff_plain/0d79a5bbce33df27b08acf2dd67009bc9f5dd205..f74787f4bc5d288f0853000145e96d3a077c9c6a:/README.md
diff --git a/README.md b/README.md
index 322615a..360b182 100644
--- a/README.md
+++ b/README.md
@@ -1,31 +1,73 @@
-vidi-player creates a video timeline starting from a MIDI file.
+vidi-timeline creates a video timeline starting from a MIDI file.
The video clips are taken from a "VideoFont" in which each sample clip
corresponds to a note. The samples are arranged following the time and value of
the notes in the MIDI file.
-vidi-player allows to create more easily videos like these:
+vidi-timeline allows to create more easily videos like these:
-* Lasse Gjertsen - Hyperactive - https://youtu.be/o9698TqtY4A
-* Vittorio Saggiomo - Mario Bros Column Chromatography - https://youtu.be/mxi3z2vDV_0
+* [Lasse Gjertsen - Hyperactive](https://youtu.be/o9698TqtY4A)
+* [Vittorio Saggiomo - Mario Bros Column Chromatography](https://youtu.be/mxi3z2vDV_0)
-Examples of use
-===============
+How to create a VideoFont
+=========================
+
+Synthetic VideoFont
+-------------------
Create a synthetinc VideoFont:
- $ ./create_test_videofont.py videofont
+ $ ./create_test_videofont.py videofont/
+
+
+From a video recording
+----------------------
+
+A VideoFont can also be created by recording a video, and then splitting the
+recording in samples, one sample per note.
+
+For an example of a master VideoFont see
+[keyboard videofont master C4 B5](https://youtu.be/7Btp80LPqRs)
+
+A file like the one above can be analyzed with [Audacity][1] to find the start
+and the end time of the individual samples:
+
+* use the `Analyze -> Sound Finder...` to find the samples;
+* use the [`Pitch Detect" plugin`][2] to find the pitch of the samples and name
+ them accordingly;
+* maybe add an interval named "rest" to represent the absence of sound;
+* export the labels track with `File -> Export Labels...`;
+
+[1]: http://www.audacityteam.org/
+[2]: http://wiki.audacityteam.org/wiki/Nyquist_Analyze_Plug-ins#Pitch_Detect
+
+An example of such a file prodiced by audacity can be found in the `contrib/`
+directory and it can be used as follows:
+
+ $ youtube-dl -t https://youtu.be/7Btp80LPqRs
+ $ ./contrib/ges-split-samples.py \
+ "keyboard videofont master C4 B5-7Btp80LPqRs.mp4" \
+ "contrib/keyboard videofont master C4 B5-samples.txt" \
+ videofont/ > split.sh
+ $ mkdir videofont/
+ $ sh split.sh && rm split.sh
+Examples of use
+===============
+
+vidi-timeline.py
+----------------
+
Play the timeline from a MIDI file using the samples from the VideoFont:
- $ ./vidi-player.py examples/Beyer\ Op.\ 101\ -\ Exercise\ 008.midi videofont
+ $ ./vidi-timeline.py examples/Beyer\ Op.\ 101\ -\ Exercise\ 008.midi videofont/
Save the timeline to be edited somewhere else (e.g. in PiTiVi):
- $ ./vidi-player.py examples/Beyer\ Op.\ 101\ -\ Exercise\ 008.midi videofont/ Beyer_008.xges
+ $ ./vidi-timeline.py examples/Beyer\ Op.\ 101\ -\ Exercise\ 008.midi videofont/ Beyer_008.xges
Render the timeline to a video file:
@@ -33,6 +75,24 @@ Render the timeline to a video file:
$ ges-launch-1.0 --load Beyer_008.xges --outputuri Beyer_008.webm --format="video/webm:video/x-vp8:audio/x-vorbis"
+vidi-player.py
+--------------
+
+Play a midi file in real time (if the CPU and the disk can keep up):
+
+ $ ./vidi-player.py examples/Beyer\ Op.\ 101\ -\ Exercise\ 008.midi videofont/
+
+
+vidi-sampler.py
+---------------
+
+Play samples from the note hit on a midi controller:
+
+ $ xset -r && vkeybd && xset r on &
+ $ ./vidi-sampler.py 'Virtual Keyboard' videofont/
+ $ fg
+
+
Similar projects
================
@@ -43,10 +103,10 @@ Midi-Vidi
A similar concept called midi-vidi has been developed by Marcus Fischer:
-* http://unrecnow.com/dust/325-midi-vidi-effect-demo/
-* https://vimeo.com/8049917
-* http://www.synthtopia.com/content/2009/12/09/midi-vidi-plugin-lets-you-control-video-via-midi-in-max-for-live/
-* http://www.maxforlive.com/library/device.php?id=120
+*
+*
+*
+*
Midi-Vidi is also a very cool name, it sound like the Italian "mi dividi" which
means "you divide me".
@@ -56,5 +116,5 @@ VidiBox
An interactive video mashup app:
-* http://www.vidibox.net/
-* https://twitter.com/vidibox
+*
+*