Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rx thread with separate audio activate #2

Closed
wants to merge 31 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
31 commits
Select commit Hold shift + click to select a range
02dbbe9
audio: separate aureceiver
cspiel1 Mar 15, 2023
c10edda
aureceiver: simplify logging of over/underruns
cspiel1 May 11, 2023
9f02efc
aup: concurrency safe check if aubuf exists
cspiel1 May 26, 2023
5c0e0f3
aup: use atomic instead mtx lock for latency
cspiel1 May 26, 2023
3641324
audio: fix sanitizer warning in auplay_write_handler
cspiel1 May 26, 2023
1f84cfe
aucodec: move aucodec_print to internal API
cspiel1 Jun 13, 2023
68d143b
audio/video: disable stream in destructor
cspiel1 Jun 16, 2023
404ca8c
aup: correctly read/write atomic
cspiel1 Jun 16, 2023
31fa252
aup: check atomic ready flag instead of aubuf pointer
cspiel1 Jun 16, 2023
60752cf
aup: replace atomic by mtx avoids thread sanitizer warnings
cspiel1 Jun 23, 2023
d1c0aad
aur: rename aurpipe to audio_recv
cspiel1 Aug 1, 2023
7aaeaad
aur: rename audio_recv pointer from rp to ar
cspiel1 Aug 2, 2023
930f7cc
aur: rename functin prefix aup_ to aur_
cspiel1 Aug 2, 2023
19f6508
audio,aur: measure SW decoding jitter
cspiel1 Aug 3, 2023
03439ce
aur: print times in ms float numbers
cspiel1 Aug 3, 2023
0f89e1a
audio: rename pointer aup to aur
cspiel1 Aug 3, 2023
445d27e
rtprecv: correct error handling
cspiel1 Sep 4, 2023
981a5a7
stream,rtprecv: activate RX thread via config
cspiel1 Oct 25, 2023
1d7b9ad
test: run call tests with RX_MODE_THREAD
cspiel1 Oct 25, 2023
b0187db
test: main - init async workers
cspiel1 Oct 25, 2023
e76b25c
rtprecv: detach from RTP/RTCP sockets before re_cancel
cspiel1 Oct 25, 2023
49cc763
stream,rtprecv: detach from RTP/RTCP also in RECEIVE_MODE_MAIN
cspiel1 Oct 25, 2023
a5cb008
test: call - add AUDIO_MODE_THREAD for test_call_aufilt
cspiel1 Oct 25, 2023
405c1f0
test: call - reset to RECEIVE_MODE_MAIN
cspiel1 Oct 27, 2023
9fa15eb
rtprecv: use enable flag to prevent data race on stream termination
cspiel1 Oct 30, 2023
c5209c7
test: call - do not test unsupported combination
cspiel1 Oct 30, 2023
ad79fad
test: call - failure debug for test_media_base()
cspiel1 Oct 31, 2023
e9eaeec
[TMP] ci: activate verbose logging for valgrind workflow
cspiel1 Oct 31, 2023
75fe91c
rtprecv: detach sockets before attach
cspiel1 Oct 31, 2023
81433b5
rtprecv: warnings for UDP thread attach
cspiel1 Nov 2, 2023
3ff1e64
aurecv: fix cracking audio on start
cspiel1 Nov 28, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/valgrind.yml
Original file line number Diff line number Diff line change
Expand Up @@ -43,4 +43,4 @@ jobs:
run: cmake -B build -DSTATIC=1 -DMODULES="g711;ausine;fakevideo;auconv;dtls_srtp;srtp;aufile" && cmake --build build -j

- name: valgrind test
run: valgrind --leak-check=full --show-reachable=yes --error-exitcode=42 ./build/test/selftest
run: valgrind --leak-check=full --show-reachable=yes --error-exitcode=42 ./build/test/selftest -v
1 change: 1 addition & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -145,6 +145,7 @@ set(SRCS
src/audio.c
src/aufilt.c
src/auplay.c
src/aureceiver.c
src/ausrc.c
src/baresip.c
src/bundle.c
Expand Down
1 change: 1 addition & 0 deletions docs/examples/config
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,7 @@ video_jitter_buffer_delay 5-10 # (min. frames)-(max. packets)
rtp_stats no
#rtp_timeout 60
#avt_bundle no
#rtp_rxmode main # main,thread

# Network
#dns_server 1.1.1.1:53
Expand Down
7 changes: 7 additions & 0 deletions include/baresip.h
Original file line number Diff line number Diff line change
Expand Up @@ -326,6 +326,12 @@ enum audio_mode {
AUDIO_MODE_THREAD, /**< Use dedicated thread */
};

/** RTP receive mode */
enum rtp_receive_mode {
RECEIVE_MODE_MAIN = 0, /**< RTP RX is processed in main thread */
RECEIVE_MODE_THREAD, /**< RTP RX is processed in separate thread */
};

/** SIP User-Agent */
struct config_sip {
char uuid[64]; /**< Universally Unique Identifier */
Expand Down Expand Up @@ -404,6 +410,7 @@ struct config_avt {
bool rtp_stats; /**< Enable RTP statistics */
uint32_t rtp_timeout; /**< RTP Timeout in seconds (0=off) */
bool bundle; /**< Media Multiplexing (BUNDLE) */
enum rtp_receive_mode rxmode; /**< RTP RX processing mode */
};

/** Network Configuration */
Expand Down
Loading
Loading