-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathREADME.txt
76 lines (59 loc) · 2.44 KB
/
README.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
iemrtp - RTP support for Pd
===========================
this is a small set of objects for transmitting audio over the internet,
in a standardized format.
these objects convert audio data to byte-packets and vice-versa.
the actual transmission (sending/receiving) has to be handled by
other means, e.g. mrpeach's or iemnet's [udpsend]/[udpreceive].
RTP (and the accompanying RTCP) are described in
RFC3550
iemrtp does not give you a ready solution for streaming audio.
instead it gives you all the building blocks needed to create a
solution for streaming audio.
working examples can be found in examples/
RTP
===
RTP is the "Real-time Transport Protocol", a lightweight protocol for
transmitting media data (e.g. audio) over the internet.
payloader: [rtp*pay~]
---------------------
generate packets containing multichannel audio-data for a given profile
packets have a valid RTP-header that can be modified via messages
(timestamps, sequence number, payload-type).
depayloader: [unpackRTP] + [*decode]
------------------------------------
parse and decode an RTP-packet.
[unpackRTP] will give you all the meta-information (as found in the header),
and will output the raw payload data.
feeding the raw payload data to the appropriate decoder-object will
reconstruct the original data.
convenience: [rtp*depay~]
-------------------------
using [unpackRTP] and a decoder it is easy to reconstruct audio-signal from
RTP-packets. for convenience this is exemplified in [rtp*depay~]
implemented profiles
--------------------
the way, media data is encoded is called "profile" in RTP-language.
currently the following formats are implemented:
- L16: signed 16bit integer, interleaved
[rtpL16pay~]: convert audio-signals into L16 encoded RTP-packets
[L16decode] : convert L16 encoded data into de-interleaved
floating point samples
performance
-----------
for performance reasons, the conversion *to* RTP-packets is done in a single
monolithic object, whereas conversion *from* RTP-packets is modular.
(that's because our current target RTP-sender is a mobile platform, whereas
the RTP-receiver is a full-fledged PC)
LATER we hope to make the encoder modular as well.
RTCP
====
the "RTP Control Protocol" is used to monitor an RTP-connection
[unpackRTCP] decodes an RTCP-package into Pd-messages.
[packRTCP] synthesizes RTCP-packages from Pd-messages.
AUTHORS
=======
IOhannes m zmölnig - Institute of Electronic Music and Acoustics
LICENSE
=======
LGPL-2.1