Robin Getz
e86e95feab
DATV: Convert leansdr fail and fatal errors into C++ exceptions
...
The original leansdr code uses fatal() and fail() for unrecoverable errors by
terminating execution. When integrated into SDRangel, these error paths did
not provide a mechanism for the plugin to handle failures locally, allowing
initialization failures to escape the normal plugin lifecycle.
Convert leansdr fatal() and fail() handling into C++ exceptions so DATV can
detect framework initialization failures, report them, and cleanly return
control to SDRangel instead of allowing the error to terminate the application.
This behavior is desirable because a DATV framework configuration failure
should not bring down the entire application.
Catch initialization exceptions in DATVDemodSink::feed(), report the failure,
clean up the partially initialized framework, and return to the caller.
Add noreturn annotations to the leansdr error functions and include the
leansdr source in exception messages to make failures easier to diagnose.
This does not redesign leansdr error handling or provide recovery from
runtime DSP failures. It only adds an exception boundary between the
leansdr library code and the SDRangel plugin lifecycle.
noticed via cppcheck indicating many Array indexes could go out of bounds
due to fail and fatal returning.
Signed-off-by: Robin Getz <rgetz503@gmail.com >
2026-07-25 18:50:40 -04:00
f4exb
103e86c80b
Apply atomic settings to channel Rx plugins part 1. Part of #1329
2026-02-01 12:26:46 +01:00
f4exb
002f5e8af3
Demod DATV: improve UDP TS output detection
2025-05-03 17:16:19 +02:00
f4exb
ce007419e8
DATV demod server plugin
2025-05-03 04:29:19 +02:00
f4exb
fc82606e6e
DATV demod: completely remove LDPC external command references
2025-05-03 02:38:48 +02:00
f4exb
ab54ac7a63
DATV demod: prepare for server version
2025-05-03 01:43:35 +02:00
f4exb
379c802d39
Move datvideorender.h outside datvdemodsink.h
2025-05-02 23:57:25 +02:00
DreamNik
f694ba04b8
Fix compilation warnings and errors
2024-09-05 13:37:46 +03:00
Daniele Forsi
8c3f7e3775
Remove unused includes and use more direct includes
2024-04-11 23:31:34 +02:00
f4exb
3a944fa209
Rewriting of copyright notices for plugins/channelrx. Part of #1893
2023-11-18 12:02:48 +01:00
f4exb
7852ab79a6
DATV demod: change interpolator and NCO in the same block
2023-04-10 11:49:30 +02:00
f4exb
b4a1680d54
DATV demod: fixed rf bandwidth and symbol rate apply settings
2023-04-01 03:25:01 +02:00
f4exb
afd8d492c5
DATV demod: implement interpolator (decimator) so that DVB engine input rate is always twice the symbol rate
2023-03-31 00:30:06 +02:00
f4exb
03e29e9a1d
DATV demod: small optimizations (2)
2023-03-30 11:23:37 +02:00
f4exb
d70f431ec2
DATV demod: small optimizations
2023-03-30 11:23:37 +02:00
Jiří Pinkava
0df2d75e6d
Replace deprecated QMutex(Recursive) with QRecursiveMutex
2022-09-17 23:00:07 +02:00
Jon Beniston
23c65fc8f3
MacOS build fixes
2022-08-04 15:13:25 +01:00
Jon Beniston
ff26ece347
DATV Demod: Add support for LDPC on Windows. Use Qt worker thread instead of external ldpc_tool process.
2022-07-18 16:40:00 +01:00
f4exb
b0c49f3b50
DATV demod: API updates and small fixes
2021-11-03 21:56:33 +01:00
f4exb
4b1a861717
DATV demod: de-couple MER and CNR GUIs from core
2021-11-03 21:56:33 +01:00
f4exb
f8a512e91b
DATV demod: allow video player enable/disable
2021-04-11 23:52:16 +02:00
f4exb
4f9fe7b533
DATV demod: stop player before initializing DATV framework
2021-04-09 13:43:02 +02:00
f4exb
d22cd45b14
DATV demod: player refactoring: preliminary cleanup (3)
2021-04-05 02:42:36 +02:00
f4exb
6b5e11ffe5
DATV demod: DATVDemodSink: init DATV framework outside process sample loop
2021-04-03 06:41:12 +02:00
f4exb
09b9c6aaef
DATV demod: moved MODCOD detection in front of samples processing
2021-04-03 06:41:12 +02:00
f4exb
428128118a
DATV demod: Do video stream cleamup when re-initializing DATV framework. Reduce videoThreadTimeoutMs to 500 ms
2021-04-01 06:14:56 +02:00
f4exb
c4e9ada144
DATV demod: GUI: more accurate display of video thread active and MCOD detection. Correction of RRC=0.2 bug. Small optimizations in dvbs2.h match_frame
2021-03-31 05:03:10 +02:00
f4exb
207115bc4c
DATV demod: leandvb: replace custom complex by std::complex
2021-03-29 06:00:41 +02:00
f4exb
011d5fbf60
DATV demod: rationalize usage of DATVideostream
2021-03-29 06:00:41 +02:00
f4exb
29506a1d65
DATV: fixes to improve stability (1)
2021-03-29 06:00:40 +02:00
f4exb
7e375079fe
DATV: shut down video player before destruction
2021-03-27 09:38:54 +01:00
f4exb
4ce2ae5ae5
DATV: fixed DATVideoRender crash at close time when active: DATVDemodBaseband delete later
2021-03-23 08:35:30 +01:00
f4exb
6810990c99
DATV: DATVDemodSink: rationalize playVideo method
2021-03-22 19:47:47 +01:00
f4exb
841e980c7c
DATV: DVBS-2: increased number of ldpc_tool processes to 6
2021-03-20 10:56:04 +01:00
f4exb
227245eb94
DATV: CNR optimization
2021-03-14 10:54:37 +01:00
f4exb
4ff5d7d76d
DATV: reset data count when framework is restarted
2021-03-14 07:57:55 +01:00
f4exb
d73f093dab
DATV: various fixes and enhancements to ldpc_tool handling. Implements #804
2021-03-13 00:13:00 +01:00
f4exb
233f512f9c
DATV: enhancement and fixes to DVBS2 external LDPC tool process. Implements #804
2021-03-10 07:47:26 +01:00
f4exb
156d7b543a
DATV: fixed communication with GUI
2021-03-08 08:35:30 +01:00
f4exb
6fb451145b
DATV demod: use ldpctool in Linux only
2021-03-07 07:41:19 +01:00
f4exb
7334b2fd20
DATV: external LDPC tool implementation final: dialog to select ldpctool and maximum retries
2021-03-07 00:36:48 +01:00
f4exb
3e02af8d93
DATV: external LDPC tool implementation (6): cleanup of soft LDPC but keep external
2021-03-07 00:36:48 +01:00
f4exb
41e660c221
DATV: external LDPC tool implementation (2)
2021-03-07 00:36:48 +01:00
f4exb
078e7fab37
DATV: external LDPC tool implementation (1)
2021-03-07 00:36:48 +01:00
f4exb
dc8f3ee9d9
DATV: soft LDPC (1)
2021-03-07 00:36:48 +01:00
f4exb
75b08c0dee
DATV: added LDPC max bit flip control and future soft LDPC control. Updated documentation
2021-02-28 12:05:25 +01:00
f4exb
bf62693093
DATV demod: implemented gauge meters for MER and CNR. Implements #784
2021-02-23 01:06:25 +01:00
f4exb
076eeb7704
DATV demod: implemented CNR display
2021-02-22 22:37:11 +01:00
f4exb
0dc554b30b
DATV: Display MER
2021-02-22 19:29:16 +01:00
f4exb
7a6636b63a
Fixed -Wunused-variable warnings
2020-11-14 18:45:05 +01:00