Compy 0.2.0
A lightweight RTSP 1.0 server library for embedded systems
Loading...
Searching...
No Matches
receiver.h
Go to the documentation of this file.
1
10#pragma once
11
12#include <compy/droppable.h>
13#include <compy/rtcp.h>
14#include <compy/types/rtp.h>
15
16#include <stdbool.h>
17#include <stddef.h>
18#include <stdint.h>
19
20#include <interface99.h>
21#include <slice99.h>
22
23#include <compy/priv/compiler_attrs.h>
24
31#define Compy_AudioReceiver_IFACE \
32 vfunc99( \
33 void, on_audio, VSelf99, uint8_t payload_type, uint32_t timestamp, \
34 uint32_t ssrc, U8Slice99 payload)
35
36interface99(Compy_AudioReceiver);
37
38#define COMPY_CHANNEL_RTCP 0
39#define COMPY_CHANNEL_RTP 1
40
42
51 Compy_Rtcp *rtcp, Compy_AudioReceiver audio_receiver) COMPY_PRIV_MUST_USE;
52
67 Compy_RtpReceiver *self, uint8_t channel_type, const uint8_t *data,
68 size_t len);
69
70declImplExtern99(Compy_Droppable, Compy_RtpReceiver);
interface99(Compy_Controller)
Defines the Compy_Controller interface.
Droppable types support.
int Compy_RtpReceiver_feed(Compy_RtpReceiver *self, uint8_t channel_type, const uint8_t *data, size_t len)
Feeds raw received data into the receiver for demuxing.
Definition receiver.c:32
Compy_RtpReceiver * Compy_RtpReceiver_new(Compy_Rtcp *rtcp, Compy_AudioReceiver audio_receiver) COMPY_PRIV_MUST_USE
Creates a new RTP receiver for demuxing incoming data.
Definition receiver.c:14
RTCP session management (RFC 3550 Section 6).
RFC 3550-compliant RTP implementation.
Definition rtcp.c:11
Definition receiver.c:8