Commit Graph

66 Commits

Author SHA1 Message Date
Mathis Logemann 8a976f07a9 include cstdint for gcc13 compability 2024-01-12 15:43:37 +01:00
Heikki Tampio ecf65ba5b0 common: Disable user packets for now 2023-08-02 14:47:56 +03:00
Heikki Tampio 6ec8880760 common: Small fixes to function names, etc 2023-08-02 13:30:21 +03:00
Heikki Tampio 6aaf23e06d common: Rename add_zrtp_ctx() to start_zrtp() 2023-08-02 13:21:37 +03:00
Heikki Tampio efe7d98ca5 Merge branch 'multiplex' 2023-07-31 12:17:12 +03:00
Heikki Tampio e39fc25a5a multiplex: Add flag checks for starting ZRTP manually 2023-07-28 13:48:58 +03:00
Heikki Tampio 5e29a0bf32 multiplex: Revive sending user packets functionality that was disabled 2023-06-27 08:30:38 +03:00
Heikki Tampio ac4f883d3f multiplex: Rewrite ZRTP initialization to use new packet handler 2023-06-21 15:32:20 +03:00
Heikki Tampio 71a0dcd138 multiplex: Simplify initialization of media streams when using SRTP 2023-06-16 12:46:27 +03:00
Heikki Tampio 0f2cdf55f8 multiplex: Add add_zrtp_ctx() function 2023-06-16 09:43:28 +03:00
Heikki Tampio 799c743b56 common: get_configuration_value() returns -1 on all errors 2023-06-15 13:48:50 +03:00
Heikki Tampio 5b6a06f14f multiplex: Comment out functions related to sending user packets 2023-05-29 14:08:29 +03:00
Heikki Tampio 2a7526ec26 multiplex: Check sender IP address when receiving packets in reception_flow 2023-05-12 15:04:43 +03:00
Heikki Tampio 478a06408e multiplex: Add ability to send user packets 2023-05-12 13:25:26 +03:00
Heikki Tampio 40f7329ea6 common: Add return values to get_configuration_value() in media_stream 2023-05-11 12:31:46 +03:00
Heikki Tampio 655294e9d2 common: Add get_configuration_value() for getting configuration flag values 2023-05-10 16:24:56 +03:00
Heikki Tampio 0dde713b63 multiplex: Fix bug when closing RTCP report reader 2023-05-10 14:22:15 +03:00
Heikki Tampio de82b282a5 multiplex: remove remote_sockaddr (4 and 6) from socket along with functions that used them 2023-05-04 15:02:22 +03:00
Heikki Tampio 4d56a20943 multiplex: remove add_zrtp_ctx() from media_stream 2023-05-04 12:43:33 +03:00
Heikki Tampio c68bc0a963 multiplex: Add function add_zrtp_ctx
You can start ZRTP initialization with this function. Used like add_srtp_ctx().
2023-05-03 14:58:58 +03:00
Heikki Tampio 985a33d043 multiplex: Add ability to set RCC_SSRC and RCC_REMOTE_SSRC before stream is initialized
Also add body for add_zrtp_ctx() in media_stream
2023-04-28 12:55:17 +03:00
Heikki Tampio 8f8e58ba01 multiplex: Map hooks to remote SSRCs 2023-04-26 14:56:17 +03:00
Heikki Tampio e276490db0 multiplex: Separate reception_flow and socketfactory 2023-04-25 13:51:45 +03:00
Heikki Tampio 7efce9901a multiplex: Add universal hook to socketfactory 2023-04-19 15:19:50 +03:00
Heikki Tampio 0a554938d0 multiplex: Add option to manually set remote SSRC of media stream 2023-04-19 12:47:36 +03:00
Heikki Tampio 5091876961 multiplex: basic sending and receiving works on ipv6, but not on ipv4 2023-04-05 12:18:50 +03:00
Heikki Tampio fab904a39a multiplex: clean up functions that went in the wrong design direction 2023-04-05 10:55:24 +03:00
Heikki Tampio 6bb49cccc9 multiplex: add is_single_socket() to media_stream 2023-04-05 09:43:00 +03:00
Heikki Tampio ac7023f9f3 multiplex: receive multiple streams in one socket 2023-04-03 14:23:03 +03:00
Heikki Tampio 0d9e3beed6 ipv6: remove clutter from media_stream api 2023-03-20 15:07:09 +02:00
Heikki Tampio a9fc7750dc Merge branch 'IPv6' 2023-03-20 13:26:51 +02:00
Heikki Tampio 5c9c5562e2 ipv6: fix compiler error 2023-03-15 10:21:01 +02:00
Heikki Tampio 6d23229936 Improve documentation
Also remove tabs from CMakeLists.txt in examples folder
2023-03-13 14:35:11 +02:00
Heikki Tampio 84bf8c9e4c ipv6: add ipv6 support
ipv6 support for rtp, rtcp, srtp+zrtp, no context flags needed

