Commit Graph

20 Commits

Author SHA1 Message Date
Aaro Altonen e3fc05a13a Detect and resolve SSRC conflicts
If an SSRC conflic is detected, new SSRC must be generated and
all RTCP statistics zeroed out. The collision is detected for every
incoming RTP packet.
2019-08-14 10:26:15 +03:00
Aaro Altonen 5d957736c8 Enable win_get_last_error() 2019-08-09 08:09:36 +03:00
Aaro Altonen 65adaa3a09 Increase the maximum payload size 2019-07-30 08:21:28 +03:00
Aaro Altonen 9fcf8b5a76 Implement windows-specific parts 2019-07-15 12:06:38 +03:00
Aaro Altonen 3cff82e132 Create function generating random 32-bit numbers 2019-07-15 09:29:02 +03:00
Aaro Altonen c17b6e3259 Create CNAME for every RTCP instance 2019-06-26 11:07:15 +03:00
Aaro Altonen c5b12ef4f4 Add support for multiple RTCP participants
This is preliminary support for multicast groups
2019-06-20 09:25:01 +03:00
Aaro Altonen 9970af92c9 Add RTP_INTERRUPTED error code
This error code is used to indiciate that an ongoing process (f.ex
polling a file descriptor) was interrupted but that "a real error"
did not occur and it is safe to continue
2019-06-17 12:03:35 +03:00
Aaro Altonen 6b83b07e99 Add PACKED_STRUCT macro
We must use packed structures because the structs we're sending must
not be padded at all
2019-06-17 12:01:23 +03:00
Aaro Altonen 89f5e3d708 Create rtp_errno global variable
Functions that can fail but cannot return error code (f.ex frame
allocation functions) should use this to specify the error condition
2019-06-17 10:03:50 +03:00
Aaro Altonen ed4b01a61d Add missing include to util.hh 2019-06-14 12:51:10 +03:00
Aaro Altonen c1e27ab008 Use header sizes defined in frame.hh 2019-06-04 13:57:09 +03:00
Aaro Altonen 0f47b284f7 Add function for dumping array contents in hex format 2019-06-03 11:53:27 +03:00
Aaro Altonen 3c95b1cd6f Rewrite RTP frame receving
Now each supported RTP frame types has its own handler which is called
when a new RTP frame is received. This way we can do frame type specific
operations (f.ex. merging HEVC FU frames) and return fully processed
frames to user

This change introduces new status code "RTP_NOT_READY" which indicates
to the caller that the operation did not finish (eg. we've received only
part of the frame).
2019-06-03 11:52:11 +03:00
Aaro Altonen 9126b7a43a Rewrite the code using new style
* switch from camelCase to snake_case
* put all code behind kvz_rtp namespace
* improve how headers of RTP frames can ben handled
2019-05-22 12:43:35 +03:00
Aaro Altonen 732ecaf43a Remove rtp uniq identifier generator from util.cc 2019-05-22 09:39:16 +03:00
Aaro Altonen 65c8131745 Add more common defines to util.hh 2019-05-17 12:49:33 +03:00
Aaro Altonen 87cf722029 Remove util.cc 2019-05-17 11:08:40 +03:00
Aaro Altonen 5c2079f1b2 Add RTP-specific return values/error codes 2019-05-17 09:30:58 +03:00
Aaro Altonen a48e022880 Rename files more logically 2019-03-30 12:29:05 +02:00