Difference between revisions of "Activities/Music Keyboard"

From Sugar Labs
Jump to navigation Jump to search
 
(4 intermediate revisions by 4 users not shown)
Line 3: Line 3:
 
= Description =
 
= Description =
  
This activity born as a proof of concept for a piano keyboard widget, with the idea of add this widget to the existing TamTam suite. This widget should be usable with touch devices, as the XO-4, and support multiple touches, then we need use Gtk3 (Gtk2 only support a simple toch emulation). The [http://wiki.sugarlabs.org/go/Features/GTK3/Porting/TamTam port of TamTam suite to Gtk3] already started, but is complex and need more work.
+
This activity born as a proof of concept for a piano keyboard widget, with the idea of add this widget to the existing Tam Tam suite. This widget should be usable with touch devices, as the XO-4, and support multiple touches, then we need use Gtk3 (Gtk2 only support a simple touch emulation). The [[Features/GTK3/Porting/TamTam|port of Tam Tam suite to Gtk3]] already started, but is complex and need more work.
  
 
The piano widget trigger events for every key pressed/released, and is designed to be easily included in other activities.
 
The piano widget trigger events for every key pressed/released, and is designed to be easily included in other activities.
  
The part of the code needed to play the notes, is copied from TamTam suite. The backend is using csound, but has not been improved in a lot of time.
+
The part of the code needed to play the notes, is copied from Tam Tam suite. The backend is using csound, but has not been improved in a lot of time.
  
 
= Repositories =  
 
= Repositories =  
  
The MusicKeyboard repository is https://git.sugarlabs.org/simplepiano
+
The Music Keyboard repository is https://git.sugarlabs.org/simplepiano or https://github.com/godiard/music-keyboard-activity
  
The TamTam repository is https://git.sugarlabs.org/tamtam
+
The Tam Tam repository is https://git.sugarlabs.org/tamtam
  
Note the master branch in the TamTam repository is where the port to Gtk3 started, but is not finished. If you want generate a usable activity, should use the branch sugar-0.94
+
Note the master branch in the Tam Tam repository is where the port to Gtk3 started, but is not finished. If you want generate a usable activity, should use the branch sugar-0.94
  
 
= Download =  
 
= Download =  
Line 27: Line 27:
 
== Add recording to Music Keyboard activity ==
 
== Add recording to Music Keyboard activity ==
  
There are code, actually commented, to record sounds in TamTamMini activity. I don't know if the code is working or not, but is a alternative to explore.  
+
There are code, actually commented, to record sounds in Tam Tam Mini activity. I don't know if the code is working or not, but is a alternative to explore.  
  
The activity TamTamJam use sequences of notes as loops to play. Can we save a loop in MusicKeyboard? Should be good for interoperability.
+
The activity Tam Tam Jam use sequences of notes as loops to play. Can we save a loop in Music Keyboard? Should be good for inter-operability.
  
 
Other options to explore, is check if we can save the key press/release events, or convert to a more useful format as midi.
 
Other options to explore, is check if we can save the key press/release events, or convert to a more useful format as midi.
Line 37: Line 37:
 
Daniel Francis proposed: "I have been working some time ago on a staff widget to show the notes [1]. Has pending to draw notes with sharps and flats (black keys in the piano)."
 
Daniel Francis proposed: "I have been working some time ago on a staff widget to show the notes [1]. Has pending to draw notes with sharps and flats (black keys in the piano)."
  
Another option is show the notes aas horizontal bars as the TamTamEdit activity do, maybe is more intuitive for kids.  
+
Another option is show the notes as horizontal bars as the Tam Tam Edit activity do, maybe is more intuitive for kids.  
  
 
[1] http://git.sugarlabs.org/stafflib/test
 
[1] http://git.sugarlabs.org/stafflib/test
Line 43: Line 43:
 
= More info =
 
= More info =
  
Page with information about TamTam development http://wiki.sugarlabs.org/go/Activities/Tam_Tam
+
Page with information about Tam Tam development [[Activities/Tam Tam]]
  
 
If you never developed a Sugar Activity, you must read:
 
If you never developed a Sugar Activity, you must read:
Line 53: Line 53:
 
General information about port from Gtk2 to Gtk3 is here:
 
General information about port from Gtk2 to Gtk3 is here:
  
http://wiki.sugarlabs.org/go/Features/GTK3/Activity_Porting
+
[[Features/GTK3/Porting]]
 +
 
 +
If you want help us fixing some bugs on activities, and learn a little about how activities work,
 +
you can see at this list of pending tickets:
 +
 
 +
http://dev.laptop.org/~gonzalo/bugs_index.html
 +
 
 +
 
 +
 
 +
[[Category:Activities]]

Latest revision as of 23:53, 20 April 2016

Music keyboard screenshot.png

Description

This activity born as a proof of concept for a piano keyboard widget, with the idea of add this widget to the existing Tam Tam suite. This widget should be usable with touch devices, as the XO-4, and support multiple touches, then we need use Gtk3 (Gtk2 only support a simple touch emulation). The port of Tam Tam suite to Gtk3 already started, but is complex and need more work.

The piano widget trigger events for every key pressed/released, and is designed to be easily included in other activities.

The part of the code needed to play the notes, is copied from Tam Tam suite. The backend is using csound, but has not been improved in a lot of time.

Repositories

The Music Keyboard repository is https://git.sugarlabs.org/simplepiano or https://github.com/godiard/music-keyboard-activity

The Tam Tam repository is https://git.sugarlabs.org/tamtam

Note the master branch in the Tam Tam repository is where the port to Gtk3 started, but is not finished. If you want generate a usable activity, should use the branch sugar-0.94

Download

Activity page in our activities portal

Google Summer of Code proposals

Two tasks are proposed for the GSoC 2013:

Add recording to Music Keyboard activity

There are code, actually commented, to record sounds in Tam Tam Mini activity. I don't know if the code is working or not, but is a alternative to explore.

The activity Tam Tam Jam use sequences of notes as loops to play. Can we save a loop in Music Keyboard? Should be good for inter-operability.

Other options to explore, is check if we can save the key press/release events, or convert to a more useful format as midi.

Display notes in a score in Music Keyboard activity

Daniel Francis proposed: "I have been working some time ago on a staff widget to show the notes [1]. Has pending to draw notes with sharps and flats (black keys in the piano)."

Another option is show the notes as horizontal bars as the Tam Tam Edit activity do, maybe is more intuitive for kids.

[1] http://git.sugarlabs.org/stafflib/test

More info

Page with information about Tam Tam development Activities/Tam Tam

If you never developed a Sugar Activity, you must read:

http://www.flossmanuals.net/make-your-own-sugar-activities/

Note, most of the book examples use Gtk2, but we moved to Gtk3.

General information about port from Gtk2 to Gtk3 is here:

Features/GTK3/Porting

If you want help us fixing some bugs on activities, and learn a little about how activities work, you can see at this list of pending tickets:

http://dev.laptop.org/~gonzalo/bugs_index.html