- A network music jamming app for everyone

Slides:



Advertisements
Similar presentations
QS6 Basics. Type : Sample playback synthesizer keyboard Keys: 61 velocity and aftertouch sensitive, synth action. Polyphony : 64 voices MIDI Channels.
Advertisements

MUSC1010 – WEEK 4 MIDI. MIDI (Musical Instrument Digital Interface) MIDI is associated with cheap and nasty sounds due to the fact that most computer.
Musical Instrument Digital Interface. MIDI Basics First introduced in 1983.
Int 2 Multimedia Revision. Digitised Sound Analogue sound recorded from person, or real instruments.
SWE 423: Multimedia Systems Chapter 3: Audio Technology (2)
Musical Instrument Digital Interface. MIDI Musical Instrument Digital Interface Enables electronic musical instruments, such as keyboard controllers,
Customizable Audio Kaleidoscope Agustya Mehta, Dennis Ramdass, Tony Hwang Final Project Spring 2007.
UFCEXR-20-1Multimedia Sound Production An Introduction to Using Logic Studio.
MSS & AMS Name and configure MIDI controllers, devices and sound modules. Control their routing to Pro Tools MSS - Configurations can be imported or exported.
V-Cert Music Technology
M I D I Musical Instrument Digital Interface The MIDI protocol — a “language” that lets synthesizers, computers and other devices talk to each other.
Midi files Here we look at another way of dealing with sound on a computer the use of Midi files. The the Midi file differs from the “wav” file, because.
Ann Ware. Cloud computing is Internet-based computing, where shared resources, software and information are provided to computers and other devices on-
MIDI and YOU Orchestra in a Box. What is MIDI?  Musical Instrument Digital Interface  MIDI is a protocol - a standard by which two electronic instruments.
Signal Digitization Analog vs Digital Signals An Analog Signal A Digital Signal What type of signal do we encounter in nature?
The learner will:  2 Be able to operate a digital audio workstation – VIDEO 
Objective Understand digital audio production methods, software, and hardware. Course Weight : 6%
Computer Science 1 Week 11. This Week... QBasic While Loops QBasic While Loops Audio Basics Audio Basics.
GarageBand Jessica Moidel Intro to Music Technology Final Presentation April 21, 2009.
For my final project I am going to use the SDRAM. I am uploading 9 files that exceed the limit of the internal memory RAM. I am going to manipulate the.
Unit 01- setting up and operate a digital audio workstation By Alfie fennemore.
Virtual Instruments and Sequencing. Proses Pembuatan Lagu/Musik TrackingMixingMastering.
Sound DirectMusic & DirectSound. Sound Formats Wav Midi (Musical Instrument Digital Interface) DLS (Downloadable Sounds) DirectMusic Producer Segments.
Theme: Multimedia Sound ProductionUFCFY Multimedia Sound Production.
For use with WJEC Performing Arts GCSE Unit 1 and Unit 3 Task 1 Music Technology Technical issues.
Improvisation The ability to create music on the spot By Chase Quintana.
Unit 01 - Set up and operate a digital audio workstation.
Do Now: Give an example of how music could have evolved over time.
Project Presentation Eoin Culhane Multi Channel Music Recognition for an Electric Guitar.
Multi Channel Music Recognition for an Electric Guitar.
Final Year Project Eoin Culhane. MIDI Guitar Guitar with 6 outputs 1 output for each string Each individual string output will be converted to MIDI.
27656 (v1) Demonstrate and apply introductory knowledge of music technology equipment and techniques MUSIC Level 1Credits 4.
Computer Networks.  Which is the best definition of a circuit switched network?  An electric circuit where the connections get switched based on who.
Music and Audio Computing I A Prof. Marcelo M. Wanderley Week 8.
MIDI Musical Instrument Digital Interface A digital communication protocol allowing devices to send and/or respond to instructions.
Audio Engineering – Recording Lesson 1 Music Production.
Introduction to Networks
Chapter 8 Sound FX Composition. Chapter 8 Sound FX Composition.
Chapter 15 Recording and Editing Sound
19 – Multimedia Networking
Objective % Explain concepts used to create digital audio.
Musical Instrument Virtual
ArmKeyBoard A Mobile Keyboard Instrument Based on Chord-scale System
Telemedicine.
Distributed Systems.
- Everybody can jam music in canteen
ECE Computer Engineering Design Project
© 2016 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
Piano Chord Builder Artem Kuligin CS 470 6/17/2018 3:08 AM
Personal Digital Devices Lesson 1
Creating Simple Music By Keith Lynn
Laser Harp Team: Peter Crinklaw Qiushi Jiang Edwin Rodriguez.
"Digital Media Primer" Yue-Ling Wong, Copyright (c)2013 by Pearson Education, Inc. All rights reserved.
IOT PRODUCT Klaudia Nagrabska.
Current and emerging Technologies
Objective % Explain concepts used to create digital audio.
Multimedia: making it Work
Current and emerging Technologies
Common computer terminology
ECEN “Internet Protocols and Modeling”
Laura Kassovic Corey Zahner Jason Eaton Matt Baker
Virtual measurements -real measurement (real sensors, data aquisition)
Online Jam Space.
Digital Music Scott Bennett 1/3/2019.
Network Controllable MP3 Player
What are they, and why should we care?
Panasonic SC‑HTB70 | Sound Bar ‑ 2.1 | Channel ‑ Wireless Kirsi Kuutti
AP Music theory Tuesday 29 JAN 2019.
AP Music theory Friday 1 February 2019.
Objective Explain concepts used to create digital audio.
Presentation transcript:

