JSUG - The Sound of Shopping by Christoph Pickl
Upcoming SlideShare
Loading in...5
×
 

JSUG - The Sound of Shopping by Christoph Pickl

on

  • 962 views

visit www.jsug.at for more stuff

visit www.jsug.at for more stuff

Statistics

Views

Total Views
962
Views on SlideShare
962
Embed Views
0

Actions

Likes
0
Downloads
4
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

JSUG - The Sound of Shopping by Christoph Pickl JSUG - The Sound of Shopping by Christoph Pickl Presentation Transcript

  • Sound of Shopping Christoph Pickl
  • Roadmap 1 Idea 2 Architecture 3 JFugue
  • Idea
  • Team Idea Sound Design Composition Implementation
  • Idea • Read in barcodes of bought products • Generate individual song • Customer downloads ringtone via website • Music can be transformed back to data
  • Architecture
  • Basics • Barcode to K-code transformation • Use proper ruleset/instrumentset • Save MIDI and record sampler output
  • SoS Net • 2nd version using webinterface Remote server application ✦ ✦ Database for communication • Usersniffing instead barcodes • Reused same core logic
  • Sound Samples
  • JFugue
  • Features • No complex objects, just (Music-)Strings • Specify notes, chords, instruments & tracks • Play at runtime, save to MIDI file • Music can be sent to/received from devices
  • Example #1 import org.jfugue.Player; public class Jsug { public static void main(String[] args) { Player player = new Player(); String musicString = quot;C D E F G A Bquot;; player.play(musicString); } }
  • Example #2 // quot;Frere Jacquesquot; Pattern pattern1 = new Pattern(quot;C5q D5q E5q C5qquot;); // quot;Dormez-vous?quot; Pattern pattern2 = new Pattern(quot;E5q F5q G5hquot;); // quot;Sonnez les matinesquot; Pattern pattern3 = new Pattern(quot;G5i A5i G5i F5i E5q C5qquot;); // quot;Ding ding dongquot; Pattern pattern4 = new Pattern(quot;C5q G4q C5hquot;); Pattern song = new Pattern(); song.add(pattern1, 2); // Adds 'pattern1' to 'song' twice song.add(pattern2, 2); // Adds 'pattern2' to 'song' twice song.add(pattern3, 2); // Adds 'pattern3' to 'song' twice song.add(pattern4, 2); // Adds 'pattern4' to 'song' twice new Player().saveMidi(song, new File(quot;Frere Jacques.midquot;));
  • Sample Output T91 V9 // percussion Rs_[35]sa20+Rs_[38]sa40+Ri+Ri Rs_[35]sa40+Rs_[38]sa60+[43]ia60+[46]ia40 ... Rs_[35]sa60+Rs_[38]sa20+[43]ia20+[46]ia60 V2 // harmonics [61]s+[65]s+[66]s+[70]s Rs [61]i+[65]i+[66]i+[70]i ... [61]s+[65]s+[66]s+[70]s Rs V1 I[ACOUSTIC_BASS] // bass Rs [39]s Rs [39]s Rs [39]s Rs [39]s ... Rs [45]s Rs [45]s Rs [45]s Rs [45]s V4 I[CLARINET] // melody Ri [78]i [80]q [85]q [89]i Ri Ri [80]i [82]q [89]i Ri [98]i Ri [86]q [98]i Ri [86]i
  • SoS Net Demo
  • • http://soundofshopping.com • http://jfugue.org • http://tv.rebell.tv//p2628.html • http://tv.rebell.tv/p2629.html • http://www.sil.at/aktuelles/magazin/magazin-nr-14/seite-13/