0:00:02.800,0:00:05.600
I can yes
0:00:09.200,0:00:14.920
okay um yeah so I'm uh zachary canfer
0:00:13.120,0:00:17.520
let's go to the
0:00:14.920,0:00:19.119
questions uh the first question uh why
0:00:17.520,0:00:19.840
do we go top to bottom for time
0:00:19.119,0:00:23.920
progression
0:00:19.840,0:00:27.279
uh and left to right uh for low to high
0:00:23.920,0:00:30.000
interesting I think uh so the initial
0:00:27.279,0:00:31.599
uh thing I was copying that initial app
0:00:30.000,0:00:35.280
work this way
0:00:31.599,0:00:36.960
um and
0:00:35.280,0:00:38.960
yeah I mean certainly traditional music
0:00:36.960,0:00:43.040
you know on a staff uh
0:00:38.960,0:00:46.000
does go left to right uh like this
0:00:43.040,0:00:47.440
um I mean going top to bottom does make
0:00:46.000,0:00:48.960
it easier to add more beats without
0:00:47.440,0:00:49.920
having to wrap but certainly that could
0:00:48.960,0:00:52.239
be managed
0:00:49.920,0:00:53.760
um yeah I I had not really thought about
0:00:52.239,0:00:55.199
it but it is definitely something worth
0:00:53.760,0:00:59.840
looking into
0:00:55.199,0:00:59.840
uh yeah you are now unmuted
0:01:02.480,0:01:06.960
ah good point thank you let me go ahead
0:01:05.680,0:01:13.840
and do that
0:01:06.960,0:01:13.840
uh the entire screen
0:01:14.240,0:01:18.320
okay so the screen share should be
0:01:16.880,0:01:21.439
starting
0:01:18.320,0:01:24.880
there we go cool all right uh
0:01:21.439,0:01:26.640
two will be placed on the song um not
0:01:24.880,0:01:28.080
now I can I can make some recordings of
0:01:26.640,0:01:30.720
it or certainly you can try it
0:01:28.080,0:01:33.119
um I couldn't quite get the the
0:01:30.720,0:01:37.040
microphone and the webcam and everything
0:01:33.119,0:01:40.079
to work with the sound playing now um so
0:01:37.040,0:01:43.520
uh I can record some also please uh
0:01:40.079,0:01:46.640
I put a link at the uh here in the uh
0:01:43.520,0:01:48.479
etherpad https://zck.me/emacsconf2020
0:01:46.640,0:01:49.920
where you can go and get the source
0:01:48.479,0:01:51.920
and you can try it yourself uh there's
0:01:49.920,0:01:54.560
no dependencies needed so it's just all
0:01:51.920,0:01:56.880
in Emacs um so please you know try it
0:01:54.560,0:01:56.880
yourself
0:01:57.040,0:02:01.040
any chance for an Emacs tracker or mod
0:02:00.079,0:02:03.680
player
0:02:01.040,0:02:04.479
um I don't really know what a mod player
0:02:03.680,0:02:08.000
or tracker
0:02:04.479,0:02:09.679
are but I mean I'm sure
0:02:08.000,0:02:11.599
that would be cool uh maybe there's one
0:02:09.679,0:02:13.920
on now but I don't know uh
0:02:11.599,0:02:15.200
my musical background so I've played
0:02:13.920,0:02:15.840
various instruments since about the
0:02:15.200,0:02:18.160
third grade
0:02:15.840,0:02:19.520
uh started recorder uh play cello I play
0:02:18.160,0:02:22.560
guitar now
0:02:19.520,0:02:23.680
um but yeah so just kind of random
0:02:22.560,0:02:26.959
instruments and
0:02:23.680,0:02:27.280
uh yeah I guess kind of some of those
0:02:26.959,0:02:30.480
things
0:02:27.280,0:02:33.519
influence how I think about music um
0:02:30.480,0:02:35.360
uh yeah um
0:02:33.519,0:02:36.640
are there any open source musical
0:02:35.360,0:02:37.840
management sample libraries that could
0:02:36.640,0:02:41.200
be used
0:02:37.840,0:02:42.400
um good question I'm sure there are um I
0:02:41.200,0:02:43.360
don't know any that integrate really
0:02:42.400,0:02:44.560
well with Emacs
0:02:43.360,0:02:45.680
one of the cool things that I liked
0:02:44.560,0:02:47.440
about this is that there are no
0:02:45.680,0:02:49.360
dependencies
0:02:47.440,0:02:50.800
you know you don't need any external
0:02:49.360,0:02:53.040
program to
0:02:50.800,0:02:54.160
uh generate the music I mean it it does
0:02:53.040,0:02:57.280
shell out to
0:02:54.160,0:02:58.640
to play um but that
0:02:57.280,0:02:59.840
should be able to be done on any
0:02:58.640,0:03:03.200
operating system as always you have
0:02:59.840,0:03:03.200
something that can play wav files
0:03:03.519,0:03:06.879
um but yeah it is interesting to kind of
0:03:05.599,0:03:10.000
try the different
0:03:06.879,0:03:12.239
uh different sounds and different
0:03:10.000,0:03:14.400
tones uh that you could get with
0:03:12.239,0:03:16.959
different instruments
0:03:14.400,0:03:17.599
have I written any actual songs um
0:03:16.959,0:03:20.640
nothing
0:03:17.599,0:03:20.640
super uh
0:03:21.040,0:03:25.519
uh well put together just I kind of just
0:03:23.680,0:03:27.440
been playing around with this
0:03:25.519,0:03:29.040
it's kind of I making this was one of
0:03:27.440,0:03:30.080
those things where like once I made it I
0:03:29.040,0:03:31.280
was like okay
0:03:30.080,0:03:32.720
now I can play with it and I did a
0:03:31.280,0:03:33.920
little bit and was like I don't know if
0:03:32.720,0:03:37.280
I feel like it right now
0:03:33.920,0:03:38.720
you know which I've I've found that to
0:03:37.280,0:03:39.599
be the case with some things that I've
0:03:38.720,0:03:41.360
implemented
0:03:39.599,0:03:43.519
in Emacs where it's I make it and then
0:03:41.360,0:03:44.480
it's the kind of some of the desire to
0:03:43.519,0:03:46.879
use it all the time
0:03:44.480,0:03:47.760
goes away but I'm sure I'll circle back
0:03:46.879,0:03:51.040
around
0:03:47.760,0:03:52.400
at some point especially kind of maybe
0:03:51.040,0:03:54.640
once I add in different tones or
0:03:52.400,0:03:56.400
something
0:03:54.640,0:03:57.840
I guess a similar question for
0:03:56.400,0:04:01.120
pre-recorded sounds yeah I mean
0:03:57.840,0:04:02.080
if it's part of what I did what I wrote
0:04:01.120,0:04:04.720
was a
0:04:02.080,0:04:06.720
wave generation library so if you kind
0:04:04.720,0:04:08.400
of have the data
0:04:06.720,0:04:10.159
you could use those and like chop them
0:04:08.400,0:04:13.360
up and take certain lengths of them
0:04:10.159,0:04:14.959
and make a wav file so it's not plug and
0:04:13.360,0:04:19.120
play right now but you could certainly
0:04:14.959,0:04:21.040
add those notes uh to do it
0:04:19.120,0:04:22.720
um any knitting midi mapping
0:04:21.040,0:04:24.560
possibilities um
0:04:22.720,0:04:26.160
I haven't looked into it but I'm sure
0:04:24.560,0:04:28.800
you definitely could output to midi
0:04:26.160,0:04:30.400
um which is another benefit of having
0:04:28.800,0:04:31.520
that multiple layers with the top layer
0:04:30.400,0:04:33.360
is just like
0:04:31.520,0:04:35.120
um you know if the root note is this
0:04:33.360,0:04:36.560
we're just two semitones up or seven
0:04:35.120,0:04:38.160
semitones up or whatever it is
0:04:36.560,0:04:40.720
uh it should be relatively simple to
0:04:38.160,0:04:44.479
kind of switch out that layer underneath
0:04:40.720,0:04:45.759
uh from wave to midi or other things
0:04:44.479,0:04:47.520
what were some of the challenges with
0:04:45.759,0:04:49.759
writing a special mode for Emacs
0:04:47.520,0:04:51.040
uh interested in getting into this not
0:04:49.759,0:04:54.960
sure where to start
0:04:51.040,0:04:57.120
um there uh yeah it so
0:04:54.960,0:04:58.320
this isn't the first mode I've written
0:04:57.120,0:05:01.759
um so that's right
0:04:58.320,0:05:05.600
certainly that helps um I actually
0:05:01.759,0:05:08.240
um I have a video that we recorded it
0:05:05.600,0:05:09.039
as part of Emacs nyc on making a major
0:05:08.240,0:05:10.720
mode
0:05:09.039,0:05:12.639
that's basically like starts from
0:05:10.720,0:05:15.680
nothing and kind of builds up to
0:05:12.639,0:05:17.039
an implementation of tic-tac-toe um
0:05:15.680,0:05:19.600
but so it kind of goes into printing
0:05:17.039,0:05:21.280
things out and buttons and making the
0:05:19.600,0:05:22.800
mode
0:05:21.280,0:05:24.560
I mean one of the best parts about Emacs
0:05:22.800,0:05:26.479
is because it's so
0:05:24.560,0:05:28.479
uh configurable and so introspectible
0:05:26.479,0:05:30.320
you can start pretty simply
0:05:28.479,0:05:32.320
and just kind of asking max about things
0:05:30.320,0:05:34.960
and then make one little
0:05:32.320,0:05:36.479
change um it's really it's not that bad
0:05:34.960,0:05:39.039
so uh
0:05:36.479,0:05:40.560
I'll try to throw a link up on that uh
0:05:39.039,0:05:42.000
on on that page I put up or
0:05:40.560,0:05:44.479
please email me for whoever asked this
0:05:42.000,0:05:46.240
question uh to get a link to that video
0:05:44.479,0:05:47.919
um or just look at look at the source
0:05:46.240,0:05:50.479
code of this or any other major mode
0:05:47.919,0:05:52.880
um it it's pretty ems breaks it makes it
0:05:50.479,0:05:56.479
pretty easy to extend uh
0:05:52.880,0:05:57.600
major modes and I think that's that's
0:05:56.479,0:06:00.240
the last question
0:05:57.600,0:06:02.479
in the ether pad so uh thanks so much
0:06:00.240,0:06:06.720
everybody for coming
0:06:02.479,0:06:09.039
you are now unmuted uh thank you so much
0:06:06.720,0:06:12.960
to curry for your awesome talk
0:06:09.039,0:06:19.840
and for doing live questions
0:06:12.960,0:06:19.840
thank you thank you cheers