Lars Op den Kamp [Mon, 14 May 2012 13:05:34 +0000 (15:05 +0200)]
cec: bump version to 1.6.3. check the client version, not the server version in libcec_configuration::operator==(). added a new setting, bMonitorOnly, which will start a monitor-only client.
Lars Op den Kamp [Mon, 14 May 2012 12:45:17 +0000 (14:45 +0200)]
cec: always persist a changed configuration when possible
Lars Op den Kamp [Mon, 14 May 2012 11:53:15 +0000 (13:53 +0200)]
cec: check if the processor thread is marked as initialised, not if the thread is running. check if the thread is running too, not just if the port is open in CUSBCECAdapterCommunication
Lars Op den Kamp [Mon, 14 May 2012 11:46:39 +0000 (13:46 +0200)]
cec-config: fix physical address detection
Lars Op den Kamp [Mon, 14 May 2012 09:13:47 +0000 (11:13 +0200)]
cec: also reset the device status itself in CCECBusDevice::ResetDeviceStatus()
Lars Op den Kamp [Mon, 14 May 2012 09:12:14 +0000 (11:12 +0200)]
cec: per-client monitoring mode (which is just a call to (Un)RegisterClient()
Lars Op den Kamp [Mon, 14 May 2012 08:47:10 +0000 (10:47 +0200)]
cec: don't allow client registrations when the processor thread isn't running
Lars Op den Kamp [Mon, 14 May 2012 08:37:16 +0000 (10:37 +0200)]
cosmetics
Lars Op den Kamp [Mon, 14 May 2012 08:35:01 +0000 (10:35 +0200)]
cec: use the correct source when transmitting an abort message as a reposonse to a vendor command with id
Lars Op den Kamp [Mon, 14 May 2012 08:25:21 +0000 (10:25 +0200)]
cec: cleanups, documentation and some fixes for the last commits
Lars Op den Kamp [Fri, 11 May 2012 08:09:44 +0000 (10:09 +0200)]
win32: sync project files and fixed compilation warnings.
Lars Op den Kamp [Fri, 11 May 2012 07:54:37 +0000 (09:54 +0200)]
cec: don't send a 'disconnected' alert when the close method is called
Lars Op den Kamp [Fri, 11 May 2012 07:16:06 +0000 (09:16 +0200)]
cec: fixed abi
Lars Op den Kamp [Thu, 10 May 2012 22:30:16 +0000 (00:30 +0200)]
cec: fixed - ensure that the correct libCEC version is set after initialising the adapter. ensure that we don't crash out when trying to stop a thread that hasn't been started yet
Lars Op den Kamp [Wed, 9 May 2012 00:16:20 +0000 (02:16 +0200)]
cec: send a feature abort again for all unhandled commands, removed statics, refactored CLibCEC so a client registers itself within CCECProcessor, which then allocates one or more logical addresses for it. This is needed for multi-client support later. bugzid: 466
Lars Op den Kamp [Tue, 8 May 2012 10:25:04 +0000 (12:25 +0200)]
cec: display an alert message when the firmware of the adapter can be upgraded. bugzid: 778
Lars Op den Kamp [Tue, 8 May 2012 09:15:55 +0000 (11:15 +0200)]
LibCecSharp: fixed buffer overrun when copying libcec_configuration. fixes crash when trying to save the configuration in the config gui.
Lars Op den Kamp [Thu, 3 May 2012 18:18:38 +0000 (20:18 +0200)]
cec: added CEC 1.4 opcodes
Lars Op den Kamp [Sat, 28 Apr 2012 00:03:41 +0000 (02:03 +0200)]
Merge branch 'development'
Lars Op den Kamp [Sat, 28 Apr 2012 00:02:48 +0000 (02:02 +0200)]
cec: don't reset the power state to powered off when not the active source, or the TV will can a power keypress, which will switch off the pc instead of making it the active source
Lars Op den Kamp [Fri, 27 Apr 2012 23:44:37 +0000 (01:44 +0200)]
cec: persist the configuration after switching sources
Lars Op den Kamp [Fri, 27 Apr 2012 22:57:36 +0000 (00:57 +0200)]
cec: check the correct value in the PA override
Lars Op den Kamp [Fri, 27 Apr 2012 19:33:32 +0000 (21:33 +0200)]
cec: more magic numbers. use the default CEC timeout of 1000ms instead of 2000ms. fix port changes after the physical address has been set
Lars Op den Kamp [Fri, 27 Apr 2012 17:16:31 +0000 (19:16 +0200)]
cec: don't suppress physical address updates of a device in CCECProcessor::SetHDMIPort()
Lars Op den Kamp [Fri, 27 Apr 2012 16:44:00 +0000 (18:44 +0200)]
cec: don't exit libCEC if the physical address couldn't be set when initialising, but revert to the default physical address and display a warning instead
Lars Op den Kamp [Fri, 27 Apr 2012 14:09:22 +0000 (16:09 +0200)]
cec: set the power status to 'on' of a device that requests the currently active source
Lars Op den Kamp [Fri, 27 Apr 2012 13:01:27 +0000 (15:01 +0200)]
cec-client: fixed entering bootloader mode
Lars Op den Kamp [Fri, 27 Apr 2012 11:43:47 +0000 (13:43 +0200)]
cec: return false when SetHDMIPort() is called with invalid arguments
Lars Op den Kamp [Fri, 27 Apr 2012 11:37:34 +0000 (13:37 +0200)]
replaced some more magic numbers
Lars Op den Kamp [Fri, 27 Apr 2012 10:22:47 +0000 (12:22 +0200)]
bump win32 assembly version numbers to 1.6.2
Lars Op den Kamp [Fri, 27 Apr 2012 10:17:00 +0000 (12:17 +0200)]
updated changelog for 1.6.2
Lars Op den Kamp [Thu, 26 Apr 2012 15:47:32 +0000 (17:47 +0200)]
cec: read the build date while connecting
Lars Op den Kamp [Thu, 26 Apr 2012 15:40:19 +0000 (17:40 +0200)]
cec: don't just set the server version, but get the full configuration in CECInitialise()
Lars Op den Kamp [Thu, 26 Apr 2012 15:31:51 +0000 (17:31 +0200)]
cec: added operator == and != for libcec_configuration
Lars Op den Kamp [Thu, 26 Apr 2012 12:50:41 +0000 (14:50 +0200)]
cec: fixed serverVersion assignment that went out of scope in CECInitialise()
Lars Op den Kamp [Thu, 26 Apr 2012 12:37:07 +0000 (14:37 +0200)]
cec-client: show the firmware build date if it's available in cec-client -l. fixed double delete on exit in cec-client -l
Lars Op den Kamp [Thu, 26 Apr 2012 12:32:31 +0000 (14:32 +0200)]
cec: replaced a load of magic numbers
Lars Op den Kamp [Thu, 26 Apr 2012 12:13:05 +0000 (14:13 +0200)]
cec: fixed CCECProcessor::IsActiveSource() - TV was never checked
Lars Op den Kamp [Thu, 26 Apr 2012 12:11:57 +0000 (14:11 +0200)]
cec: don't call the deprecated SetActiveView() method in cec-client
Lars Op den Kamp [Thu, 26 Apr 2012 12:08:16 +0000 (14:08 +0200)]
cec: request the active source if it's unknown in CCECProcessor::GetActiveSource()
Lars Op den Kamp [Thu, 26 Apr 2012 11:59:12 +0000 (13:59 +0200)]
cec: don't suppress PA updates when called via CCECProcessor::GetDevicePhysicalAddress()
Lars Op den Kamp [Thu, 26 Apr 2012 11:55:27 +0000 (13:55 +0200)]
cec: don't try to match a device with PA 0xFFFF. don't change the power status of a device when changing the stream path
Lars Op den Kamp [Thu, 26 Apr 2012 11:44:23 +0000 (13:44 +0200)]
cec-client: don't activate the source when starting
Lars Op den Kamp [Thu, 26 Apr 2012 11:43:13 +0000 (13:43 +0200)]
cec-client: group up the output of the 'scan' command, and add the currently active source to the output
Lars Op den Kamp [Thu, 26 Apr 2012 11:42:15 +0000 (13:42 +0200)]
cec: set the initial stream path to PA 0xFFFF instead of 0x0. added some logging
Lars Op den Kamp [Thu, 26 Apr 2012 11:10:56 +0000 (13:10 +0200)]
cec: don't set the power status to 'powered off' when marking the source managed by libcec as inactive, or the tv will might send a power control keycode when making it active again, potentially shutting down the system
Lars Op den Kamp [Thu, 26 Apr 2012 11:07:24 +0000 (13:07 +0200)]
cec: fixed potential segfault in CCECProcessor::GetDeviceByPhysicalAddress()
Lars Op den Kamp [Thu, 26 Apr 2012 11:04:50 +0000 (13:04 +0200)]
cec: fixed stream path changes when changed to the TV source (PA 0)
Lars Op den Kamp [Thu, 26 Apr 2012 10:55:32 +0000 (12:55 +0200)]
cec: clear the unsupported features list in CCECBusDevice::ResetDeviceStatus()
Lars Op den Kamp [Thu, 26 Apr 2012 10:54:13 +0000 (12:54 +0200)]
cec: never mark vendor commands as unsupported (only some may be unsupported), as well as some others that should never be marked unsupported
Lars Op den Kamp [Thu, 26 Apr 2012 10:49:07 +0000 (12:49 +0200)]
cec: changed the log level of the 'unsupported feature' message to debug
Lars Op den Kamp [Thu, 26 Apr 2012 10:46:58 +0000 (12:46 +0200)]
cec: drop no longer needed parameters for CCECCommandHandler::Transmit()
Lars Op den Kamp [Thu, 26 Apr 2012 10:36:13 +0000 (12:36 +0200)]
cec: signal waiting threads when receiving a feature abort too
Lars Op den Kamp [Thu, 26 Apr 2012 10:35:35 +0000 (12:35 +0200)]
cec: added GetResponseOpcode(cec_opcode opcode) to cec_command
Lars Op den Kamp [Thu, 26 Apr 2012 09:50:13 +0000 (11:50 +0200)]
cec: don't retry in CCECCommandHandler if the command has been marked as unsupported
Lars Op den Kamp [Thu, 26 Apr 2012 09:29:17 +0000 (11:29 +0200)]
cec: fixed - don't request the PA of devices when handling an incoming CEC command, or it'll block things while waiting for a response. if that response never comes, or comes late, then other incoming commands will be timed out before they are handled
Lars Op den Kamp [Wed, 25 Apr 2012 23:15:31 +0000 (01:15 +0200)]
cec: fixed compilation warning on win64
Lars Op den Kamp [Wed, 25 Apr 2012 13:45:29 +0000 (15:45 +0200)]
cec: added the firmware build date to libcec_configuration, so it can be displayed by the client too. added missing strDeviceLanguage setting in CCECProcessor::GetCurrentConfiguration()
Lars Op den Kamp [Wed, 25 Apr 2012 13:27:44 +0000 (15:27 +0200)]
cec: bump libCEC internal version number to 1.6.2. drop dupe libcec server version assignment
Lars Op den Kamp [Wed, 25 Apr 2012 13:21:16 +0000 (15:21 +0200)]
cec: also log the libCEC version in the 'connected to the CEC adapter' log entry, and add the firmware build date to the line if it's available, so all relevant version info is available in 1 log line. log the firmware build date in GMT, not local time
Lars Op den Kamp [Wed, 25 Apr 2012 12:50:38 +0000 (14:50 +0200)]
cec: don't retry MSGCODE_GET_BUILDDATE if it was rejected by the controller, because the same value had a different meaning in older fw builds
Lars Op den Kamp [Wed, 25 Apr 2012 12:15:11 +0000 (14:15 +0200)]
cec: optimisation - strip unneeded virtual keywords from top level implementations
Lars Op den Kamp [Tue, 24 Apr 2012 23:06:40 +0000 (01:06 +0200)]
only request the build date once
Lars Op den Kamp [Tue, 24 Apr 2012 22:52:10 +0000 (00:52 +0200)]
cec: show the build date for firmwares that have this command
Lars Op den Kamp [Tue, 24 Apr 2012 20:30:41 +0000 (22:30 +0200)]
cec: removed no longer used CCECBusScan
Lars Op den Kamp [Tue, 24 Apr 2012 20:29:54 +0000 (22:29 +0200)]
cec: use the vlcommandhandler for the primary device that is handled by libCEC when a panasonic tv is detected, so delayed activate source commands are using the correct handler. bugzid: 723
Lars Op den Kamp [Tue, 24 Apr 2012 20:17:50 +0000 (22:17 +0200)]
cosmetics
Lars Op den Kamp [Tue, 24 Apr 2012 20:15:35 +0000 (22:15 +0200)]
cec: set the power status of device controlled by libCEC to CEC_POWER_STATUS_ON instead of IN_TRANSITION_STANDBY_TO_ON. reset the device status of a device if it was detected as removed. bugzid: 755
Lars Op den Kamp [Tue, 24 Apr 2012 19:50:26 +0000 (21:50 +0200)]
cec: fixed potentially uninitialised values in cec_command
Lars Op den Kamp [Tue, 24 Apr 2012 19:43:08 +0000 (21:43 +0200)]
cec: async writes for CUSBCECAdapterCommunication. less locks and polls, more speed
Lars Op den Kamp [Tue, 24 Apr 2012 16:17:35 +0000 (18:17 +0200)]
cec: delay the 'active source' command for panasonic, until the vendor command that reports that the TV is powered on has been received. bugzid: 723
Mark Kendall [Tue, 24 Apr 2012 15:17:27 +0000 (16:17 +0100)]
Only respond to Give Physical Address with Report Physical Address.
bugzid: 592
This fixes several reports of the TV improperly switching to the libcec
device after it has previously switched to another source. Fix confirmed
with Panasonic and also reported to be an issue with Samsung and
Philips.
The previous extra processing (SetActiveSource and ImageViewOn) was put
in place for Samsung and may need revisiting.
Mark Kendall [Tue, 24 Apr 2012 09:35:12 +0000 (10:35 +0100)]
LibCecSharp: Update for 1.6.2
bugzid: 699 bugzid: 660
Lars Op den Kamp [Tue, 24 Apr 2012 09:04:29 +0000 (11:04 +0200)]
cec: added the new menu state changed callback to LibCecSharp. free the alert GC callback when cleaning up
Lars Op den Kamp [Tue, 24 Apr 2012 08:47:30 +0000 (10:47 +0200)]
cec: added v1.6.2 enum values to LibCecSharp
Lars Op den Kamp [Mon, 23 Apr 2012 15:26:25 +0000 (17:26 +0200)]
cec: added some more logging about what was received exactly when requesting settings from the eeprom
Lars Op den Kamp [Mon, 23 Apr 2012 15:01:27 +0000 (17:01 +0200)]
cec: log the previous value when changing a setting in the eeprom
Lars Op den Kamp [Mon, 23 Apr 2012 14:54:32 +0000 (16:54 +0200)]
cec: check whether callback methods are set to a valid ptr
Lars Op den Kamp [Mon, 23 Apr 2012 14:46:08 +0000 (16:46 +0200)]
cec: use client version 1.6.2 for cec-client
Lars Op den Kamp [Mon, 23 Apr 2012 14:42:50 +0000 (16:42 +0200)]
cec: fixed - number of retries for polls
Lars Op den Kamp [Mon, 23 Apr 2012 13:29:51 +0000 (15:29 +0200)]
win32: fix build in paths with spaces. bugzid: 730
Lars Op den Kamp [Mon, 23 Apr 2012 12:55:39 +0000 (14:55 +0200)]
cec: updated documentation for CBCecMenuStateChanged because we can't suppress displaying the menu on the TV
Lars Op den Kamp [Mon, 23 Apr 2012 12:48:30 +0000 (14:48 +0200)]
cec: log the response message when receiving a response in CCECAdapterMessageQueueEntry::MessageReceivedResponse()
Lars Op den Kamp [Mon, 23 Apr 2012 12:14:37 +0000 (14:14 +0200)]
cec: fixed compiler warning on non-windows
Lars Op den Kamp [Mon, 23 Apr 2012 12:02:58 +0000 (14:02 +0200)]
cec: fixed - the wrong setting was being read when powering on devices. added debug logging for wakeup/standby/activate source
Lars Op den Kamp [Mon, 23 Apr 2012 09:34:33 +0000 (11:34 +0200)]
cec: close the connection when a comm error was detected, and notify the client via an alert
Lars Op den Kamp [Mon, 23 Apr 2012 09:19:58 +0000 (11:19 +0200)]
cec: added static CLibCEC::Alert() method and CEC_ALERT_CONNECTION_LOST enum value
Lars Op den Kamp [Mon, 23 Apr 2012 09:18:45 +0000 (11:18 +0200)]
cosmetics
Lars Op den Kamp [Mon, 23 Apr 2012 09:18:34 +0000 (11:18 +0200)]
posix: don't segfault when calling ThreadsWait() without a valid thread
Lars Op den Kamp [Sat, 21 Apr 2012 11:26:50 +0000 (13:26 +0200)]
win32: fixed "unreferenced local variable" warning
Lars Op den Kamp [Fri, 20 Apr 2012 14:06:22 +0000 (16:06 +0200)]
lib/platform: fixed memleak
Lars Op den Kamp [Fri, 20 Apr 2012 14:01:18 +0000 (16:01 +0200)]
cec: fixed leak in CCECAdapterMessageQueue::Write
Mark Kendall [Fri, 20 Apr 2012 14:57:14 +0000 (15:57 +0100)]
Don't send commands if we know them to be unsupported. bugzid: 725
The bulk of the change is to move the retry handling into CECProcessor
so that we have access to the unsupported features.
Lars Op den Kamp [Fri, 20 Apr 2012 12:02:59 +0000 (14:02 +0200)]
cec: changed the name of the new menu state callback to match the formatting of the other callbacks. bugzid: 724
Lars Op den Kamp [Fri, 20 Apr 2012 11:36:07 +0000 (13:36 +0200)]
cosmetics
Lars Op den Kamp [Fri, 20 Apr 2012 11:25:48 +0000 (13:25 +0200)]
cec: added a callback to handle menu state changes. if the callback method returns 1, then the change is processed by the CCECBusDevice too. if 0, then the CCECBusDevice will always have menu state 'activated', so keypresses are routed. bugzid: 724
Mark Kendall [Fri, 20 Apr 2012 10:56:06 +0000 (11:56 +0100)]
Add a default menu language to libcec_configuration. bugzid: 699
and set this language for devices controlled by libcec.
Lars Op den Kamp [Fri, 20 Apr 2012 10:26:29 +0000 (12:26 +0200)]
added 'make docs' target, that updates the doxygen documentation
Lars Op den Kamp [Fri, 20 Apr 2012 09:53:52 +0000 (11:53 +0200)]
cec: cec_menu_language is 4 chars wide on the interface, but should have been 3. changing it now will break backwards compat, so added to the @bug list
Mark Kendall [Fri, 20 Apr 2012 07:42:50 +0000 (08:42 +0100)]
Windows Installer: Add VS 2010 Redistributable download.
Redistributables are hosted on the pacakages pages. The installer will attempt to determine if the redistributable is installed already and hides the option if they are found. If not found, the option is selected by default (there is no harm in re-installing them).
bugzid: 563