Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Nitish Sharma
summer-of-code-ideas-list
Commits
efe9dc2b
Commit
efe9dc2b
authored
Mar 08, 2021
by
Jonathan Wilkes
Browse files
clean up a few more ideas so they are appropriate for the shortened program
parent
2b4bd1d4
Changes
1
Hide whitespace changes
Inline
Side-by-side
README.md
View file @
efe9dc2b
[
Web App UI Cleanup
](
#web-app-ui-cleanup
)
[
Profile Purr Data CPU Usage in Realtime
](
#profile-purr-data-cpu-usage-in-realtime
)
[
Terminal REPL
](
#terminal-repl
)
[
Speedy Keyboard Entry Holy Grail
](
#speedy-keyboard-entry-holy-grail
)
[
Vintage Platform Audio Emulation Library
](
#vintage-platform-audio-emulation-library
)
[
Library for Data-Over-Audio Communication
](
#data-over-audio-messaging
)
[
Completed Projects From Previous Years
](
#completed-projects-from-previous-years
)
[
Core Accessibility
](
#core-accessibility
)
...
...
@@ -16,9 +19,6 @@
[
Streamlining Purr Data GUI-Pd communication
](
#streamlining-purr-data-gui-pd-communication
)
[
Vintage Platform Audio Emulation Library
](
#vintage-platform-audio-emulation-library
)
[
Library for Data-Over-Audio Communication
](
#data-over-audio-messaging
)
[
Interaction with Audio Plugins
](
#interaction-with-audio-plugins
)
...
...
@@ -158,6 +158,66 @@ A choice of implementing most of this in the frontend, which means HTML5
and vanilla Javascript. Or, implementing it in the backend, which means
C.
Vintage Platform Audio Emulation Library
----------------------------------------
### Goal
Create a library with objects that emulate the hardware from
old hardware like the atari 2600, NES, and others.
### Details
There are a lot of resources online for emulating old
hardware. Purr Data would benefit by having a library
that provides a consistent interface for objects that
take input into an emulation of a piece of hardware and
output one or more audio signals.
### Challenges
Finding a common interface that makes it easy for users to leverage
these classes while at the same time being expressive enough to allow
decent control of the chip being emulated.
### Languages
Pd (Purr Data is a fork of the software Pure Data-- the visual language itself
is usually referred to as Pd.) Also, C, or C++ if desired.
Data Over Audio Messaging
-------------------------
### Goal
Create a library that allows two instances of Purr Data to pass data messages
to each other using sound as the transmission medium.
### Details
Pd messages consist mainly of space-separated numbers and symbols.
Semicolons mark the end of a message.
Sometimes it would be helpful to be able to pass messages from
one instance of Purr Data to another-- especially if each instance is
on a different machine in the same room. This is currently done either
by setting up socket listener/receiver between the two instances or by
leveraging a separate message-passing system outside of Purr Data.
Since Purr Data is concerned mainly with analyzing and sythesizing sound,
machines running Purr Data typically have a mic and speakers connected to
a running instance. If it were possible for the user to simply create
objects which send/receive messages by sending audio signals to/from each
other it would greatly simplify sending at least small amounts of data
between machines.
### Challenges
Finding a decent interface for users without relying on a big set
of dependencies.
### Bonus Challenge
Send the data in the range of human hearing in a form that is
*pleasing*
to the ear. (There is actually some prior art on techniques to do this.)
### Languages
Pd (Purr Data is a fork of the software Pure Data-- the visual language itself
is usually referred to as Pd.) However, the library may also be written in
C, or C++.
Completed Projects From Previous Years
--------------------------------------
...
...
@@ -334,69 +394,6 @@ Javascript and C.
### Potential Mentor
Giulio Moro
Vintage Platform Audio Emulation Library
----------------------------------------
### Goal
Create a library with objects that emulate the hardware from
old hardware like the atari 2600, NES, and others.
### Details
There are a lot of resources online for emulating old
hardware. Purr Data would benefit by having a library
that provides a consistent interface for objects that
take input into an emulation of a piece of hardware and
output one or more audio signals.
If possible, it would be beneficial if most of the interface
could be built as a set of abstractions. That way more
developers would be able to understand and improve the library.
There is a TIA chip emulator written in C in externals/mmonoplayer
that can be used as a starting point.
### Challenges
Finding a common interface that makes it easy for users to leverage
these classes while at the same time being expressive enough to allow
decent control of the chip being emulated.
### Languages
Pd (Purr Data is a fork of the software Pure Data-- the visual language itself
is usually referred to as Pd.) Also, C.
Data Over Audio Messaging
-------------------------
### Goal
Create a library that allows two instances of Purr Data to pass data messages
to each other using sound as the transmission medium.
### Details
Pd messages consist mainly of space-separated numbers and symbols.
Semicolons mark the end of a message.
Sometimes it would be helpful to be able to pass messages from
one instance of Purr Data to another-- especially if each instance is
on a different machine in the same room. This is currently done either
by setting up socket listener/receiver between the two instances or by
leveraging a separate message-passing system outside of Purr Data.
Since Purr Data is concerned mainly with analyzing and sythesizing sound,
machines running Purr Data typically have a mic and speakers connected to
a running instance. If it were possible for the user to simply create
objects which send/receive messages by sending audio signals to/from each
other it would greatly simplify sending at least small amounts of data
between machines.
### Challenges
Finding a decent interface for users without relying on a big set
of dependencies.
### Languages
Pd (Purr Data is a fork of the software Pure Data-- the visual language itself
is usually referred to as Pd.) However, the library may also be written in
C.
Interaction with Audio Plugins
------------------------------
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment