Chris Tallon [Mon, 20 Apr 2020 16:41:46 +0000 (17:41 +0100)]
Control/main/winmain/util reorganisation
Move all common module startup/shutdown code from main/winmain to control
Move common global functions from main/winmain to util
Chris Tallon [Thu, 12 Mar 2020 22:16:18 +0000 (22:16 +0000)]
Work on VAudioSelector class
Fix some casts
Switch to C++ casts
All compiler warnings
Switch to std::string for audio/subs channel name
Use a vector of objects rather than pointers in channel lists
Code reformatted with astyle
Init-lists for constructors
Brace-init in class header
Update GPL notices
Remove a dead constructor from header
Chris Tallon [Wed, 19 Feb 2020 15:36:57 +0000 (15:36 +0000)]
WIP done(ish). Reorganise input system
Split Remote (base class) / RemoteWin / RemoteLinux(inc CEC) /
(defunct) RemoteLirc into separate classes
Replace with: InputLinux, InputCEC, InputUDP, InputWin, (InputLirc)
And InputMan to manage them all.
Move UDP class into Input system
Now any combination of input modules can be active.
Added pipe-quit wait style to DSock
Switch InputUDP to std::thread
Move static strings functions to InputMan.
Split translist into individual Input classes.
Remove all old/new remote stuff - has never been active on RPi.
Drop libcec3 support
Chris Tallon [Wed, 5 Feb 2020 18:01:21 +0000 (18:01 +0000)]
Rework master loop
Implement thread safe MessageQueue
All postMessage* calls replaced with a single safe-to-call anywhere postMessage()
Rewrite main command loop to use new locking around MessageQueue
Deleted Command::masterMutex
Use condition variable in MessageQueue/Command to wait on rather than going into Remote
Implemented new thread loop in Remote. Reports input events by Message
Completely replaced signal handling system
Revert Linux compiler to GCC
Revert Linux linker to GCC LD
This will be broken for Windows - remote class needs updating
Chris Tallon [Wed, 29 Jan 2020 15:23:52 +0000 (15:23 +0000)]
WIP
Code cleaning and reformatting
Remove some ancient commented out log lines
Implemented more brace-init
Remove some old-style casts
More GPL headers updated
Split Message::parameter union into separate variables
Rename parameter.num to parameter, parameter.handle to data
Completed MessageQueue call changes
Chris Tallon [Sun, 26 Jan 2020 21:33:03 +0000 (21:33 +0000)]
v0.6 dev
Update some GPL headers
Don't import std by "using namespace std"
Start implementing brace-init initialisation
General code cleanup
Start implementing things calling MessageQueue::postMessage* instead of Command::
Removed Osd::init() parameter
Removed some log lines, some old comments
Chris Tallon [Sun, 26 Jan 2020 01:40:51 +0000 (01:40 +0000)]
MVP code removal
Remove Wwss class
Remove LedMVP class
Remove AudioMVP class
Remove VideoMVP class
Remove OsdMVP class
Remove RemoteMVP class
Remove SurfaceMVP class
Remove all MTD classes
Remove various MVP code
Code cleanup
Compiler warning fixes
Chris Tallon [Sat, 25 Jan 2020 21:57:45 +0000 (21:57 +0000)]
Begin v0.6 refurb
Simplify GNUmakefile
Reorganise objects declarations in objects.mk and makefiles
Switch to clang compiler
Switch to gold linker
Stop building deps file on "make clean"
New option to GNUmakefile: SKIPDEPS=1 to skip building deps file
Make build less verbose
New option to GNUmakefile: VERBOSE=1 for all compiler output
Drop obsolete -D__STDC_CONSTANT_MACROS
Drop MVP code from GNUmakefile
Declared C++ standard to be C++14
Enabled many compiler warnings
Removed ticonfig.c
Renamed PLATTFORM_RASPBERRY to PLATFORM_RASPBERRY
Chris Tallon [Mon, 30 Dec 2019 15:36:51 +0000 (15:36 +0000)]
Fix resuming recording directly after stopping it
If a recording is playing and the user presses stop, then play
the recording is started from the beginning. Caused by
commit fa854a3abe995de8e3a06c422a535fc0e4a8484a.
Chris Tallon [Fri, 4 Oct 2019 15:47:19 +0000 (16:47 +0100)]
Display channel name, duration, resume point and size on recording info screen
Move framesToHMSF to RecInfo class
Bump VDR protocol version requirement