Presentation is loading. Please wait.

Presentation is loading. Please wait.

- Everybody can jam music in canteen

Similar presentations


Presentation on theme: "- Everybody can jam music in canteen"— Presentation transcript:

1 - Everybody can jam music in canteen
wiJam - Everybody can jam music in canteen

2 OUTLINE OVERVIEW DESIGN PRINCIPLES AND SOME DETAILS
PROGRESS AND OUTCOME FUTURE WORKS

3 Scenario – Canteen JAM Master D5 E5 A4 C5 E4 G4 C4 D4 D5 E5 A4 C5 E4

4 Scenario – Canteen JAM Master D5 E5 A4 C5 E4 G4 C4 D4 D5 E5 A4 C5 E4

5 WHY WIJAM? Setting: One music master who knows music, several players who know little about music Existing approach: Traditional jam, Chrome Music Jam, GarageBand Jam. Top

6 Design Principles Overview
KISS: The player’s interface is simple because the master abstracts away many musical difficulties. Hierarchy/Divide and conquer Every layer depends on the layer(s) downstairs, and the layers together make the whole system. Robustness Sound manager Others: Use a good idea again; When in doubt, use brute force; leave it to the client…

7 Layering Master Slave Hierarchy, divide and conquer User Interface
Music Assigner MIDI router Sample Sound Manager Core MIDI /GKSession AUGraph Bonjour + network AudioSession User Interface Music Performer Core MIDI /GKSession AUGraph AudioSession Bonjour + network TCP/IP Hierarchy, divide and conquer

8 Master Slave User Interface User Interface Music Performer
The Performer The Conductor Master Slave User Interface Music Assigner MIDI router Sample Sound Manager CoreMIDI/ GKSession  AUGraph Bonjour + network AudioSession User Interface Music Performer Core MIDI /GKSession AUGraph AudioSession Bonjour + network

9 DISTRIBUTE a Key, a SCALE and instruments
Philip Grand Piano Acoustic Guitar Electric Guitar Acoustic Bass Violin Key and scale Sample Sound Crack Clap C D E G A Blu Maj Aeo Pen Lyd Groove-1

10 MASTER Philip Bony CX CY Rev flg filt … Volume Bighead tangkk Panning
Eco Rev flg filt Volume Bighead tangkk Panning Groove-1 Groove-2 Groove-3 Groove-4 C D E G A Bls Maj Aeo Pen Lyd

11 Players only see the notes
D5 E5 A4 C5 KISS Abstraction Robustness E4 G4 C4 D4

12 End-to-end ? Music Assigner Music Performer
Assign performance prototypes Assign Perform performance feedback

13 Music Assigner Table in C (just an example)
Scale/Note 1 2 3 4 5 6 7 8 Ionian C4 E4 F4 G4 A4 B4 C5 D5 C3 E3 G3 Dorian bE4 bB4 Phrygian Lydian Mixolydian Aeolian Locrian

14 Master Slave User Interface User Interface Music Performer
The Performance User Interface Music Assigner MIDI router Sample Sound Manager CoreMIDI/ GKSession  AUGraph Bonjour + network AudioSession User Interface Music Performer Core MIDI /GKSession AUGraph AudioSession Bonjour + network

15 Use a good idea again Performance MIDI Router AUGraph Performer1
Input VI 1 VI 2 VI 3 VI 4 VI 5 Output

16 Master Slave Use a good idea again Leave it to the client
User Interface Music Assigner MIDI router Sample Sound Manager CoreMIDI/ GKSession  AUGraph Bonjour + network AudioSession User Interface Music Performer Core MIDI /GKSession AUGraph AudioSession Bonjour + network Virtual Instruments Virtual Instruments

17 AUPreset File is basically a mapping file that maps sound samples to notes, so that they together form virtual musical instruments. Note 1 Note 2 Note 3 ... Sound Sample 1 Sound Sample 2 Sound Sample 3 ...

18 Sound Library Sound Sample Manager
Robustness Leave it to the client Application Sound Library Audio files mapped to the AUPresets AUPresetFile Sound Sample Manager download

19 Master Slave User Interface User Interface Music Performer
Music Assigner MIDI router Sample Sound Manager CoreMIDI/ GKSession  AUGraph Bonjour + network AudioSession User Interface Music Performer Core MIDI /GKSession AUGraph AudioSession Bonjour + network Communicator

20 Reuse open source code Master coreMIDI NetworkSession Slave
Music Assignment in the form of sysEx MIDI Packets Packets Send Handler Packets Receive Handler Packets Send Handler Packets Receive Handler Music Performance in the form of normal MIDI Packets

21 DIVIDE and CONQUER Master Slave Top User Interface User Interface
Cayden, Philip Master Slave User Interface Music Assigner MIDI router Sample Sound Manager CoreMIDI/ GKSession  AUGraph Bonjour + network AudioSession User Interface Music Performer Core MIDI /GKSession AUGraph AudioSession Bonjour + network tangkk Bony, Philip CX, SzeHang tangkk Top

22 Progress and outcome https://github.com/tangkk/Tuner.git
A continuous thread on Gmail

23 Future Works Sound FX control Location of every player
Shake support(accelerometer ) Performance Adaptive Algorithm

24 Easy Adaptive Scoreboard Level assignment Performance feedback

25 Music Assigner Music Performer Assign performance prototypes
Adaptive Algorithm Perform performance feedback Smart enough to adapt to different constitution of players Could be anyone who is totally out of musical feeling

26 Thank you! Group members in alphabetical order: Chi Man Liu
Chong Yee Wong Ho Cheung Ng Hung Kwan Chen Junqi Deng Sze Hang Chan


Download ppt "- Everybody can jam music in canteen"

Similar presentations


Ads by Google