A Tk-based program that can help you prepare for your music final with randomly-generated listening quizzes
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

преди 13 години
преди 13 години
преди 13 години
преди 13 години
преди 13 години
преди 13 години
преди 13 години
преди 13 години
преди 13 години
преди 13 години
преди 13 години
преди 13 години
преди 13 години
преди 13 години
преди 13 години
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. __MusicQuizzer__ (_musicquizzer_) is a Python program that can help you prepare
  2. for any test that involves listening to excerpts of music pieces and answering
  3. multiple choice questions about them.
  4. # Installation
  5. ## Mac OS X
  6. First, download and install Python 2.6.6 from
  7. [here](http://www.python.org/ftp/python/2.6.6/python-2.6.6-macosx10.3.dmg).
  8. Later versions of Python are unsupported on Mac OS X because pygame does not
  9. run on them.
  10. Next, download and install pygame from
  11. [here](http://pygame.org/ftp/pygame-1.9.1release-py2.6-macosx10.5.zip).
  12. Finally,
  13. [download MusicQuizzer](https://github.com/earwig/music-quizzer/tarball/v0.1.2)
  14. and extract it wherever you want. To use, simply double-click on the
  15. `mac_osx.command` file inside (do not move or delete any of the other files).
  16. ## Windows
  17. First, download the installer for Python 2.7.1 from
  18. [here](http://python.org/ftp/python/2.7.1/python-2.7.1.msi). Use the default
  19. settings during installation.
  20. Next, download and install pygame from
  21. [here](http://pygame.org/ftp/pygame-1.9.2a0.win32-py2.7.msi).
  22. Finally,
  23. [download MusicQuizzer](https://github.com/earwig/music-quizzer/zipball/v0.1.2)
  24. and extract it wherever you want. To use, simply double-click on the
  25. `musicquizzer` file inside (do not move or delete any of the other files).
  26. ## Linux (with apt-get)
  27. You should be on at least Python 2.7 (check with `python --version`), assuming
  28. you keep your operating system up-to-date. Install the latest versions of
  29. pygame and tk with:
  30. sudo apt-get install python-pygame python-tk
  31. Finally,
  32. [download MusicQuizzer](https://github.com/earwig/music-quizzer/tarball/v0.1.2)
  33. and execute the program with `python musicquizzer.py` from your terminal.
  34. # Usage
  35. The first time you start the program, it will download all of the 25 necessary
  36. (default) music pieces to the `pieces` folder. This is a ~70 MB download.
  37. MusicQuizzer will present you with an answer sheet, containing four or five
  38. multiple choice questions per piece (which are, of course, randomized every
  39. time you begin a new quiz). Press `Start Quiz` to begin listening to the
  40. excerpts. Each one is played for 30 seconds. You are then given five seconds of
  41. rest, followed by the next piece. After all excerpts have been played, you
  42. _cannot_ re-listen to them. Press `Submit Answers` to "hand in" your quiz and
  43. view the results.
  44. # Modifying
  45. The music pieces are located in `pieces/`, in `.mp3` format. The file
  46. `config.cfg` contains the information for each excerpt, like so:
  47. [10.mp3]
  48. title: Der Erlkönig
  49. composer: Franz Schubert
  50. era: Romantic
  51. genre: Lied
  52. form: Through-composed
  53. url: /music/10_The_Erlking_Erlkonig.mp3
  54. The section's header is the name of the file in `pieces/` (or whatever
  55. directory you have chosen), and the fields hold the information that
  56. MusicQuizzer will use to generate questions. The exception is the `url` field,
  57. which is the _direct_ URL (when combined with the `base_url` setting in the
  58. `[general]` header) that MusicQuizzer will use to download the piece if
  59. it does not have a file with that name.
  60. Feel free to rename any of the pieces, delete them, add totally new ones, or
  61. change their information. This program is designed to be customizable.
  62. In the config file, you can also change the length of time each excerpt is
  63. played for, the time between each excerpt, and other things. If an attribute is
  64. not defined for a certain piece, the quizzer will not ask the question in that
  65. excerpt, but the question will remain for other pieces.