FUDI
Encyclopedia
FUDI is a networking protocol used by the Pure Data
patching language invented by Miller Puckette
. It is a string based protocol in which messages are separated by semicolons. Messages are made up of tokens separated by whitespaces, and numerical tokens are represented as strings.
Each message consists of one or more atoms, separated by one or more whitespace characters, and it's terminated by a semicolon character.
An atom is a sequence of one or more characters; whitespaces inside atoms can be escaped by the backslash (ascii 92) character (see Examples below).
A whitespace is either a space (ascii 32), a tab (ascii 9) or a newline (ascii 10).
A semicolon (ascii 59) is mandatory to terminate (and send) a message.
A newline is just treated as whitespace and not needed for message termination.
Fudi is also the Swiss German word for bottom.
. They are meant to be used with their counter parts, the classes [netsend] / [netreive] of Pd.
my-slider 12;
hello this is a message;
this message continues
in the following
line;
you; can; send; multiple messages; in a line;
this\ is\ one\ whole\ atom;
this_atom_contains_a\
newline_character_in_it;
Pure Data
Pure Data is a visual programming language developed by Miller Puckette in the 1990s for creating interactive computer music and multimedia works. While Puckette is the main author of the program, Pd is an open source project with a large developer base working on new extensions to it. It is...
patching language invented by Miller Puckette
Miller Puckette
Miller Smith Puckette is the associate director of the Center for Research in Computing and the Arts as well as a professor of music at the University of California, San Diego, where he has been since 1994....
. It is a string based protocol in which messages are separated by semicolons. Messages are made up of tokens separated by whitespaces, and numerical tokens are represented as strings.
Format
FUDI is a packet oriented protocol.Each message consists of one or more atoms, separated by one or more whitespace characters, and it's terminated by a semicolon character.
An atom is a sequence of one or more characters; whitespaces inside atoms can be escaped by the backslash (ascii 92) character (see Examples below).
A whitespace is either a space (ascii 32), a tab (ascii 9) or a newline (ascii 10).
A semicolon (ascii 59) is mandatory to terminate (and send) a message.
A newline is just treated as whitespace and not needed for message termination.
Fudi is also the Swiss German word for bottom.
pdsend / pdreceive
Those command-line tools are distributed with the software Pure DataPure Data
Pure Data is a visual programming language developed by Miller Puckette in the 1990s for creating interactive computer music and multimedia works. While Puckette is the main author of the program, Pd is an open source project with a large developer base working on new extensions to it. It is...
. They are meant to be used with their counter parts, the classes [netsend] / [netreive] of Pd.
[netsend] / [netreceive]
Those classes can be used to transport Pd-messages over a TCP or UDP socket. Both are part of Pd-vanilla.[netserver] / [netclient]
Those are part of maxlib and allow bidirectional connections of multiple clients with one server.Example messages
test/blah 123.45314;my-slider 12;
hello this is a message;
this message continues
in the following
line;
you; can; send; multiple messages; in a line;
this\ is\ one\ whole\ atom;
this_atom_contains_a\
newline_character_in_it;