- A network music jamming app for everyone wiJam - A network music jamming app for everyone

Features Basic: Master – slave star connection Musical notes assignment Virtual instruments playback Sound sample download, store, and playback Extension(*): Sound control Location of every player Shake support(accelerometer ) Performance Adaptive Algorithm

Scenario – CanTine JAM M S S S S S S

MASTER-SLAVE relationship In this scenario: Master and slaves have different console The master distributes all the instruments , scales and notes to the players and it has full sound controls. The players do nothing other than tapping the notes for fun.

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 … Those interesting sounds downloaded from the internet or recorded on ones own

MASTER CONTROL Philip Bony CX CY std … Volume Bighead tangkk Panning Groove-1 Groove-2 Groove-3 Groove-4 C D E G A Blu Maj Aeo Pen Lyd

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

Players only see the notes D5 E5 A4 C5 E4 G4 C4 D4

Syncing (4/4) – snap the note to the nearest grid ahead 1 2 3 4 … … In this example: 4/4 time (4 beats a bar), each beat has 2n cells

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

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

Sample Sound Manager(4) Layering -0.1 Master Slave User Interface Music Assigner (1) MIDI router (2) Sample Sound Manager(4) Core MIDI /GKSession AUGraph(3) Bonjour + network AudioSession User Interface Music Performer Core MIDI /GKSession AUGraph AudioSession Bonjour + network TCP/IP 1 Music assigner is for assigning instruments, scales and notes to slaves 2 MIDI router is for routing MIDI messages coming from different slaves to different virtual instruments. 3 AUGraph is actually a set of virtual instruments and audio processing units. 4 Sample sound manager is for storing preset sounds(both instrument sounds and groove tracks) and making these sounds accessible.

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

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

Master User Interface Music Assigner MIDI router CoreMIDI/ Sample Sound Manager CoreMIDI/ GKSession  AUGraph Bonjour + network AudioSession Virtual Instruments

Master User Interface Music Assigner MIDI router CoreMIDI/ Sample Sound Manager CoreMIDI/ GKSession  AUGraph Bonjour + network AudioSession Communication channel

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

How to decide which set of notes to be played? How to change keys? 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

How to calculate the scores? Easy Adaptive Scoreboard Level assignment Performance feedback

How to identify each slave devices in the implementation of master? Performer1 Performer2 Performer3 Performer4 Performer5 Performance MIDI Router AUGraph Input VI 1 VI 2 VI 3 VI 4 VI 5 Output

Sound Library Sound Sample Manager How to store these key-value pairs? Sound Library AUPresets + Audio files mapped to the AUPresets AUPresetName AUPresetFile download Sound Sample Manager

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 ...

How does the master specify which player to assign to How does the master specify which player to assign to? How does each player prevent itself from receiving MIDI from other players? Master coreMIDI NetworkSession Slave coreMIDI NetworkSession 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

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

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