Commit Graph

1831 Commits

Author SHA1 Message Date
Aaro Altonen e244051611 Increase the RTP sequence after each send 2019-05-17 13:04:48 +03:00
Aaro Altonen dd8d9cec53 Update RTP statistics in send.cc if enabled 2019-05-17 13:03:47 +03:00
Aaro Altonen 65c8131745 Add more common defines to util.hh 2019-05-17 12:49:33 +03:00
Aaro Altonen b84be50344 Create routines for (de)allocating different kinds of frames 2019-05-17 12:47:38 +03:00
Aaro Altonen d7d5f55e69 Create common routines for writing headers/payloads 2019-05-17 12:47:07 +03:00
Aaro Altonen dd2304ad0b Use MSG_MORE in pushGenericFrame
We can remove yet another unnecessary copy by first "sending"
the RTP header (copying it to OS's buffers) and the sending
the actual payload.

This way no extra copying happens.
2019-05-17 11:10:38 +03:00
Aaro Altonen 87cf722029 Remove util.cc 2019-05-17 11:08:40 +03:00
Aaro Altonen b8dac98c55 Preallocate space for RTP header when allocating GenericFrame
This way we can get rid of copying the payload into temporary buffer
before sending it
2019-05-17 10:34:57 +03:00
Aaro Altonen 838d6bb48f Update README.md 2019-05-17 09:36:54 +03:00
Aaro Altonen e2117b8298 Use SO_REUSEADDR for reader.cc's socket 2019-05-17 09:30:58 +03:00
Aaro Altonen f61a7dbe71 Add receive hook functionality for RTPReader
If the RTP Sink wants to install a function that is called when an
RTP frame is received, that is now possible.

This is an alternative to polling the framesOut_ vector
2019-05-17 09:30:58 +03:00
Aaro Altonen 5c2079f1b2 Add RTP-specific return values/error codes 2019-05-17 09:30:58 +03:00
Aaro Altonen e4710fbe77 Format code and add debug prints in rtp_hevc.cc 2019-05-17 09:30:58 +03:00
Aaro Altonen 234ffd349b Update RTP statistics only if they've been enabled 2019-05-17 09:30:58 +03:00
Aaro Altonen 4f162c4c90 Use correct return values in rtp_generic.cc 2019-05-17 09:30:58 +03:00
Aaro Altonen 40e41ba44c Call delete instead of free when freeing the frame data 2019-05-17 09:30:58 +03:00
Aaro Altonen 757b77f638 Change the config type to void *
This way we can outsource the typecasting to caller (who should know
what the type really is)
2019-05-17 09:30:58 +03:00
Aaro Altonen 09d1c8e0a4 Send Opus packets as generic RTP packets
In the future we may want to include the Opus header for versatility
but for now Opus packets can be just send without the header
2019-05-17 09:30:58 +03:00
Aaro Altonen 645beb08d7 Add missing include to debug.hh 2019-05-17 09:30:58 +03:00
Aaro Altonen 6ab00f1b5e Add source port parameter for RTPWriter
This is required if we want to support hole punching
2019-05-17 09:30:52 +03:00
Aaro Altonen d56b70beaf Add example code for sending Opus 2019-05-17 09:18:07 +03:00
Aaro Altonen eccc414bcf Add debug macros 2019-05-13 09:49:28 +03:00
Aaro Altonen 1552cec1ce Detach frameReceiver after it has been spawned 2019-04-01 12:09:10 +03:00
Aaro Altonen 008107c33f Separate RTPConnection into RTPReader and RTPWriter 2019-04-01 12:03:40 +03:00
Aaro Altonen e0fe94b13d Add gitignore 2019-04-01 10:12:09 +03:00
Aaro Altonen 02be5a979a Add support for Opus streaming 2019-04-01 08:52:06 +03:00
Aaro Altonen a1dd141588 Add setter/getter for config 2019-04-01 08:52:06 +03:00
Aaro Altonen 16b90294cd Use correct payload for generic RTP message 2019-04-01 08:52:06 +03:00
Aaro Altonen a48e022880 Rename files more logically 2019-03-30 12:29:05 +02:00
Aaro Altonen 38bc84b78b Add support for HEVC streaming 2019-03-30 12:22:57 +02:00
Aaro Altonen 0f3e68b0b6 Initial commit 2019-03-30 12:21:51 +02:00