From 53f8afbdb2854e3c89b510e259fff83f6f3da3da Mon Sep 17 00:00:00 2001 From: Aaro Altonen Date: Tue, 23 Feb 2021 14:19:32 +0200 Subject: [PATCH] Document push_frame() --- docs/examples/rawvideo.cc | 36 --- .../classuvgrtp_1_1media__stream-members.html | 6 +- docs/html/classuvgrtp_1_1media__stream.html | 235 ++++++++++++++++-- docs/html/index.html | 2 +- docs/html/media__stream_8hh_source.html | 194 ++++++++------- docs/html/search/all_5.js | 2 +- docs/html/search/functions_4.js | 2 +- docs/html/util_8hh.html | 4 +- include/media_stream.hh | 121 +++++++-- 9 files changed, 431 insertions(+), 171 deletions(-) delete mode 100644 docs/examples/rawvideo.cc diff --git a/docs/examples/rawvideo.cc b/docs/examples/rawvideo.cc deleted file mode 100644 index 94f0219..0000000 --- a/docs/examples/rawvideo.cc +++ /dev/null @@ -1,36 +0,0 @@ -#include -#include - -void hook(void *arg, uvgrtp::frame::rtp_frame *frame) -{ - LOG_INFO("Raw video scan line(s) received"); - uvgrtp::frame::dealloc_frame(frame); -} - -int main(void) -{ - /* To use the library, one must create a global RTP context object */ - uvgrtp::context ctx; - - /* Each new IP address requires a separate RTP session */ - uvgrtp::session *sess = ctx.create_session("127.0.0.1"); - uvgrtp::media_stream *rwv = sess->create_stream(8888, 8888, RTP_FORMAT_RAW_VIDEO, RTP_NO_FLAGS); - - /* install receive hook for asynchronous frame reception */ - rwv->install_receive_hook(nullptr, hook); - - /* specify pixel format of input/output data */ - rwv->configure_ctx(RCC_FMT_SUBTYPE, uvgrtp::formats::RWV_FMT_YUV420); - - for (;;) { - uint8_t data[36]; - - rwv->push_frame((uint8_t *)data, sizeof(data), RTP_NO_FLAGS); - /* TODO: what kind of data is given to push_frame()? */ - } - - /* Session must be destroyed manually */ - ctx.destroy_session(sess); - - return 0; -} diff --git a/docs/html/classuvgrtp_1_1media__stream-members.html b/docs/html/classuvgrtp_1_1media__stream-members.html index 34e194e..bdba6f3 100644 --- a/docs/html/classuvgrtp_1_1media__stream-members.html +++ b/docs/html/classuvgrtp_1_1media__stream-members.html @@ -79,9 +79,9 @@ $(function() { pull_frame()uvgrtp::media_stream pull_frame(size_t timeout)uvgrtp::media_stream push_frame(uint8_t *data, size_t data_len, int flags)uvgrtp::media_stream - push_frame(uint8_t *data, size_t data_len, uint32_t ts, int flags) (defined in uvgrtp::media_stream)uvgrtp::media_stream - push_frame(std::unique_ptr< uint8_t[]> data, size_t data_len, int flags) (defined in uvgrtp::media_stream)uvgrtp::media_stream - push_frame(std::unique_ptr< uint8_t[]> data, size_t data_len, uint32_t ts, int flags) (defined in uvgrtp::media_stream)uvgrtp::media_stream + push_frame(std::unique_ptr< uint8_t[]> data, size_t data_len, int flags)uvgrtp::media_stream + push_frame(uint8_t *data, size_t data_len, uint32_t ts, int flags)uvgrtp::media_stream + push_frame(std::unique_ptr< uint8_t[]> data, size_t data_len, uint32_t ts, int flags)uvgrtp::media_stream