# Conflicts:
#	src/media_stream.cc
#	src/rtcp.cc
#	src/socket.cc
2023-03-13 13:47:25 +02:00
Heikki Tampio e6c759f514 Merge branch 'rtcp_fixes'
# Conflicts:
#	examples/CMakeLists.txt
#	include/uvgrtp/media_stream.hh
#	include/uvgrtp/util.hh
#	src/media_stream.cc
#	src/rtcp.cc
2023-03-13 13:32:15 +02:00
Heikki Tampio 63175f8a04 rtcp: Calculate RTP timestamp in SR correctly
Also add the ability to manually set RTP and NTP timestamps in RTP packets.
2023-02-13 10:48:06 +02:00
Heikki Tampio 9dff5f3c58 RTCP: Implement the ability to set session bandwidth via a context flag
Session bandwidth affects the RTCP packet transmission interval. Related to issue #65.
2022-12-19 13:35:06 +02:00
vechtomo db19b52dc5 config: allow for custom SSRC. Added thread safety 2022-12-13 15:36:36 +02:00
Joni Räsänen 4f205c893d common: Use correct name for numerator 2022-09-19 14:43:08 +03:00
Joni Räsänen 72224ce909 common: Reduce the default MTU size by 8 bytes
This helps account for various protocols that add an extra 8 bytes on
top of sent UDP traffic.
2022-09-16 16:35:59 +03:00
Joni Räsänen 1b2996fd25 common: Release the memory of copy with RTP_COPY flag
uvgRTP does not indeed take ownership of the data when used with non-
smart pointer API. Now the copy is deleted by making it a unique_ptr.
2022-09-15 12:00:57 +03:00
Joni Räsänen 4dba1d55d1 common: Update documentation of public API
This commit makes Doxygen generation create better documentation.
2022-09-15 08:17:58 +03:00
Joni Räsänen 938efe1176 common: Implement RTP_COPY flag 2022-09-09 13:29:50 +03:00
Joni Räsänen b8091d02b6 common: Simplify media_stream code
Remove unused media_config and construct socket and holepuncher at
constructor.
2022-09-08 11:27:44 +03:00
Joni Räsänen d68fcb0690 common: Add possibility only send or only receive
The API forced uvgRTP to both bind to local port even if user does not
need or want this and it also expects the user to know the remote
remote address which is not always possible.

This commit adds API to session for specifying only one port when
creating media_stream. This commit also adds RCE_SEND_ONLY and
RCE_RECEIVE_ONLY flags which can be used to prevent binding and specify
the meaning of single address and port parameters.
2022-09-06 11:45:19 +03:00
Joni Räsänen eb5e7c7c2f common: Fix warnings given by GCC on Linux 2022-08-25 18:19:05 +03:00
Joni Räsänen f915b2aa17 common: Remove most MSVC compiler warnings 2022-08-25 17:30:09 +03:00
Joni Räsänen 1c9dcd2aad common: Clarify address naming 2022-08-24 14:34:12 +03:00
Joni Räsänen f9a89f7408 common: Rename all flags to distinguish between types
I've already created one bug by not being able to distinguish between
different flags. uvgRTP has four types of flags: enable, context, rtp
and socket. I'm planning on adding one more flag type which makes this
a good point to rename all flags.
2022-08-23 09:47:41 +03:00
Joni Räsänen 2abf0bc4ef common: FPS API for sending 2022-08-22 11:34:06 +03:00