diff -Nru libcec-4.0.1+dfsg1/CMakeLists.txt libcec-4.0.2.1~artful/CMakeLists.txt --- libcec-4.0.1+dfsg1/CMakeLists.txt 2017-01-03 18:12:57.000000000 +0000 +++ libcec-4.0.2.1~artful/CMakeLists.txt 2017-01-28 22:54:36.000000000 +0000 @@ -3,7 +3,7 @@ set(LIBCEC_VERSION_MAJOR 4) set(LIBCEC_VERSION_MINOR 0) -set(LIBCEC_VERSION_PATCH 1) +set(LIBCEC_VERSION_PATCH 2) # cec-client add_subdirectory(src/cec-client) diff -Nru libcec-4.0.1+dfsg1/debian/cec-config.1 libcec-4.0.2.1~artful/debian/cec-config.1 --- libcec-4.0.1+dfsg1/debian/cec-config.1 2017-01-18 08:16:30.000000000 +0000 +++ libcec-4.0.2.1~artful/debian/cec-config.1 1970-01-01 00:00:00.000000000 +0000 @@ -1,11 +0,0 @@ -.TH CEC-CONFIG "1" "November 2012" "User Commands" -.SH NAME -cec\-config \- CEC connection configuration utility -.SH USAGE -cec\-config -.SH DESCRIPTION -.PP -cec\-config is a general utility used to configure a CEC connection. It will -run a wizard program that will give the user a series of prompts to change -various settings from a CEC connection. The cec\-config utility takes no -arguments. diff -Nru libcec-4.0.1+dfsg1/debian/cec-utils.install libcec-4.0.2.1~artful/debian/cec-utils.install --- libcec-4.0.1+dfsg1/debian/cec-utils.install 2017-01-18 08:16:30.000000000 +0000 +++ libcec-4.0.2.1~artful/debian/cec-utils.install 2017-01-28 22:54:36.000000000 +0000 @@ -1 +1 @@ -usr/bin/cec-client +usr/bin/cec-client* diff -Nru libcec-4.0.1+dfsg1/debian/cec-utils.manpages libcec-4.0.2.1~artful/debian/cec-utils.manpages --- libcec-4.0.1+dfsg1/debian/cec-utils.manpages 2017-01-18 08:16:30.000000000 +0000 +++ libcec-4.0.2.1~artful/debian/cec-utils.manpages 2017-01-28 22:54:36.000000000 +0000 @@ -1,2 +1 @@ debian/cec-client.1 -debian/cec-config.1 diff -Nru libcec-4.0.1+dfsg1/debian/changelog libcec-4.0.2.1~artful/debian/changelog --- libcec-4.0.1+dfsg1/debian/changelog 2017-01-18 08:16:30.000000000 +0000 +++ libcec-4.0.2.1~artful/debian/changelog 2017-08-22 11:20:14.000000000 +0000 @@ -1,202 +1,797 @@ -libcec (4.0.1+dfsg1-1) unstable; urgency=medium +libcec (4.0.2.1~artful) artful; urgency=medium - * Update symbols file - * Imported Upstream version 4.0.1+dfsg1 - * Add symbols re-exported from libp8-platform + * fixed: + * windows: device detection. credits: @Portisch + * don't automatically assume that an AVR is active in some situations + * don't take Panasonic's vendor id when emulating an AVR + * drm EDID parser not compiled in. credits @gdachs + * python: have Swig generate Python threading support + * python: only pass unsigned + * python: allow empty callback parameters + * python: install demo app as executable + * python: correct install path. credits @Lo0k @mkreisl. #284 #288 #289 #291 + * python: possible crash when passing an invalid callback + + -- wsnipex Mon, 22 Aug 2017 13:20:00 +0100 + +libcec (4.0.1.1~zesty) zesty; urgency=medium + + * fixed: + * TransmitVolumeDown to use CEC_USER_CONTROL_CODE_VOLUME_DOWN. credits: + @michaelarnauts + * HAVE_AOCEC_API missing in if in AdapterFactory. credits: @gdachs + * env.h had 'ON' instead of '1' for some values + + -- Pulse-Eight Packaging Tue, 3 Jan 2017 19:12:00 +0100 + +libcec (4.0.0.3~zesty) zesty; urgency=medium + + * fixed: + * headers weren't installed after package name changes + + -- Pulse-Eight Packaging Tue, 14 Nov 2016 10:15:00 +0100 + +libcec (4.0.0.2~zesty) zesty; urgency=medium + + * changed: + * updated readme files + * renamed 'libcec-dev' to 'libcec4-dev' + + * fixed: + * removed debian Replaces/Provides/Conflicts + * crash in drm edid code. credits: @zivillian + * compilation with -DHAVE_AOCEC_API=1 + + -- Pulse-Eight Packaging Tue, 7 Nov 2016 22:43:00 +0100 + +libcec (4.0.0.1~zesty) zesty; urgency=medium + + * API cleaned up for v4 + * changed: + * signature for GetDeviceMenuLanguage() changed + * signature for GetDeviceOSDName() changed + * signature for libcec_get_device_menu_language() changed + * signature for get_device_osd_name() changed + * cec_datapacket size reduced to 16 bytes + * callbacks changed to pass pointers instead of copies + * obsolete entries removed from libcec_configuration + * removed deprecated FindAdapters() and MuteAudio() + * send volume change commands to the TV if no audio system is present. Only + some TVs support this. closes #223 + + * added: + * bAutoWakeAVR entry in libcec_configuration, which controls whether to + automatically power on the avr or not when the source is activated. issue + #156 + * iDoubleTapTimeoutMs replacing iDoubleTapTimeout50Ms. time is now in + milliseconds + * new AO CEC adapter. credits: @gdachs + + * fixed: + * compilation with full debugging enabled + * handling of LG vendor command 0x0B. Issue #256. Credits @Vollstrecker + * return value wasn't checked correctly in CLibCEC::RegisterClient() + * Raspberry Pi fixes for issues #252 and #191 + + -- Pulse-Eight Packaging Tue, 26 Oct 2016 18:08:00 +0100 + +libcec (3.2.0.1~zesty) zesty; urgency=medium + + * Slit up repositories for libCEC and .Net utilities. + + -- Pulse-Eight Packaging Wed, 19 Oct 2016 16:57:00 +0100 + +libcec (3.1.0.1~zesty) zesty; urgency=medium + + * changed / added: + * bump platform lib (windows) + * use a template that can be used by scripts for the changelog + * make released key polling wait for exact time until key gets released. + credits @popcornmix + * keep track of time since initial button press and last button update + credits @popcornmix + * support repeating button presses with configurable repeat rate. credits + @popcornmix + * pass through duration on all button repeats. credits @popcornmix + * updated README.md + * moved the buffer in CDRMEdidParser::GetPhysicalAddress() from the stack + to heap + * added #include to make the IDE happy. not actually used when compiling + * clean up device detection code a bit and replace winapi calls with + CM_* calls. issue #130 + * replaced lockdev by flock. closes #141 + * use a single number as major SO version like others. credits @rbalint + * Sharp uses vendor id 0x534850 too. issue #36 + * use p8-platform instead of platform + * detect dirty trees + * support for vs2015 to build scripts + * update build scripts for vs2015 and win10uni + + * fixed: + * missing version.h when installing on windows + * skip double press removal. It is handled through other means. credits + @popcornmix + * don't generate an invalid env.h when not built with the .git dir present. + closes #112 + * fix multi-arch libdir locations. credits @wsnipex + * fix for holding buttons on remotes of Philips TVs. credits @mrgreywater + * initialisation issue found on Raspberry Pi with Buildroot. credits + @elouet + * crash on systems without /sys/class/drm. credits @rbalint + * segfault when an empty EDID blob is passed to + GetPhysicalAddressFromEDID() + * combo key (stop by default) in the EventGhost plugin. fixes #128 + * silence compiler warnings + * git-rev.sh script + * clean/fix platform detection + * display a nice error message if LibCecSharp failed to load + * limit the log in cectray to 100k + * open cec-tray minimised if configured. don't open and minimise. issue + #158 + * cosmetics: persist -> save + * query commands in eventghost. fixes #160 + * eventghost demo config + * don't call PowerOnDevices() if no devices to wake have been configured. + issue #97 + * Don't skip checking for Rasperry Pi library (Fixes #166). credits + @kingosticks + * TDA99x check + * disable DRM for FreeBSD + + -- Pulse-Eight Packaging Wed, 20 Jan 2016 00:37:32 +0100 + +libcec (3.0.1-1~zesty) zesty; urgency=low + + * changed / added: + * autodetect physical ID from DRM. credits @PoppyPop + * cmake command line options for raspberry pi distributions that don't use + standard system paths for libs for some reason + * convenience methods for compilation on the raspberry pi with non-standard + system directories and cross compilation + * explanation in README.md for Exynos and TDA995x + * don't treat failed acks from the tv as error when sending an active + source message + * compilation info when building libCEC + * build shared libraries by default + * cec-client: 'tx' command parsing + + * fixed: + * return code of CCECClient callbacks after async changed. credits: @mk01 + * polling addresses on RPi. credits: @mk01 + * interruptable Sleep() in RPiCECAdapterMessageQueue + * Exynos support. credits: @YamashitaRen + * XCASE got removed from posix termios in some recent version + * don't return an abort code if sending a response code fails + + -- Pulse-Eight Packaging Fri, 03 Jul 2015 15:19:00 +0200 + +libcec (3.0.0-2) unstable; urgency=low + + * fixed: + * build fixes on non-linux + + -- Pulse-Eight Packaging Fri, 01 May 2015 01:41:00 +0200 + +libcec (3.0.0-1) unstable; urgency=low + + * changed / added: + * initial version of an EventGhost plugin + * Python API added through Swig, based on the C++ API + * switched from autotools to cmake + * added curses support. credits @joao29a + * added cecc-client (testclient for the C api) + * added runtime libCEC loading for C + * updated the C interface to include new features and no longer use a + global library instance + * some AVRs fail to be powered up by the TV when it powers up. power up the + AVR explicitly + * added support for CEC_DEVICE_TYPE_TV (useful for testing) + * compile with c++11 + * removed CStdString + * drop 'using namespace std' + * autogenerated version numbers, drop some backwards compat code + * LibCecSharp: added PhysicalAddressToString() + * CecSharpClient: better formatting of the scan command + + * fixed: + * Debian packaging cleaned up. Credits @PimentNoir + * fixed Raspberry Pi compilation. Credits @NHellFire + * ignore vendor command with id from pioneer AVRs. bugzid: 3853 + * update the vendor id of a device when receiving a vendor command with id + before receiving a vendor id + * XBMC->Kodi rebranding + * don't delete m_client when m_cec hasn't been deleted yet in + CLibCEC::~CLibCEC(). issue #63 + * change device types in CCECProcessor::Process(), not directly. issue #63 + * use shared_ptr instead of passing raw pointers around that + can be unregistered from another thread and crash + * check if the port or device actually changed in CCECClient::SetHDMIPort() + * potential buffer overflow + * fixed setting the physical address at startup when using default settings + * don't call callbacks directly in libCEC, but queue them and process from + a worker thread + * libCEC Tray: crash when retrying to find adapters + * libCEC Tray: don't show the "no device found" warning when resuming + from standby + * libCEC Tray: reconnect to the adapter after resuming from standby + * libCEC Tray: send key presses to the active window when none of the + predefined (wmc/kodi) ones are active + * libCEC Tray: fixed key combinations with the windows key + + -- Pulse-Eight Packaging Fri, 03 Apr 2015 21:13:00 +0200 + +libcec (2.2.0-1) unstable; urgency=low + + * changed / added: + * read the physical address from X11 randr extension. credits: @smithereens + * support for Exynos HDMI. credits: @vamanea + * another vendor ID for Harman/Kardon. credits: @ksooo + * some 1.4 keycodes have been added. credits: @ksooo + * cec-client: fix typo prevent keycodes to be passed. credits: @popcornmix + + * fixed: + * various Raspberry Pi fixes. credits: @mk01 + * vendor specific handlers weren't used for Toshiba and Onkyo. + credits: @ksooo + * LibCecTray: keypress not sent when multiple instances of eshell.exe are + running. thanks @pvanbaren + * deadlock on exit in XBMC, because of CEC_ALERT_CONNECTION_LOST - -- Balint Reczey Wed, 18 Jan 2017 09:16:30 +0100 - -libcec (4.0.0+dfsg1-1) experimental; urgency=medium - - * Imported Upstream version 4.0.0+dfsg1 - * Refresh patches - * Bump SO version in packaging scripts - * Remove files from debian/copyright which are removed from upstream - tarball - * Use secure URI in Vcs-Git - * Bump standards version - * Update symbols file for amd64 and i386 - * Enable all hardening features - - -- Balint Reczey Sat, 17 Dec 2016 20:15:34 +0100 - -libcec (3.1.0+dfsg1-4) unstable; urgency=medium - - * Fall back to use libudev.pc when udev.pc is not usable (Closes: #817051) - - -- Balint Reczey Mon, 07 Mar 2016 20:24:16 +0100 - -libcec (3.1.0+dfsg1-3) unstable; urgency=medium - - * Update symbols file for GCC 6 (Closes: #811979) - - -- Balint Reczey Sun, 06 Mar 2016 19:53:31 +0100 - -libcec (3.1.0+dfsg1-2) unstable; urgency=medium - - * Use arch-bits for tagging symbols - * Reformat d/control using cme - * Bump standards version to 3.9.7 - - -- Balint Reczey Thu, 25 Feb 2016 09:34:25 +0100 - -libcec (3.1.0+dfsg1-1) unstable; urgency=medium - - * New upstream version 3.1.0 - * Refresh patches including dropping patches integrated upstream - * Use (cec-)platform libraries under the new p8-platform name - * Update symbols file using pkgkde-symbolshelper (Closes: #811979) - - -- Balint Reczey Wed, 24 Feb 2016 11:11:33 +0100 - -libcec (3.0.1+dfsg2-9) unstable; urgency=medium - - * Cherry-pick patch from upstream for locking with flock() - - -- Balint Reczey Sat, 28 Nov 2015 08:57:33 +0100 - -libcec (3.0.1+dfsg2-8) unstable; urgency=medium - - * Handle transition from libcec3v4 to libcec3 - - -- Balint Reczey Wed, 07 Oct 2015 20:06:06 +0200 - -libcec (3.0.1+dfsg2-7) unstable; urgency=medium - - * Stop using lockdev again (Closes: #728023) - - -- Balint Reczey Mon, 28 Sep 2015 10:49:52 +0200 - -libcec (3.0.1+dfsg2-6) unstable; urgency=medium - - * Fix SOVERSION handling in CEC clients (Closes: #798472) - - -- Balint Reczey Sat, 12 Sep 2015 21:42:38 +0200 - -libcec (3.0.1+dfsg2-5) unstable; urgency=medium - - * Fix crash on systems lacking /sys/class/drm (Closes: #798190) - - -- Balint Reczey Sun, 06 Sep 2015 19:11:37 +0200 - -libcec (3.0.1+dfsg2-4) unstable; urgency=medium - - * Update symbols based on armel build failure - - -- Balint Reczey Sun, 16 Aug 2015 21:06:33 +0200 - -libcec (3.0.1+dfsg2-3) experimental; urgency=medium - - * Add versioned build dependencies for the GCC 5 transition (Closes: #791103) - * Update symbols file with the GCC 5 transition changes - * Make build more deterministic - * Fix libdir in pkgconfig file - - -- Balint Reczey Fri, 07 Aug 2015 00:07:02 +0200 - -libcec (3.0.1+dfsg2-2) experimental; urgency=medium - - * Update symbols file based on powerpc build - - -- Balint Reczey Sat, 01 Aug 2015 13:38:00 +0200 - -libcec (3.0.1+dfsg2-1) experimental; urgency=medium - - * New Upstream version 3.0.1 - * Merge upstream packaging changes - * Drop patches integrated upstream - * Add libcec-platform-dev as build dependency - * Use cec-platform - * Call cmake from debian/rules more conventionally - * Fix pkgconfig file install location - * Stop shipping libcec.a - * Fix missing space in debian/control - * Add misc:Depends to python-libcec dependencies - * Update debian/copyright with changed and excluded files - * Build depend on Debhelper 9 - * Drop libcec meta package - * Fix library SONAME version - * Update symbols file - * Install CLI utilities in cec-utils and Python scripts in python-libcec - * Add shlibs:Depends and python:Depends to python-libcec dependencies - * Build depend on dh-python - * Extend extended description a bit - * Call debhelper with python2 in debian/rules - * Install Python client script as an example - * Add repack suffix to debian/watch - * Drop prebuilt windows binary from source - * Drop obsoleted Lintian override - - -- Balint Reczey Tue, 07 Jul 2015 16:17:34 -0700 - -libcec (2.2.0+dfsg1-3) unstable; urgency=medium - - * Upload to unstable - * Update symbols file for GCC 5 (Closes: #777940) - - -- Balint Reczey Sun, 26 Apr 2015 20:57:42 +0200 - -libcec (2.2.0+dfsg1-2) experimental; urgency=medium - - * Provide both C & C++ versions of cec_set_configuration() - to match upstream's latest ABI - - -- Balint Reczey Sat, 08 Nov 2014 22:57:17 +0100 - -libcec (2.2.0+dfsg1-1) experimental; urgency=medium - - * Add working watch file - * Update libcec-get-orig-source for 2.2.0. - Add +dfsg1 suffix to repacked version - Compress tarball using xz - * New upstream version 2.2.0 - * Fix ABI breakage due to changed cec_set_configuration() - * Update symbols file with new ABI symbols - * Mangle local version in watch file - * Bump standards version, no changes needed - - -- Balint Reczey Sat, 08 Nov 2014 18:20:25 +0100 + -- Pulse-Eight Packaging Tue, 28 Oct 2014 10:45:00 +0200 libcec (2.1.4-2) unstable; urgency=low - [ Balint Reczey ] - * Add myself to uploaders - * Set Sjoerd as maintainer - * Remove Andres Mejia as maintainer since he is tracked as MIA - Thanks to Andres for creating and taking care of the package. - (Closes: #743513) - * Provide symbols file (Closes: #737769) - * Bump standards version - - [ Roger Leigh ] - * Stop using lockdev (Closes: #728023) - - [ Logan Rosen ] - * Use dh-autoreconf to fix FTBFS on ppc64e (Closes: #735217) + * fixed: + * OS X build - -- Balint Reczey Thu, 07 Aug 2014 18:55:00 +0200 + -- Pulse-Eight Packaging Wed, 18 Dec 2013 02:14:00 +0100 libcec (2.1.4-1) unstable; urgency=low - * New upstream release (Closes: #730510) - * Add myself to uploaders - - -- Sjoerd Simons Wed, 01 Jan 2014 19:02:43 +0100 - -libcec (2.0.3-1) experimental; urgency=low - - * New upstream release. (Closes: #685058) - * Change library package to libcec2 for soname bump. - * Add new build-dependency liblockdev-dev. - * Add new manpage for cec-config utility program. - - -- Andres Mejia Fri, 16 Nov 2012 12:27:06 -0500 + * changed / added: + * set the vendor id of devices handled by libCEC to our vendor id + * added protection against standby without a notification from XBMC and + clock changes. issue #186 + * update system audio mode when audio system devices are activated + * added vendor id and name 'Harman/Kardon' + * added vendor id and name 'Marantz' + * cec-tray: support for away mode + * cec-tray: support for screensaver events + * fixed: + * fixed potential crash when SendCommand returns NULL + * fixed crash when CCECProcessor::Transmit was called after + CCECProcessor::Close + * always call the SourceActivated() callback in + CCECBusDevice::MarkAsActiveSource(), even when we were already active, + and let clients handle dupes. this prevented the screensaver from + being cancelled in XBMC + * send our vendor id when the tv sends it's vendor id + * transmit our physical address when the TV sends it's physical address + * potential deadlock + * leak on exit in CWaitForResponse::Clear() + * also transmit an active source message as response to a set stream path + command when we were already marked as active. bugzid: 3116 + * only send an active source message when receiving a routing change to an + address handled by libCEC. issue #56 + * HandleVendorRemoteButtonUp -> HandleUserControlRelease for all vendors + * silence warning for xx:a0:00:09:b0:00:80:20. bugzid: 2559 + * fixed comboKeyTimeout=0. closes #168 + * Panasonic: doesn't request the active source status when powered up, but + it does send a vendor command. send an active source message when we're + marked as active source after receiving this command. issue #192 + * possible crash when the tv does not respond to polls and the client isn't + registered yet. don't poll the tv in monitoring mode. closes #163 + * Panasonic: standby command + * Panasonic: silence 'unmapped code' warning. bugzid: 2375 + * LG: clean up and attempt to fix issue #176 + * LG: newer firmwares don't send a second power status request after it's + been requested once and replied with 'standby -> on' like previous + versions. send an active source message in an attempt to fix this. issue: + #176 + * Sharp: check whether the 'auto power on' option is disabled and tell the + user how to enable it + * Samsung: respond to vendor command 0x23 sent by samsung. attempt to fix + bugzid: 2164 + * cec-client: try to reconnect when the connection was lost + * cec-tray: crash on load (MissingManifestResourceException) + * cec-tray: crash or deadlock on exit + * cec-tray: crash when the connection to the adapter was lost + * cec-tray: display TV not responding warning on top + * windows: build libCEC and cec-client against toolset v100 (VS2010) + * FreeBSD: proper the adapter detection. credits @fneufneu + * suppress mangling warning. credits @warped-rudi. closes #190 + + -- Pulse-Eight Packaging Sat, 13 Dec 2013 16:02:00 +0100 + +libcec (2.1.3-1) unstable; urgency=low + + * changed / added: + * ask users to send an email when receiving an unhandled vendor command + * toshiba: map top menu and dvd menu buttons. closes #148 + * LibCecSharp: sync alert types + * LibCecSharp: added CurrentVersion to the version enum + * CecSharpClient: use CurrentVersion instead of a hardcoded version + * CecTray: power management + * CecTray: split up asyncform + * CecTray: try/catch xml exceptions when reading the xml config. bugzid: + 2082 + * CecTray: use CurrentVersion instead of a hardcoded version + * CecTray: display a warning if we can't poll the TV + * CecTray: display alerts from libCEC + * CecTray: don't use lazy loading for the main controller, but pass the + instance. bugzid: 2082 + * windows: converted to vs2012 + * fixed: + * toshiba: toshiba handler wasn't initialised, and toshiba uses more than + one vendor id + * libCEC marked itself as inactive source when the stream path changed to + a device with a different physical address. bugzid: 2157 + * TDA995x: report proper firmware revision (credits: @warped-rudi) + * TDA995x: avoid callback when already stopped (credits: @warped-rudi) + * windows: fix resource files and backwards compat dll names + + -- Pulse-Eight Packaging Sat, 11 May 2013 10:06:00 +0000 + +libcec (2.1.1-1) unstable; urgency=low + + * changed / added: + * send an alert when the TV does not respond to polls + * fixed: + * LG didn't switch sources after the TV powered up + * always poll a device when the status is unknown, and don't try to + determine whether it needs to be polled by checking the status of other + devices + * don't mark a device as inactive when receiving a routing change message, + only when another device was made acive. fixes the issue that rc + passthrough doesn't work when a tv sends a quick routing change to + another port before requesting the active source when coming out of + standby + * LibCecSharp: fixed 14 char long OSD name (wasn't \0 terminated) + * LibCecSharp: fixed return value of GetActiveDevices(). issue #131 + * cec-tray: fixed index out of range exception in CECSettingNumeric.cs. + bugzid: 2082 + * cec-tray: ensure that the tray app only initialises once. bugzid: 2082 + * rpi: don't set the physical address to 1.0.0.0 when receiving + VC_HDMI_UNPLUGGED. it may wake up device when they were just sent to + standby. issue #142 + * osx: use the correct dylib name in cecloader.h, used by cec-client + + -- Pulse-Eight Packaging Fri, 8 Mar 2013 17:21:00 +0100 + +libcec (2.1.0-1) unstable; urgency=low + + * changed / added: + * added vendor id for Denon + * added DetectAdapters() method, that returns all device information for + detected adapters, not just the com port + * added new method PowerOnScreensaver. credits: @jmarcet + * LibCECTray: Added ability to send modifiers by nesting commands in + KeyInput.cs. credits: Nate Burr + * rpi: Added /opt/vc/include/interface/vmcs_host/linux to rpi_cflags to fix + building on 'next' firmware branch. credits: Nedim Lisica + * fixed: + * don't send two active source message sequences to philips. issue #118 + * don't send deck status updates to philips when activating the source + * update the active source status correctly after a manual switch to + another source. closes #124 + * rename cec_audio_status() to cec_audio_get_status() to avoid conflict + with the cec_audio_status enum. This makes the C API compile again. + credits: Dave Chapman + * LibCECTray: Fixed bug with libcec adding the keyup for button commands + and making sure they are still executed. credits: Nate Burr + * rpi: register callback for HPD. re-read the physical address when we + received VC_HDMI_ATTACHED. issue #109 + + -- Pulse-Eight Packaging Tue, 26 Feb 2013 23:06:00 +0100 + +libcec (2.0.5-1) unstable; urgency=low + + * changed: + * also try polls at least twice when it failed + * added methods to get the audiostatus and toggle the mute status from the + amplifier (if connected) + * added comboKey and iComboKeyTimeoutMs to libcec_configuration + * force cec_user_control_code_unknown to 0xFF + * fixed: + * check unsupported features properly + * only send an active source message when the stream path changed and we + weren't the active source yet + * don't mark as inactive source on routing changes + * press & hold + * never mark user control opcodes as unsupported + * report our OSD name to the TV, since some TVs don't request it + * initial audiostatus value + * don't log a no longer relevant FIXME + + -- Pulse-Eight Packaging Thu, 6 Dec 2012 20:58:00 +0100 + +libcec (2.0.4-1) unstable; urgency=low + + * changed: + * dropped obsolete cec-config + * added CEC_CLIENT_VERSION_CURRENT and CEC_SERVER_VERSION_CURRENT. closes + #88 + * support colon separated data for the 'tx' command in cec-client + * mark the adapter as (in)active source for firmware v3+ + * added 'is' command to cec-client, to mark libCEC as inactive source + * fixed: + * only change the handler of the primary device if the tv has a quirks mode + not for other devices + * send an active source message when the route was set to the physical + address that is handled by libCEC + * default double tap timeout wasn't set for panasonic + * philips TVs sometimes keep sending key presses without key releases + * philips TVs ignore 'image view on' right after they were sent into + standby. check the power status of the tv every 5 seconds, until it + reports to have powered on + * mark a device as powered on when receiving a stream path or routing + change + * update the active source status correctly on stream path changes + * ensure that we only send 'image view on' when needed + * mark the TV as 'in transition standby -> on' after sending + 'image view on', so we don't spam the TV with 'image view on' command + while waiting for it to finish powering up. bugzid: 1603. bugzid: 1609. + bugzid: 1592 + * request the active source before requesting device information in + cec-client, or it'll display incorrect information when called the first + time + * update the value of CCECProcessor::m_bMonitor when registering a client. + SetControlled() wasn't called on exit, so it took 30 seconds until it was + auto-enabled + * silence 'unused' warning properly. closes #86 + * only change the type of the client to 'playback device' instead of + 'recorder' for panasonic if the TV is a panasonic. issue #84 + * always poll the TV if it's marked as not present. issue #83. issue #84 + * only set m_iCurrentButton when the duration isn't known yet. fixes + duplicate key press for vendor remote codes. closes #81 + * delete the right registry key + * send active source message when we received a routing change with a + device that is handled by libCEC as address. issue #89 + * return value wasn't updated in GetLogicalAddresses() + + -- Pulse-Eight Packaging Thu, 15 Nov 2012 02:26:00 +0100 + +libcec (2.0.3-1) unstable; urgency=low + + * changed: + * log unhandled vendor remote keycodes in the log, so they get logged + without debugging enabled + * double tap timeout increased from 200ms to 250ms + * CuBox/NXP* renamed to TDA995x* + * fixed: + * handling of active route changes. github issue #56 and issue #58 + * new combo key handling broke samsung's vendor specific remote buttons. + github issue #54 + * don't try to set controlled mode when using firmware version 1 and crash. + github issue #76 + * fix for LG models that send a vendor key up after a normal key down. + github issue #71 + * some TVs send keypresses to us without making us the active source. mark + us as active source when this happens. github issue #71 + * LG doesn't send routing changes, and marks the TV as active source when + switching to another source that's not been selected in the simplink menu + instead. this change keeps libCEC marked as powered on and keep the deck + state set to CEC_DECK_INFO_OTHER_STATUS_LG. fixes keypresses not working + after switching to another source and back to libCEC's hdmi port via the + source select menu instead of the simplink menu. github issue #71 + * don't respond with an abort message when receiving a vendor remote button + command + * respond with CEC_ABORT_REASON_INVALID_OPERAND when receiving a keypress + without a parameter + * typo in stop+pause combo key that prevented one of the keys from working + * rpi: log what data we received exactly when we receive an response from + the pi's firmware that doesn't match any command that we sent. issue #77 + * cubox: added adapter ID interface + + -- Pulse-Eight Packaging Wed, 31 Oct 2012 15:57:00 +0100 + +libcec (2.0.2-2) unstable; urgency=medium + + * fixed: + * updating the device status after a poll was broken and could reset the + status of devices that were marked as handled by libCEC to 'not + present' + * don't keep spamming the bus with a vendor command when an active source + switch is pending for panasonic, but only send it when needed + * reset CVLCommandHandler::m_bCapabilitiesSent when the TV goes to standby + + -- Pulse-Eight Packaging Mon, 15 Oct 2012 13:52:00 +0100 + +libcec (2.0.2-1) unstable; urgency=low + + * changed/added: + * missing from the previous changelog: added support for the CuBox TDA995x + credits: warped-rudi + * lower retry timeout for source switches + * cec-client: wait for the source switch to finish when cec-client is + called with the -s switch + * request the power status of the TV directly after registering a new + client + * fixed: + * don't keep trying to send 'image view on' commands to the TV when no TV + is connected, and just send the 'set active source' command. fixes source + switch and debug log spam for people without a TV connected + * don't keep waiting for an updated power status from the TV for Panasonic, + but request a status update once every 5 seconds, or we can possibly wait + forever for the tv to send it + * log what we received exactly when logging FIXME + * typo in CVLCommandHandler::VendorPreActivateSourceHook. bugzid: 1087 + * if we failed to get the physical address of the device that we are + connected to in the config, then try to use the address that was + persisted in the eeprom before resetting to the default value, 1.0.0.0. + closes #50. + * don't update the device status of unregistered/broadcast + * log all device status changes + * CCECClient::IsLibCECActiveSource returns false now while the active + source command is pending + * log failed acks and other errors in the debug log again + * don't send 'image view on' when the TV is already powering up + * reset the delayed source switch timeout properly, so we don't spam + commands every second + * don't change the device status when sending a delayed source switch + * don't send out commands to a device that is marked as not present or + handled by libCEC + + -- Pulse-Eight Packaging Thu, 11 Oct 2012 15:48:00 +0100 + +libcec (2.0.1-1) unstable; urgency=low + + * changed/added: + * added Loewe support + * added signal handlers to client applications + * Documentation updated + * replaced cec-config-gui by libCEC tray + * log the exact data for failed transmissions, not the opcode + * don't log every frame, unless debugging was enabled in ./configure or + visual studio + * changed some log levels from NOTICE to DEBUG, so the non-debugging output + is less spammy + * interface changes: + * WARNING: breaking API changes + * clean up: deprecated methods and fields removed + * callback parameters changed to fix plain C compilation + * added GetAdapterProductId()+GetAdapterVendorId()/ + cec_get_adapter_product_id()+cec_get_adapter_vendor_id() + * added iDoubleTapTimeoutMs to libcec_configuration + * remove all pre-v2.0 compatibility checks + * fixed: + * fix plain C compilation + * prevent sending directly addressed commands from being sent to broadcast + * don't wait for a response when sending a reply, so we don't block message + handling + * message response signaling and logging + * prevent double taps by not sending the same key press twice within 200ms + * fall back to the primary client when + CCECProcessor::HandleLogicalAddressLost() and no client could be found + * no more delay up to 2 seconds when exiting libCEC + * don't get caught in a loop in CVLCommandHandler when the source switch + was not allowed and no power status request was sent + * always send image view on to the tv, don't check the power status + * only respond to vendor commands for panasonic if we are the destination + * rpi: current firmware first sends a change to logical address 'broadcast' + and then signals us that the address was lost. libCEC then failed to + re-register, because it didn't know any client at this address + + -- Pulse-Eight Packaging Mon, 8 Oct 2012 21:30:00 +0100 + +libcec (1.9.1-1) unstable; urgency=low + + * changed/added: + * added the type of adapter to libcec_configuration, + and display the type in cec-client -l + * added device detection support for composite usb devices on windows. + needs the windows ddk, and it's expected to be found in + C:\WinDDK\7600.16385.1 + + * interface changes: + * adapter type was added to libcec_configuration + * moved cec_adapter_messagecode from cectypes.h to USBCECAdapterMessage.h + + * fixed: + * retry m_port->Read(..) if an EINTR errror occurs instead of closing the + connection. credits @Obruni. closes #38 + * make cec-client include cecloader.h from our project, not from system + * fixed duplicate entries check in CUSBCECAdapterDetection + * fixed missing cec_version updates in libcec_configuration + * transmit an active source message after to a device + that's handled by libCEC. closes #43 + * rpi: handle vendor specific remote control presses. closes #42 + * rpi: handle VC_CEC_LOGICAL_ADDR_LOST, sent by the Pi's firmware when + the logical address was taken while CEC was being reinitialised + * panasonic: send out an active source message when the tv started up + because it sometimes doesn't request this + + -- Pulse-Eight Packaging Wed, 5 Sep 2012 16:54:00 +0100 + +libcec (1.8.2-1) unstable; urgency=low + + * changed/added: + * p8: match to the response provided by the firmware when checking + responses (added in firmware v2 rev6) + + * fixed: + * windows: update the error message when an error occurs while writing to + the serial port + * delayed source switch time was reset, resulting in an attempt every + second until it succeeded + * ensure that the vendor commands are always sent for panasonic, and that + the deck status for lg isn't reset. fixes some buttons not working after + a second or delayed source switch + * added guard so ReplaceHandler() doesn't accidentally try to replace a + handler for the broadcast address + * wait until the commandhandler is replaced before registering a client, + so we don't register a client and replace it directly afterwards if the + tv doesn't support the device type + * ensure that the command handler of the tv is replaced before registering + a client, or it might result in a double eeprom write attempt + * p8: don't disable controlled mode when switching to monitoring mode + * p8: do delayed eeprom writes async or it'll block processing other input + + -- Pulse-Eight Packaging Tue, 3 Aug 2012 02:35:00 +0100 + +libcec (1.8.1-1) unstable; urgency=low + + * changed/added: + * added support for the Raspberry Pi. + * added cec-client -i / cec-client --info that calls GetLibInfo() + * header cleanups + * added CAdapterFactory, to create IAdapterCommunication instances + * added --debug to configure, to include -ggdb + + * interface changes: + * added GetLibInfo()/cec_get_lib_info(), that shows how libCEC was compiled + and with which features included. + * added ToString(cec_user_control_code_key) to the interface + + * fixed: + * disallow sending CEC_OPCODE_SET_STREAM_PATH - not allowed by the CEC spec + * persist the configuration in the eeprom after initialising the client. + fixes wrong/old settings being used in autonomous mode, which broke the + wake on cec function + * persist the new configuration when the hdmi port setting changed + * cleaned locks around callbacks + * always set controlled mode to false when unregistering the last client. + fixes 30 second timeout before controlled mode gets deactivated + * updated the cached device type setting properly when persisting new + settings. correct return value from WriteEEPROM(). lock a mutex when + updating the state + * LibCecSharp: set the primary LA in CecLogicalAddresses + + -- Pulse-Eight Packaging Tue, 25 Jul 2012 13:05:00 +0100 + +libcec (1.7.2-1) unstable; urgency=low + + * changed/added: + * display a warning message if libCEC was not compiled with adapter + detection for the target platform + * panasonic: added a vendor command for panasonic that will enable routing + of some more buttons on the remote (guide, text, ...) + * standby command won't be forwarded more than once every 10 seconds + * added vendor ids for Akai, AOC, Benq, Daewoo, Grundig, Medion, Sharp and + Vizio + * cec-client: don't display debug output by default in 'cec-client -l' + + * interface changes: + * added a callback for clients that is called when a source is + (de)activated, so the client can respond to this action + * added cec_command::PushArray() + + * fixed: + * command forwarding. fixes player not going into standby mode + * missing virtual keyword in CCECCommandHandler:: + GetReplacementDeviceType() + * replace the handler (if needed) in GetHandler() + * reply with abort reason 'invalid operand' to vendor commands that we + don't understand + * changed all Handle...() commands to return a cec_abort_reason and send + the correct abort reason to the initiator as a response to directly + addressed messages + * changed 'couldn't change the ackmask: the connection is closed' into a + debug message + * don't send active source commands when the physical address is invalid or + unknown + * set the power status of a device to 'powered on' after it sends a stream + path change. can save an unneeded power state update request + * removed dupe code around delayed activate source commands. check for + delayed active source commands every 5 seconds instead of 15 seconds. + * panasonic: reset m_bPowerUpEventReceived in CVLCommandHandler when the + device lets us know it went into standby mode. fixes possibly failed + active source switches after it succeeded once + * panasonic: fixed delayed source switch for panasonic + * panasonic: mark the tv as powered up once it sends the audiomode request + * set the physical address of each device controlled by a CCECClient if + it's valid + * Windows could get stuck in a loop in case there an error occurred while + reading registry entries + * ABI fixes (binary compat with v1.2 for Windows and v1.5.2 for others) + * replace the handler directly after getting the vendor id of a device when + registering a client + * copy the class member values of the old handler when creating a new + command handler, or a delayed activate source will get lost when the + handler is switched + * cec-client: wrong client version + * Makefile cleanups. don't link cec-client and cec-config against libudev + and liblockdev + * pin libcec to the same version as libcec1 + * LibCecSharp: update the local configuration after connecting + * LibCecSharp: better handling of callbacks + + -- Pulse-Eight Packaging Wed, 27 Jun 2012 02:06:00 +0100 + +libcec (1.7.1-1) unstable; urgency=low + + * changed/added: + * added physical address detection via ADL for AMD graphics cards + * attempt to get the edid from nvidia's graphics card driver on linux via + /proc/acpi/video/NGFX/HDMI/EDID + * attempt to get the PA from the registry on windows if we fail to get the + physical address from the display driver + * changed the order in CCECClient::SetPhysicalAddress() so it first checks + whether a PA override is set in libcec_configuration.iPhysicalAddress, + then checks whether the address can be detected, and if both failed it'll + use the HDMI port + base device setting + * cec-client: only active the source when reconnecting if libcec was the + active source before closing the connection + * platform: added tcp server sockets for posix + + * interface changes: + * libcec_configuration.bAutodetectAddress is now read-only, and will be set + to 1 by libCEC if the PA was autodetected + * LibCecSharp: don't use an int but a CecUserControlCode in a CecKeypress + + * fixed: + * don't unregister clients in CLibCEC when disconnecting, but only in + CCECProcessor. fixes reconnect after close + * MSGCODE_TIMEOUT_ERROR is a response to a transmission + * retry 'activate source' every 10 seconds if it failed + * don't respond with a poll from the broadcast address when receiving + in CSLCommandHandler::HandleDeviceVendorId(), but use the primary LA of + the client as source instead + * hold a lock when changing the ackmask in + CUSBCECAdapterCommunication::Open + * don't respond with a feature abort to opcode play messages. bugzid: 873 + * get the vendor id of the TV before allocating logical addresses, so we + can determine if the TV supports the requested device type directly + * TransmitImageViewOn() and TransmitActiveSource() always returned true, + even if sending the command failed, so the retry for failed source + activations was never triggered + * open libcec.so.1 instead of libcec.so in cecloader.h. credits @coling. + github issue #30. + * fixed missing firmware version and build date in cec-client -l / + GetDeviceInformation() + + -- Pulse-Eight Packaging Sun, 10 Jun 2012 13:39:00 +0100 + +libcec (1.6.1-5) unstable; urgency=low + + * synced /debian directory with the one in precise (with a couple of changes) + * changed/added: + * serial port locking on linux + * cec-client: added -m/--monitor startup options, which will start a + monitor-only client. use 'mon 0' to switch to a normal client + * display an alert message when the firmware of the adapter can be upgraded + * added CEC 1.4 opcodes + * send a feature abort again for all unhandled commands + * refactored CLibCEC so a client registers itself within CCECProcessor, + which then allocates one or more logical addresses for it. + + * interface changes: + * added a new setting, bMonitorOnly, which will start a monitor-only client + + * fixed: + * ensure that we don't crash out when trying to stop a thread that hasn't + been started yet + * don't send a 'disconnected' alert when the close method is called + * use the correct source when transmitting an abort message as a reposonse + to a vendor command with id + * removed statics + * check the client version, not the server version in + libcec_configuration::operator==() + * cec-config: fix physical address detection + * LibCecSharp: fixed buffer overrun when copying libcec_configuration. + fixes crash when trying to save the configuration in the config gui. -libcec (1.6.2-1) unstable; urgency=low - - * New upstream release. - - -- Andres Mejia Wed, 02 May 2012 22:35:02 -0400 + -- Pulse-Eight Packaging Mon, 14 May 2012 22:39:00 +0100 libcec (1.6.1-2) unstable; urgency=low @@ -233,3 +828,935 @@ * Initial release. (Closes: #655143) -- Andres Mejia Sun, 08 Jan 2012 15:36:49 -0500 + +libcec (1.6-3) unstable; urgency=low + + * changed/added: + * cec-client: show the firmware build date if available in cec-client -l + * cec-client: don't activate the source when starting + * cec-client: group up the output of the 'scan' command, and add the + currently active source to the output + * 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. + * async writes for CUSBCECAdapterCommunication. less locks and polls, more + speed + * added 'make docs' target, that updates the doxygen documentation + + * interface changes: + * added operator == and != for libcec_configuration + * added GetResponseOpcode(cec_opcode opcode) to cec_command + * added the firmware build date to libcec_configuration, so it can be + displayed by the client too. + * added static CLibCEC::Alert() method and CEC_ALERT_CONNECTION_LOST value + * 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 + * added a default menu language to libcec_configuration and set this + language for devices controlled by libcec. bugzid: 69 + + * fixed + * CCECProcessor::IsActiveSource() - TV was never checked + * don't call the deprecated SetActiveView() method in cec-client + * request the active source if unknown in CCECProcessor::GetActiveSource() + * don't try to match a device with PA 0xFFFF. + * don't change the power status of a device when changing the stream path + * 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 + * potential segfault in CCECProcessor::GetDeviceByPhysicalAddress() + * stream path changes when changed to the TV source (PA 0) + * clear the unsupported features list in CCECBusDevice::ResetDeviceStatus() + * never mark vendor commands as unsupported (only some may be unsupported), + as well as some others that should never be marked unsupported + * don't retry in CCECCommandHandler if the command has been marked as + unsupported + * 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 + * optimisation - strip unneeded virtual keywords from top level + implementations + * 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 + * 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 + * potentially uninitialised values in cec_command + * delay the 'active source' command for panasonic, until the vendor command + that reports that the TV is powered on has been received. bugzid: 723 + * 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. + * check whether callback methods are set to a valid ptr + * number of retries for polls + * win32: fix build in paths with spaces. bugzid: 730 + * LibCecSharp: free the alert GC callback when cleaning up + * the wrong setting was being read when powering on devices + * close the connection when a comm error was detected, and notify the + client via an alert + * don't segfault when calling ThreadsWait() without a valid thread + * lib/platform: fixed memleak + * leak in CCECAdapterMessageQueue::Write + * don't send commands if we know them to be unsupported. bugzid: 725 + + -- Pulse-Eight Packaging Wed, 18 Apr 2012 11:30:00 +0100 + +libcec (1.6-2) unstable; urgency=low + + * fixed: + * fixed typo in CUSBCECAdapterCommands::RequestSettings() that prevented + the settings from being read. the settings were still written, but never + read when bGetSettingsFromROM = 1. + + -- Pulse-Eight Packaging Wed, 18 Apr 2012 11:30:00 +0100 + +libcec (1.6-1) unstable; urgency=medium + + * changed/added: + * full firmware V2 support + * -o/--osdname argument for cec-client to set a custom osd name + * added the firmware version to cec-client's -l / --list-devices command. + bugzid: 631 + * added power on command for Samsung AVR devices. bugzid: 361 + * added buttoncode for 'channels list' on Samsung (0x96) + * don't check for the windows ddk when a prebuilt driver installer is + present + * respond to Get Menu Language. bugzid: 547. In the event that the menu + language is undefined in libcec (currently the default), the response + will be a feature abort. + + * interface changes: + * added the firmware version to libcec_configuration (read-only). bumped + server version to 1.6.0. fixed 'unknown server version' message on + startup. bugzid: 631 + * added a new setting to control whether to put the TV in standby when the + player is put in standby. added some missing bits (version numbers, + config) to LibCecSharp. bugzid: 558 + * added an alert callback. bugzid: 462 + * added bShutdownOnStandby to libcec_configuration. bugzid: 660. This + setting tells the client to shutdown when the TV switches off and is + complimentary to bPowerOffOnStandby, which tells the PC to suspend. + They are kept separate to maintain backwards compatibility. + + * fixed + * gcc 4.7 compilation + * poll doesn't have an opcode. bugzid: 591 + * wait for MSGEND when data was received when opening the connection. + bugzid: 536 + * mark the correct device as active source after a stream path change. + if the new address is not found, but the old address is, then mark the + old address as inactive. fixes TV switching back to the old active source + when it scans for devices. bugzid: 592 + * ensure that the vendor ID is sent before trying to activate any SL device + bugzid: 574 + * fixed possible crash when in CLibCEC::IsLibCECActiveSource() when libCEC + doesn't know which device is the active source. bugzid: 479 + * correct handling CEC_USER_CONTROL_CODE_POWER. This ensures that the power + code always operates as a toggle, depending on the current state, and + that SetCurrentButton is always called for a valid user control code. + bugzid: 570 + * frequency wasn't checked in GetTimeMs(), leading to incorrect wait times + on some windows systems + * refactored USB adapter communication. less locks, shorter locks, added + documentation, lots of clean ups and no more incoming messages that are + skipped + * the destructor of CSerialSocket didn't call Close() + * added guards in CSerialPort + * reset m_socket to INVALID_SERIAL_SOCKET_VALUE after closing the + connection + * always wait for thread exit in CThread's desctructor + * crash on exit after GetDeviceInformation() + * check whether the destination is valid before setting anything in + m_bWaitingForAck. fixes heap corruption and crash on exit. bugzid: 479 + * bUseTVMenuLanguage from libcec_configuration wasn't copied in + SetConfiguration(), so this setting was reset to the default value + (enabled) every time. bugzid: 617 + * request the vendor id of a device if needed when the device status is + changed into 'present'. bugzid: 361 + * give priority to messages from the TV. removed the global lock in + CCECProcessor when sending. this is no longer needed. bugzid: 238 + * add some bounds checking to the HDMI port number. bugzid: 508 + * fixed usbser.sys copying in the driver .INF. bugzid: 503 + * only update the physical address when it has actually changed. bugzid: + 672 + * moved the static variables in os-threads from the header to a separate + cpp file, or it could lead to problems when included multiple times + * don't send an active source command when the physical address couldn't be + set, or it might confuse other CEC devices + * serial socket timeouts. bugzid: 654 + * fixed possible crash when trying to request a vendor id of a device when + the address of libCEC isn't known yet. bugzid: 654 + * extra guard so no commands are transmitted without a valid initiator. + bugzid: 654 + * moved the timed ping to a separate thread. bugzid: 654 + * persist settings directly when they're changed, only persist settings + that actually changed, only instruct the device to persist the settings + in eeprom when something changed, and don't persist settings on exit. + bugzid: 715 + * cec-config-gui: persist settings both in the eeprom and in the settings + xml file + * validate the input in CCECProcessor::IsActiveSource(). fixes potential + crash when the active source isn't known. bugzid: 671 + + -- Pulse-Eight Packaging Mon, 16 Apr 2012 18:03:00 +0100 + +libcec (1.5-4) unstable; urgency=low + + * changed/added: + * OS-X installation requirements and pointer + * full v2 firmware support: + * ping the adapter every 15 seconds. bugzid: 541 + * added v2 msgcodes. bugzid: 543 + * implemented the write methods for the v2 configuration. bugzid: 543 + * included the logical addresses in the persisted configuration for v2. + bugzid: 543 + * persist the configuration before closing the connection. only try to + persist the configuration when talking to a v2 firmware. bugzid: 543 + * added GetSetting() to CUSBCECAdapterCommunication. bugzid: 543 + * read the persisted settings from the ROM, and update it in + libcec_configuration if found. bugzid: 543 + * cec-client: set bGetSettingsFromROM to 1 in cec-client. bugzid: 543 + * cec-client: only read persisted EEPROM settings when -r or --rom is + provided as cmdline arg. bugzid: 543 + * call SetControlledMode(false) as last command when closing the + connection in v2. bugzid: 542 + * initial FreeBSD support: simply try to use ttyU* + + * fixed: + * set controlled mode and retry to send the previous command if it failed + with MSGCODE_COMMAND_REJECTED + * m_iLineTimeout was never initialised and used. fixes MSGCODE_REJECTED + when transmitting a message and incorrect line timeouts being used + * mac configure compile bugzid: 157 + * cec-config-gui: fixed application exit when the user clicked 'no' when + asked to reconnect. bugzid: 556 + * only wait for multiple 'command accepted' response when sending a + transmit command, and only to 1 in other cases. bugzid: 543 + * set the correct logical address mask before switching to autonomous mode. + bugzid: 543 + * re-added SetLineTimeout(). bugzid: 543 + * CUSBCECAdapterCommunication::SetControlledMode checked for the wrong sent + state + * os-x: don't add 0.5 before dividing in GetTimeMs() + * os-x: struct timespec now values weren't set correctly + + -- Pulse-Eight Packaging Fri, 16 Mar 2012 10:12:00 +0100 + +libcec (1.5-3) unstable; urgency=low + + * fixed: + * OS-X compilation + * default to firmware version 1 after 3 tries. some versions didn't send a + version. + * fixed cec-config win32 compilation + + -- Pulse-Eight Packaging Sat, 03 Mar 2012 15:21:00 +0100 + +libcec (1.5-2) unstable; urgency=low + + * changed/added: + * added Toshiba's vendor id, and set the device ID of the primary device to + Toshiba's and transmit it when starting + * lock in SyncedBuffer + * added a timeout to StopThread() + * also add commands to unsupported features when receiving + CEC_ABORT_REASON_REFUSED + * cec-config-gui: set cbPortNumber enabled when the physical address + override isn't checked instead + * cec-config-gui: added support for the new 'send inactive source' setting + + * interface changes: + * added an 'send inactive source' option to libcec_configuration, only + supported by client/server 1.5.1 and up. bugzid: 439 + * added a command to the interface to start the bootloader directly, + without going through all checks. bugzid: 218 + * LibCecSharp: implemented support for the new 'send inactive source' + setting + + * fixed: + * don't send an updated configuration when libCEC hasn't been initialised + fully. bugzid: 459 + * don't send an updated configuration back when initialising. let the + client call the GetCurrentConfiguration() method. bugzid: 459 + * configuration updates from libCEC. bugzid: 459 + * fixed accidental double deref. the method parameter already does that. + github #24 + * use CLOCK_MONOTONIC for timing info, since gettimeofday is affected by + ntp and by manually adjusting the system time + * the timeout value of pthread_cond_timedwait has to be referenced to + CLOCK_REALTIME + * don't add data to the input buffer in CUSBCECAdapterCommunication before + it's fully initialised + * fixed return value of CUSBCECAdapterCommunication::ParseMessage(). fixes + messages not being parsed in certain occasions + * don't try to transmit when the processor is being stopped + * set the server version in the LibCEC's constructor, since this is + checked by clients. fixes 'invalid libCEC version' popup when inserting + the adapter + * don't wait for the full timeout to pass in CCECProcessor:: + OpenConnection(), but retry to connect 2 times. fixes 'port busy' errors + when initialising libCEC. bugzid: 436 + * use the correct Sleep() method in CCECProcessor::OpenConnection(). the + thread hasn't been started there yet, so the sleep wasn't working. fixes + 'device or resource busy' when plugging in the adapter. bugzid: 436 + * check the adapter ping and firmware before starting the reader thread, so + we really leave the com port alone for a second when it fails because of + a busy error. bugzid: 436 + * ensure that the connection is really closed before retrying to connect. + bugzid: 436 + * LibCecSharp: recreate the delegates properly when (re)connecting to + LibCecSharp + + -- Pulse-Eight Packaging Tue, 28 Feb 2012 21:19:00 +0100 + +libcec (1.5-1) unstable; urgency=low + + * changed/added: + * a new libcec_configuration structs, which allows the client app to pass + a number of new options, like waking multiple devices on startup, + overriding the vendor id, etc. + * a new configuration GUI for Windows (.NET). this allows you to set + libCEC's configuration for XBMC in a convenient GUI. + * a CLI configuration tool (unfinished) for other platforms. will be + finished in an update. + * implemented power up for LG devices other than a TV + * win32: don't install libcec to the system directory by default, and + delete previous (testing) copies if present + * wait for multiple responses, not just for one at a time + * set the ackmask to 0 when closing the connection + * don't send 'image view on' when calling SetActiveSource() + * don't send power on, acitve source and standby commands by default in + cec-client + * platform: added CTryLockObject + * platform: added an Init() method in CTimeout, so it can be reset + + * interface changes: + * added a new initialiser method: CecInitialise()/cec_initialise(), that + accepts a "libc_configuration" struct as parameter. this way, the + signature of the init method can stay the same when adding new options. + in LibCecSharp, the new method appears as a new constructor. + * added CanPersistConfiguration()/cec_can_persist_configuration() + * added PersistConfiguration()/cec_persist_configuration() + * added GetCurrentConfiguration()/cec_get_current_configuration() + * added SetConfiguration()/cec_set_configuration() + * added GetLogicalAddresses()/cec_get_logical_addresses(): returns the list + of addresses controlled by libCEC + * added RescanDevices()/cec_rescan_devices(): lets libCEC force polls to + all logical addresses. + * added a callback that is called when libCEC's configuration changed. + * moved the autodetect address api call to libcec_configuration. only send + power up commands to non-tv devices when the power state is not + on/transition->on. let players call the power up/power down command. + * return the anynet return keycode directly instead of translating it to + 'return' for v1.5.0+ clients + * extracted CecSharpTypes.h in LibCecSharp. LibCecSharp is now in the + CecSharp namespace + * include the local cectypes.h in cec.h and cecc.h instead of system wide + * deprecated GetLibVersion() methods. use libcec_configuration instead + * removed deprecated CECCreate() method + + * fixed: + * fixed a lot of LG specific issues + * fixed OS-X compilation. credits: Dustin Cooper + * fixed a couple of possible deadlocks, e.g. when closing the connection + while receiving data + * cleaned up existing code + * libCEC no longer puts incoming data in a fifo buffer, but tries to + process it directly, which fixes issues like libCEC blocking processing + new commands while waiting for transmission acks. + * 'unsupported command' marking in CCECBusDevice + * ensure that the ackmask is always set to 0 when closing the connection + and that the call doesn't block the Close() call + * don't try to read or write in CUSBCECAdapterCommunication when the + connection has been closed + * LibCecSharp: added quotes to the linker statement for libcec.lib. fixes + compilation in paths with spaces. closes #20 + * LibCecSharp: set the callback methods in libcec to NULL before closing + the connection, since these might already have been destroyed in .NET + * LibCecSharp: delete the internal callback struct when closing the + connection + * LibCecSharp: pass correctly formatted logical address lists + * ensure that the vendor id is requested first when requesting info from a + device, so we are using the correct handler + * keep the 'busy state' of the command handler in CCECBusDevice + * poll the next device when the current is handled by libCEC. + * check the vendor id of a device before sending a power on command + * ensure that there always is at least one device type set + * transmit a keypress and key release as power on command when the target + device isn't the TV + * don't do a full reinit when not needed + * fix active source switches for the standard CEC implementation + * ensure that we don't send data to ourself + * check whether the port is open, not whether libCEC is initialised in + Transmit() + * platform: fixed return value from CCondition::Wait() + * platform: don't broadcast but wake one thread in + CProtectedSocket::MarkReady() + * platform: include stdint.h in windows/os-types.h instead of typedef'ing + ints + * platform: fixed tcp socket error handling and return value. + * platform: fixed return values of socket operations in lib/platform + * platform: added predicate in CCondition + * deleted the signed driver from the tree, since that doesn't work. let the + installer create a new signed driver on the production build system + + -- Pulse-Eight Packaging Mon, 19 Feb 2012 01:04:00 +0100 + +libcec (1.4-4) unstable; urgency=low + + * changed/added: + * added tcp client sockets to lib/platform (WIP) + * clean up lib/platform + * added: set controlled mode on after opening a connection to the adapter + (for firmware v2) + * added an IAdapterCommunicationCallback interface an use a callback method + to pass newly received cec_commands to CCECProcessor + * added "driver only" and "driver + libcec" sections to the installer + * added a signed driver + * created a separate driver installer, which is included in the libCEC + installer. uninstalls the old unsigned version of libCEC and the driver + when it's found and installs the new one in C:\Program Files(x86)\ + Pulse Eight\USB-CEC Adapter. + * don't sign development binaries with a temporary key. devs can do that + themselves when they want LibCecSharp in the GAC + * interface changes: + * added SetStreamPath()/cec_set_stream_path_logical()/ + cec_set_stream_path_physical() to the interface, to send a + "set stream path" command over the CEC bus, used to activate another + source. + * fixed: + * transmit 'menu state activated' after the stream path has been set to a + device that is handled by libCEC. should fix remote commands not working + properly on Panasonic TVs and after another source has been active. + bugzid: 233 + * set the ackmask to 0x0 when trying to find a free logical address + * keep trying to reconnect to the com port until the timeout runs out. + bugzid: 230 + * wait 500 ms before trying to retransmit a command. always wait for the + result of a transmission in CCECCommandHandler::Transmit() + * receive and send full cec_commands, not CCECAdapterMessages in + CAdapterCommunication. extract an IAdapterCommunication interface. fixed + potentially missed data in CAdapterCommunication + * close and delete the connection when the processor thread ends. fixes + reconnect after standby (access denied / connection already opened) + * don't replace handlers when not initialised, or the primary device's + logical address isn't known yet, which can lead to crashes. don't call + handlers directly in CCECProcessor without holding a lock on them + * fixed possible crash when command handler were switched while it was + being used + * keep the mutex locked when calling ReplaceHandlers() in CCECProcessor + * win32: also timeout when data is received in SocketRead() + * win32: fixed < vista runtime and compilation + * win32: ping the adapter and request the firmware version in + CUSBCECAdapterCommunication instead of CCECProcesssor. fixes failed + libCEC inits + * win32: fixed crash on exit in LibCecSharp + + -- Pulse-Eight Packaging Mon, 6 Feb 2012 14:26:00 +0100 + +libcec (1.4-3) unstable; urgency=low + + * fixed: + * try to ping the device and grab the firmware version until the connect + timeout runs out. fixes failed reconnect after standby, when the adapter + is still being initialised + + -- Pulse-Eight Packaging Thu, 27 Jan 2012 13:05:00 +0100 + +libcec (1.4-2) unstable; urgency=low + + * changed/added: + * added a firmware flash script for linux. + usage: ./support/cec-flash-device.sh /path/to/firware.hex + * refactored threading/locking - added windows native instead of + pthread-win32, so we can compile native x64 too + * check whether the adapter responds when connecting to it and report the + firmware version of the adapter after connecting + * moved create-installer.cmd to support/ + * completely removed AM_SILENT_RULES + * interface changes: + * compile LibCecSharp against .NET framework 2.0 and sign the assembly + * fixed: + * only the key release events were sent, not keypresses, which appeared in + clients as laggy keypresses + * fixed reconnect after standby + * wait for active tranmission to finish when opening a connection to the + adapter. fixes initialisation errors + * set the default transmit timeout properly instead of using 0 + * fixed possible deadlock because of a negative timeout in + CAdapterCommunication::WaitForTransmitSucceeded() + * fixed error message in cec-client (unable to open the device on port ...) + * exit cec-client after entering bootloader mode + * MSGCODE_START_BOOTLOADER doesn't respond with MSGCODE_COMMAND_ACCEPTED + + -- Pulse-Eight Packaging Thu, 25 Jan 2012 23:28:00 +0100 + +libcec (1.4-1) unstable; urgency=low + + * changed/added: + * added the vendor id for Sony + * always refresh the power state of a device when it hasn't been updated + for 30 seconds + * do silent builds by default + * interface changes: + * added optional callback methods to libCEC. enable them by calling + EnableCallbacks(ICECCallbacks *callbacks) / + cec_enable_callbacks(ICECCallbacks *callbacks). after this method is + called, the GetNext...() methods will not return any data + * added the same callbacks to LibCecSharp. implement CecCallbackMethods + and override the methods in there + * fixed: + * use the given timeout when trying to open a connection to the CEC + adapter + * resolved difference between method name in LibCECC.cpp and cecc.h. + credits: Doug Johnson + * don't transmit physical addresses while holding a lock in CCECProcessor + * don't hold a lock when sending an active source message. + * unload libCEC when the lib version is invalid + * "unused" warnings suppressed + + -- Pulse-Eight Packaging Thu, 12 Jan 2012 19:06:00 +0100 + +libcec (1.3-3) unstable; urgency=low + + * changed/added: + * place in libudev include in an extern C block. fixes compilations on + older libudev versions (e.g. on Hardy). closes #2. credits @fbuenemann + * added pkg-config to the dependencies list. issue #15 + * updated README. closes #14 + * added a script that tests some basic functions of the CEC adapter: + /support/cec-test-device.sh + * fixed: + * don't make libCEC the active source when changing the physical address. + don't send active source messages on startup, when not the active source + fixes unwanted device power ups + * replace the command handler directly after receiving a changed vendor + id. change the primary type from recording device to playback device + for panasonic TVs + * don't send a deck status update when sending an active source message + for panasonic TVs + * only switch handlers once when using the generic handler + * don't switch handlers when not needed + * hold a lock in CCECProcessor::SetHDMIPort() + * don't send deck status updates when sending an active source message by + default + + -- Pulse-Eight Packaging Thu, 3 Jan 2012 22:48:00 +0100 + +libcec (1.3-2) unstable; urgency=low + + * changed/added: + * copy libcec.dll to the XBMC installation dir when XBMC is found + * disable background polling. let the client request this info when needed + * update the power status of a device when it's set to + CEC_POWER_STATUS_IN_TRANSITION_STANDBY_TO_ON + * wait for the correct response when requesting something, not just any + response + * don't keep trying the same command/request after receiving a feature + abort message + * interface changes: + * change the previously unused boolean parameter in volume control methods + to bSendRelease, and only send a key release when it's true. default to + true + * fixed: + * don't send the power up/down keypress to listeners when in the initial + device state (powered off). fixes unexpected shutdown in XBMC when + connecting to the CEC adapter. + * send a 'menu state activated' command when starting up. bugzid: 113 + * don't wait for a response when not needed + * don't hold a lock while waiting for a response. fixes failed libCEC + inits and slow responses + * don't replace a command handler when it's being used. fixes possible + crash on startup + * don't try to do anything before the processor thread has started + * don't transmit active source messages when the physical address is + still 0xFFFF + * don't init the default handler before the physical address is known + + -- Pulse-Eight Packaging Thu, 29 Dec 2011 03:05:00 +0100 + +libcec (1.3-1) unstable; urgency=low + + * changed/added: + * make libudev optional. if libudev is not available on linux, adapter + autodetection will also not be available. fixes compilation on Hardy/ATV1 + * added a C++ CLR wrapper for libCEC, so libCEC can be used by any .NET + language + * added vendor support for LG + * added vendor support for Philips + * added vendor support for Yamaha + * added vendor support for Onkyo + * added 'scan' command to cec-client, that displays info about devices on + the bus. made all ToString() methods available on the interface. + * added '-s' or '--single-command' to cec-client. starting cec-client with + this parameter executes a single command in cec-client and does not power + on devices on startup and power them off on exit. this way, you can use + cec-client in a shell script. since there's some handshaking involved at + startup, this is not very fast. to execute a command and only display the + result and any error/warning, execute it with + RESULT=`echo command | cec-client -s -d 3` (on linux/osx, win32 batch + files are a bit different) + * added HDMI port ('-p' or '--port') and base device ('-b' or '--base') to + cec-client's parameters + * handle image view on and text view on + * handle routing information and report physical address opcodes + * handle audio status updates + * send ping and bootloader commands via the output queue + * scan the CEC bus for devices when starting libcec + * pass all commands that are directed at libcec to listeners + * interface changes: + * added GetActiveSource()/cec_get_active_source() + * added IsActiveSource()/cec_is_active_source() + * added GetDevicePhysicalAddress()/cec_get_device_physical_address() + * added GetDeviceOSDName()/cec_get_osd_name() + * added SendKeypress()/cec_send_keypress() and SendKeyRelease()/ + cec_send_key_release() + * added VolumeUp()/cec_volume_up(), VolumeDown()/cec_volume_down(), + MuteAudio()/cec_mute_audio() + * added GetActiveDevices()/cec_get_active_devices(), IsActiveDevice()/ + cec_is_active_device(), IsActiveDeviceType()/cec_is_active_device_type(). + * added SetHDMIPort()/cec_set_hdmi_port(). devices are now detected on load + and when a device with the same physical address is detected, libcec will + use the selected hdmi port on that device. should fix source selection on + other devices, like an amplifier + * added a hook in libcec for physical address autodetection + * fixed: + * don't request the physical address from the tv (it's always 0x0000) + * set the proper ackmask before doing anything else + * don't unlock the transmit mutex in CCECProcessor while waiting for an + answer + * fix device polling + * refactor CEC read/write. keep a single lock for all writes, not one per + device + * ignore other data while waiting for a response + * retry failed tranmissions + * don't delete a message before it's been sent when starting the bootloader + * or when sending a ping + * fixed possible segfault when switching the command handler after a vendor + * id changed + * handle audio opcodes correctly + * inactive source should be directly addressed at the TV + * don't report a changed physical address when it hasn't changed + * routing information sets the stream path, not the physical address + * don't scan the whole bus in CCECProcessor::IsActiveDeviceType() + * don't request the vendor id from devices that are handled by libcec + * mark device status as present when a command was received from a device + * always send a power on command in CCECBusDevice::PowerOn() + * don't request updates statusses unless needed + * report physical address sends 3 parameters, not 2. check whether the + device type is correct + * devices can send vendor commands from other vendors, so don't assume the + device is of a certain vendor when it sends commands with a vendor id + * thread safety fixes. bugzid: 19 + * clear any previous input when opening a connection to the adapter. + bugzid: 54 + * use the correct source address in CSLCommandHandler::HandleVendorCommand() + * uncorrected CEC_OPCODE_DEVICE_VENDOR_ID. closes #5 + * renamed enum methods. fixes potential macro collision with isset(). + thanks davilla + * don't change the active device when receiving stream path changed + messages. fixes wrong source selection when powering after the TV. + + -- Pulse-Eight Packaging Fri, 09 Dec 2011 12:16:00 +0100 + +libcec (1.2-1) unstable; urgency=low + + * bugfixes: + * pass the deck_control command to libcec listeners + * check whether the initiator is valid in CCECProcessor::ParseCommand(). + fixes possible segfault when parsing invalid data + + -- Pulse-Eight Packaging Sat, 12 Nov 2011 13:36:00 +0100 + +libcec (1.1-3) unstable; urgency=low + + * fixed return value in CCECProcessor::SetStreamPath(), which prevented + active source and menu state from being sent + + -- Pulse-Eight Packaging Fri, 11 Nov 2011 23:36:00 +0100 + +libcec (1.1-2) unstable; urgency=low + + * forgot to update the headers to v1.1 + + -- Pulse-Eight Packaging Fri, 11 Nov 2011 18:56:00 +0100 + +libcec (1.1-1) unstable; urgency=low + + * interface changes: + * added logical address autodetection and let libcec handle multiple types + simultaniously. for logical address autodetection, you have to use + CECInit()/cec_init_typed() instead of CECCreate()/cec_init() + * added SetActiveSource()/cec_set_active_source() to the interface. + deprecated SetActiveView()/cec_set_active_view() + * added SetMenuState() + * added PollDevice()/cec_poll_device() + * removed duplicate method SetActiveSource() / SetActiveView() + * added SetDeckControlMode() and SetDeckInfo() + * fixed: + * added vendor detection for panasonic and broadcast active view and set + menu state when a panasonic device sets the stream path. thanks for the + pointer cptcoconut. + * added vendor code for pioneer + * osd string is 13 chars max. don't send more + * send the correct cec version for each device + * switch to panasonic specific cec implementation if a panasonic device was + detected + * send the correct device type in TransmitPhysicalAddress() + * send a reply from the correct device when the stream path is requested + * opcode 0x80 means the stream path changed, not the physical address + * don't poll for a vendor ID in monitoring mode + * fixed parameter parsing in SetVendorId() + * buffer up commands that are received while waiting for an ack. only send + 'active source' message for the actual active source + * win32: prepend the com port path with '\\.\', so com ports > 9 can be + accessed. thanks smolesen + * audio systems cannot be an active source, so don't transmit active + source message from this device + * only send 'active source' when powered on + * only set the osd name for the primary device. use default values for + others + * increase physical address with 0x100 per device + * win32: removed unneeded afxres.h include in the resource files, which + is not present when using studio express. thanks Ghuron + * fixed C headers + * mark the active source as active and other devices as inactive + * set the power status to 'on' when receiving CEC_USER_CONTROL_CODE_POWER + * transmit the menu state as (active) when the stream path is set + * changed: + * changed copyright of boblight files with permission of the original + author + * partial handling of audio related opcodes + * more consistent log messages + * set a device type and name for each CCECBusDevice + * keep a power and menu state per device + * renamed all Broadcast...() and Report...() methods to Transmit...() + * renamed SetOSDString() to TransmitOSDString() + * changed debug level of 'did not receive ack' from error to debug + * only set the power status to 'on' for the primary device + * moved method decriptions from cecc.h to cec.h + * only send a power on command when a device isn't on already and set + the power state to CEC_POWER_STATUS_IN_TRANSITION_STANDBY_TO_ON while + powering on + * handle CEC_OPCODE_STANDBY + * handle CEC_OPCODE_ACTIVE_SOURCE + * always start in standby mode and let the tv (or other device) send the + power on command + * renamed the last few enums + * handle deck related opcodes. + * added TransmitVendorId(), but only transmit the id if it's not set to 'unknown' + + -- Pulse-Eight Packaging Fri, 11 Nov 2011 17:42:00 +0100 + +libcec (1.0-1) unstable; urgency=low + + * interface changes: + * set lib interface version back to 1.0 and rename GetLibVersion() to + GetLibVersionMajor() and GetMinVersion() to GetMinLibVersion() + * added GetLibVersionMinor()/cec_get_lib_version_minor() and set the minor + version number to 1 + * fixed: + * samsung's vendor specific remote keypresses don't send key releases. added + call to AddKey() directly after the keypress + * always reset the button press time in CLibCEC::AddKey() + * always wait for a signal in CCECProcessor::Transmit() + * changed: + * drop shared_ptr and use a normal pointer. removed boost dependency + + -- Pulse-Eight Packaging Fri, 04 Nov 2011 00:14:00 +0100 + +libcec (0.8-2) unstable; urgency=low + + * added 'libboost-dev' to build deps + + -- Pulse-Eight Packaging Tue, 01 Nov 2011 23:31:00 +0100 + +libcec (0.8-1) unstable; urgency=low + + * interface changes: + * added GetDevicePowerStatus()/cec_get_device_power_status() + * added GetDeviceVendorId()/cec_get_device_vendor_id() + * added GetDeviceMenuLanguage()/cec_get_device_menu_language() + * added GetDeviceCecVersion()/cec_get_device_cec_version() + * added SwitchMonitoring()/cec_switch_monitoring() to the interface. when + monitoring is enabled, the device will only log the data it received, + but will not respond to any message + * removed timeout parameter in Transmit() and included the ack timeout in + the cec_command struct + * made the vendor id -> vendor name translation available + * made CEC_LOG levels powers of 2 + * introduced CEC_LOG_TRAFFIC log level + * fixed: + * set the correct ackmask on startup + * wait for ack while keeping a lock + * wait for the processor thread to start before continuing on startup + * wait for messages to be transmitted before continuing in + CCECProcessor::Transmit() + * only set the logical address once when it has changed + * correct source for broadcast messages + * win32: create Release type installer + * changed: + * make all reads and write in CAdapterCommunication go through buffers. + * poll for a vendor ID of connected devices and switch to a non-standard + CEC implementation if needed. + * added vendor detection of Samsung and LG devices + * handle samsung remote command 'return' + * cec-client: + * added -la and --logical-address to the command line params + * added -d and --log-level params to cec-client + * added -sf and --short-log-file, which only log the actual messages, not + the level and timestamp + * added -f and --log-file parameters to cec-client + * added option to change the log level to cec-client + + -- Pulse-Eight Packaging Tue, 01 Nov 2011 22:58:00 +0100 + +libcec (0.7-1) unstable; urgency=low + + * send a keypress with 0 duration when a key is pressed and with a duration + set when it's released + * added SetOSDString() to the interface (not supported by all tvs) + * fixed: 'routing change' is a broadcast message. log routing changes, but + don't send a 'set active view' message, so the active input won't be + changed + * log keypresses in the debug log + * added 'pa' command to cec-client, to change the physical address + * added SetPhysicalAddress()/cec_set_physical_address() to the interface, so + the HDMI port number to use can be changed + * fixed: put the message processing code from WaitForAck() in ParseMessage(). + fixes missing incoming message logging of non-data messages when not + waiting for an ACK + * added 'txn' command to cec-client. same as 'tx', but doesn't wait for ACK + before returning + * fixed: set initiator and destination first in cec_command::push_back(). + fixes 'tx' command in cec-client + * fixed: keep trying to connect while iTimeout isn't reached (default 10 + seconds). fixes exit with a 'permission denied' error when the device isn't + ready yet. remove CEC_SETTLE_DOWN_TIME + * fixed: don't call SetActiveView() when reporting the power status. fixes + loop which causes some TVs to report failed connections + * fixed: eom was not being parsed when receiving MSGCODE_FRAME_DATA. fixed. + * fixed: add the device type as parameter when sending the physical address. + thanks bobo1on1 + * fixed: typo in libcec.pc.in + * added optional strLib parameter to LoadLibCec(), so the location of the + shared library can be specified + * only link cec-client against ld. use AC_SEARCH_LIBS instead of AC_CHECK_LIB + * use int instead of bool on the public C interface and remove stdbool.h include + * renamed: CECExports.h => cec.h, CECExportsC.h => cecc.h, CECLoader.h => + cecloader.h, CECTypes.h => cectypes.h + * updated debian package. split up libcec and libcec-dev + * fixed: changed to use dlopen instead of static linkage. shuffled headers a + bit. bumped interface to version 7 + * removed 'rt' from libraries. it's not needed (anymore) + * fixed: reset the active view after a routing change. issue #1 + * fixed: changed attached license to be GPLv2 instead of GPLv3 this was an + error as libCEC is licensed GPLv2 not GPLv3 thanks @garbear + * added contributors link + + -- Pulse-Eight Packaging Fri, 14 Oct 2011 17:34:00 +0200 + +libcec (0.6-1) unstable; urgency=low + + * bumped interface version to 6 + * fixed packet output (reporting the OSD name correctly now) + * refactored packet structs: split up in cec commands and adapter messages + * fixed i/o timings + * added Darwin support (thanks Davilla!) + * fixed WaitForAck() + * fixed possible deadlock when starting a new thread + * implemented vendor id and device class parsing. full detection will follow + * added "on" and "standby" commands to the test client + * retransmit packets if needed + * fix GetTimeMs() on linux + * added timestamp to log messages + + -- Pulse-Eight Packaging Sun, 09 Oct 2011 15:15:00 +0200 + +libcec (0.5-1) unstable; urgency=low + + * bumped interface version to 5 + * don't pass std::string and std::vector across the interface + * fixed heap corruption crashes on windows + * fixed some memory leaks + * reset all structs to default values before doing with them + + -- Pulse-Eight Packaging Fri, 07 Oct 2011 22:00:00 +0200 + +libcec (0.4-3) unstable; urgency=low + + * fixed reconnect + * fixed some threading related bugs + * fixed deadlock on exit + * fixed wrongly reported physical address + + -- Pulse-Eight Packaging Thu, 06 Oct 2011 00:19:00 +0200 + +libcec (0.4-2) unstable; urgency=low + + * fixed int parameter sizes and some signed/unsigned warnings + * check whether m_port isn't NULL in ReadFromDevice + * stop the processor thread and delete the CSerialPort instance on exit + * added mutex in CSerialPort + * fix segfault on exit + * renamed libPlatform -> platform. + * stuck everything from libCEC in the CEC namespace to avoid namespace + pollution + + -- Pulse-Eight Packaging Tue, 04 Oct 2011 23:45:00 +0200 + +libcec (0.4-1) unstable; urgency=low + + * bumped interface version to 4 + * timeout parameter removed from Close()/cec_close(). return type changed to + void + * added cec_destroy() method + * removed timeout parameter from Transmit() + * change the default argument of PowerOnDevices() to CECDEVICE_TV + * removed PowerOffDevices(). use StandbyDevices() instead + * removed obsolete methods from the interface + * fixed bug: pthread_cond_wait was called without the mutex locked + * fixed possible deadlock: don't send messages and wait for an ack with the + mutex locked in CCECParser + * created a separate reader thread and fixed the 'lock timeout' bug + * testclient: use CECDEVICE_TV instead of the default argument + (CECDEVICE_BROADCAST) for PowerOnDevices() and PowerOffDevices() + + -- Pulse-Eight Packaging Tue, 04 Oct 2011 00:48:00 +0200 + +libcec (0.3-1) unstable; urgency=low + + * added device detection support for Windows + + -- Pulse-Eight Packaging Sun, 02 Oct 2011 12:09:33 +0200 + +libcec (0.2-1) unstable; urgency=low + + * added a Close() method to the interface + * Added CEC command that were received by the adapter in a buffer that can be + read by a client with GetNextCommand()/cec_get_next_command(). added a + 'help' command to the test client, that displays all available commands + * Fixed setting the ackmask. deprecated SetAckMask()/cec_set_ack_mask(). use + SetLogicalAddress()/cec_set_logical_address() instead. add 'la' command to + the testclient to set the logical address of the cec adapter + * Added optional logical and physical address parameters to + LoadLibCec()/cec_init() on the interface. fixed wrongly placed namespace + close tag in CECExports.h. updated interface documentation. bumped + interface version to 2. + * fixed hardcoded ackmask in SetAckMast(). set a shorter display name in the + test client. the previous one was too long and being rejected + + -- Pulse-Eight Packaging Fri, 28 Sep 2011 01:33:00 +0200 + +libcec (0.1-1) unstable; urgency=low + + * Initial release v0.1 + + -- Pulse-Eight Packaging Wed, 28 Sep 2011 23:55:48 +0200 diff -Nru libcec-4.0.1+dfsg1/debian/changelog.in libcec-4.0.2.1~artful/debian/changelog.in --- libcec-4.0.1+dfsg1/debian/changelog.in 1970-01-01 00:00:00.000000000 +0000 +++ libcec-4.0.2.1~artful/debian/changelog.in 2017-01-28 22:54:36.000000000 +0000 @@ -0,0 +1,1762 @@ +libcec (4.0.2.1~#DIST#) #DIST#; urgency=medium + + * fixed: + * windows: device detection. credits: @Portisch + * don't automatically assume that an AVR is active in some situations + * don't take Panasonic's vendor id when emulating an AVR + * drm EDID parser not compiled in. credits @gdachs + * python: have Swig generate Python threading support + * python: only pass unsigned + * python: allow empty callback parameters + * python: install demo app as executable + * python: correct install path. credits @Lo0k @mkreisl. #284 #288 #289 #291 + * python: possible crash when passing an invalid callback + + -- Pulse-Eight Packaging Mon, 23 Jan 2017 16:28:00 +0100 + +libcec (4.0.1.1~#DIST#) #DIST#; urgency=medium + + * fixed: + * TransmitVolumeDown to use CEC_USER_CONTROL_CODE_VOLUME_DOWN. credits: + @michaelarnauts + * HAVE_AOCEC_API missing in if in AdapterFactory. credits: @gdachs + * env.h had 'ON' instead of '1' for some values + + -- Pulse-Eight Packaging Tue, 3 Jan 2017 19:12:00 +0100 + +libcec (4.0.0.3~#DIST#) #DIST#; urgency=medium + + * fixed: + * headers weren't installed after package name changes + + -- Pulse-Eight Packaging Tue, 14 Nov 2016 10:15:00 +0100 + +libcec (4.0.0.2~#DIST#) #DIST#; urgency=medium + + * changed: + * updated readme files + * renamed 'libcec-dev' to 'libcec4-dev' + + * fixed: + * removed debian Replaces/Provides/Conflicts + * crash in drm edid code. credits: @zivillian + * compilation with -DHAVE_AOCEC_API=1 + + -- Pulse-Eight Packaging Tue, 7 Nov 2016 22:43:00 +0100 + +libcec (4.0.0.1~#DIST#) #DIST#; urgency=medium + + * API cleaned up for v4 + * changed: + * signature for GetDeviceMenuLanguage() changed + * signature for GetDeviceOSDName() changed + * signature for libcec_get_device_menu_language() changed + * signature for get_device_osd_name() changed + * cec_datapacket size reduced to 16 bytes + * callbacks changed to pass pointers instead of copies + * obsolete entries removed from libcec_configuration + * removed deprecated FindAdapters() and MuteAudio() + * send volume change commands to the TV if no audio system is present. Only + some TVs support this. closes #223 + + * added: + * bAutoWakeAVR entry in libcec_configuration, which controls whether to + automatically power on the avr or not when the source is activated. issue + #156 + * iDoubleTapTimeoutMs replacing iDoubleTapTimeout50Ms. time is now in + milliseconds + * new AO CEC adapter. credits: @gdachs + + * fixed: + * compilation with full debugging enabled + * handling of LG vendor command 0x0B. Issue #256. Credits @Vollstrecker + * return value wasn't checked correctly in CLibCEC::RegisterClient() + * Raspberry Pi fixes for issues #252 and #191 + + -- Pulse-Eight Packaging Tue, 26 Oct 2016 18:08:00 +0100 + +libcec (3.2.0.1~#DIST#) #DIST#; urgency=medium + + * Slit up repositories for libCEC and .Net utilities. + + -- Pulse-Eight Packaging Wed, 19 Oct 2016 16:57:00 +0100 + +libcec (3.1.0.1~#DIST#) #DIST#; urgency=medium + + * changed / added: + * bump platform lib (windows) + * use a template that can be used by scripts for the changelog + * make released key polling wait for exact time until key gets released. + credits @popcornmix + * keep track of time since initial button press and last button update + credits @popcornmix + * support repeating button presses with configurable repeat rate. credits + @popcornmix + * pass through duration on all button repeats. credits @popcornmix + * updated README.md + * moved the buffer in CDRMEdidParser::GetPhysicalAddress() from the stack + to heap + * added #include to make the IDE happy. not actually used when compiling + * clean up device detection code a bit and replace winapi calls with + CM_* calls. issue #130 + * replaced lockdev by flock. closes #141 + * use a single number as major SO version like others. credits @rbalint + * Sharp uses vendor id 0x534850 too. issue #36 + * use p8-platform instead of platform + * detect dirty trees + * support for vs2015 to build scripts + * update build scripts for vs2015 and win10uni + + * fixed: + * missing version.h when installing on windows + * skip double press removal. It is handled through other means. credits + @popcornmix + * don't generate an invalid env.h when not built with the .git dir present. + closes #112 + * fix multi-arch libdir locations. credits @wsnipex + * fix for holding buttons on remotes of Philips TVs. credits @mrgreywater + * initialisation issue found on Raspberry Pi with Buildroot. credits + @elouet + * crash on systems without /sys/class/drm. credits @rbalint + * segfault when an empty EDID blob is passed to + GetPhysicalAddressFromEDID() + * combo key (stop by default) in the EventGhost plugin. fixes #128 + * silence compiler warnings + * git-rev.sh script + * clean/fix platform detection + * display a nice error message if LibCecSharp failed to load + * limit the log in cectray to 100k + * open cec-tray minimised if configured. don't open and minimise. issue + #158 + * cosmetics: persist -> save + * query commands in eventghost. fixes #160 + * eventghost demo config + * don't call PowerOnDevices() if no devices to wake have been configured. + issue #97 + * Don't skip checking for Rasperry Pi library (Fixes #166). credits + @kingosticks + * TDA99x check + * disable DRM for FreeBSD + + -- Pulse-Eight Packaging Wed, 20 Jan 2016 00:37:32 +0100 + +libcec (3.0.1-1~#DIST#) #DIST#; urgency=low + + * changed / added: + * autodetect physical ID from DRM. credits @PoppyPop + * cmake command line options for raspberry pi distributions that don't use + standard system paths for libs for some reason + * convenience methods for compilation on the raspberry pi with non-standard + system directories and cross compilation + * explanation in README.md for Exynos and TDA995x + * don't treat failed acks from the tv as error when sending an active + source message + * compilation info when building libCEC + * build shared libraries by default + * cec-client: 'tx' command parsing + + * fixed: + * return code of CCECClient callbacks after async changed. credits: @mk01 + * polling addresses on RPi. credits: @mk01 + * interruptable Sleep() in RPiCECAdapterMessageQueue + * Exynos support. credits: @YamashitaRen + * XCASE got removed from posix termios in some recent version + * don't return an abort code if sending a response code fails + + -- Pulse-Eight Packaging Fri, 03 Jul 2015 15:19:00 +0200 + +libcec (3.0.0-2) unstable; urgency=low + + * fixed: + * build fixes on non-linux + + -- Pulse-Eight Packaging Fri, 01 May 2015 01:41:00 +0200 + +libcec (3.0.0-1) unstable; urgency=low + + * changed / added: + * initial version of an EventGhost plugin + * Python API added through Swig, based on the C++ API + * switched from autotools to cmake + * added curses support. credits @joao29a + * added cecc-client (testclient for the C api) + * added runtime libCEC loading for C + * updated the C interface to include new features and no longer use a + global library instance + * some AVRs fail to be powered up by the TV when it powers up. power up the + AVR explicitly + * added support for CEC_DEVICE_TYPE_TV (useful for testing) + * compile with c++11 + * removed CStdString + * drop 'using namespace std' + * autogenerated version numbers, drop some backwards compat code + * LibCecSharp: added PhysicalAddressToString() + * CecSharpClient: better formatting of the scan command + + * fixed: + * Debian packaging cleaned up. Credits @PimentNoir + * fixed Raspberry Pi compilation. Credits @NHellFire + * ignore vendor command with id from pioneer AVRs. bugzid: 3853 + * update the vendor id of a device when receiving a vendor command with id + before receiving a vendor id + * XBMC->Kodi rebranding + * don't delete m_client when m_cec hasn't been deleted yet in + CLibCEC::~CLibCEC(). issue #63 + * change device types in CCECProcessor::Process(), not directly. issue #63 + * use shared_ptr instead of passing raw pointers around that + can be unregistered from another thread and crash + * check if the port or device actually changed in CCECClient::SetHDMIPort() + * potential buffer overflow + * fixed setting the physical address at startup when using default settings + * don't call callbacks directly in libCEC, but queue them and process from + a worker thread + * libCEC Tray: crash when retrying to find adapters + * libCEC Tray: don't show the "no device found" warning when resuming + from standby + * libCEC Tray: reconnect to the adapter after resuming from standby + * libCEC Tray: send key presses to the active window when none of the + predefined (wmc/kodi) ones are active + * libCEC Tray: fixed key combinations with the windows key + + -- Pulse-Eight Packaging Fri, 03 Apr 2015 21:13:00 +0200 + +libcec (2.2.0-1) unstable; urgency=low + + * changed / added: + * read the physical address from X11 randr extension. credits: @smithereens + * support for Exynos HDMI. credits: @vamanea + * another vendor ID for Harman/Kardon. credits: @ksooo + * some 1.4 keycodes have been added. credits: @ksooo + * cec-client: fix typo prevent keycodes to be passed. credits: @popcornmix + + * fixed: + * various Raspberry Pi fixes. credits: @mk01 + * vendor specific handlers weren't used for Toshiba and Onkyo. + credits: @ksooo + * LibCecTray: keypress not sent when multiple instances of eshell.exe are + running. thanks @pvanbaren + * deadlock on exit in XBMC, because of CEC_ALERT_CONNECTION_LOST + + -- Pulse-Eight Packaging Tue, 28 Oct 2014 10:45:00 +0200 + +libcec (2.1.4-2) unstable; urgency=low + + * fixed: + * OS X build + + -- Pulse-Eight Packaging Wed, 18 Dec 2013 02:14:00 +0100 + +libcec (2.1.4-1) unstable; urgency=low + + * changed / added: + * set the vendor id of devices handled by libCEC to our vendor id + * added protection against standby without a notification from XBMC and + clock changes. issue #186 + * update system audio mode when audio system devices are activated + * added vendor id and name 'Harman/Kardon' + * added vendor id and name 'Marantz' + * cec-tray: support for away mode + * cec-tray: support for screensaver events + * fixed: + * fixed potential crash when SendCommand returns NULL + * fixed crash when CCECProcessor::Transmit was called after + CCECProcessor::Close + * always call the SourceActivated() callback in + CCECBusDevice::MarkAsActiveSource(), even when we were already active, + and let clients handle dupes. this prevented the screensaver from + being cancelled in XBMC + * send our vendor id when the tv sends it's vendor id + * transmit our physical address when the TV sends it's physical address + * potential deadlock + * leak on exit in CWaitForResponse::Clear() + * also transmit an active source message as response to a set stream path + command when we were already marked as active. bugzid: 3116 + * only send an active source message when receiving a routing change to an + address handled by libCEC. issue #56 + * HandleVendorRemoteButtonUp -> HandleUserControlRelease for all vendors + * silence warning for xx:a0:00:09:b0:00:80:20. bugzid: 2559 + * fixed comboKeyTimeout=0. closes #168 + * Panasonic: doesn't request the active source status when powered up, but + it does send a vendor command. send an active source message when we're + marked as active source after receiving this command. issue #192 + * possible crash when the tv does not respond to polls and the client isn't + registered yet. don't poll the tv in monitoring mode. closes #163 + * Panasonic: standby command + * Panasonic: silence 'unmapped code' warning. bugzid: 2375 + * LG: clean up and attempt to fix issue #176 + * LG: newer firmwares don't send a second power status request after it's + been requested once and replied with 'standby -> on' like previous + versions. send an active source message in an attempt to fix this. issue: + #176 + * Sharp: check whether the 'auto power on' option is disabled and tell the + user how to enable it + * Samsung: respond to vendor command 0x23 sent by samsung. attempt to fix + bugzid: 2164 + * cec-client: try to reconnect when the connection was lost + * cec-tray: crash on load (MissingManifestResourceException) + * cec-tray: crash or deadlock on exit + * cec-tray: crash when the connection to the adapter was lost + * cec-tray: display TV not responding warning on top + * windows: build libCEC and cec-client against toolset v100 (VS2010) + * FreeBSD: proper the adapter detection. credits @fneufneu + * suppress mangling warning. credits @warped-rudi. closes #190 + + -- Pulse-Eight Packaging Sat, 13 Dec 2013 16:02:00 +0100 + +libcec (2.1.3-1) unstable; urgency=low + + * changed / added: + * ask users to send an email when receiving an unhandled vendor command + * toshiba: map top menu and dvd menu buttons. closes #148 + * LibCecSharp: sync alert types + * LibCecSharp: added CurrentVersion to the version enum + * CecSharpClient: use CurrentVersion instead of a hardcoded version + * CecTray: power management + * CecTray: split up asyncform + * CecTray: try/catch xml exceptions when reading the xml config. bugzid: + 2082 + * CecTray: use CurrentVersion instead of a hardcoded version + * CecTray: display a warning if we can't poll the TV + * CecTray: display alerts from libCEC + * CecTray: don't use lazy loading for the main controller, but pass the + instance. bugzid: 2082 + * windows: converted to vs2012 + * fixed: + * toshiba: toshiba handler wasn't initialised, and toshiba uses more than + one vendor id + * libCEC marked itself as inactive source when the stream path changed to + a device with a different physical address. bugzid: 2157 + * TDA995x: report proper firmware revision (credits: @warped-rudi) + * TDA995x: avoid callback when already stopped (credits: @warped-rudi) + * windows: fix resource files and backwards compat dll names + + -- Pulse-Eight Packaging Sat, 11 May 2013 10:06:00 +0000 + +libcec (2.1.1-1) unstable; urgency=low + + * changed / added: + * send an alert when the TV does not respond to polls + * fixed: + * LG didn't switch sources after the TV powered up + * always poll a device when the status is unknown, and don't try to + determine whether it needs to be polled by checking the status of other + devices + * don't mark a device as inactive when receiving a routing change message, + only when another device was made acive. fixes the issue that rc + passthrough doesn't work when a tv sends a quick routing change to + another port before requesting the active source when coming out of + standby + * LibCecSharp: fixed 14 char long OSD name (wasn't \0 terminated) + * LibCecSharp: fixed return value of GetActiveDevices(). issue #131 + * cec-tray: fixed index out of range exception in CECSettingNumeric.cs. + bugzid: 2082 + * cec-tray: ensure that the tray app only initialises once. bugzid: 2082 + * rpi: don't set the physical address to 1.0.0.0 when receiving + VC_HDMI_UNPLUGGED. it may wake up device when they were just sent to + standby. issue #142 + * osx: use the correct dylib name in cecloader.h, used by cec-client + + -- Pulse-Eight Packaging Fri, 8 Mar 2013 17:21:00 +0100 + +libcec (2.1.0-1) unstable; urgency=low + + * changed / added: + * added vendor id for Denon + * added DetectAdapters() method, that returns all device information for + detected adapters, not just the com port + * added new method PowerOnScreensaver. credits: @jmarcet + * LibCECTray: Added ability to send modifiers by nesting commands in + KeyInput.cs. credits: Nate Burr + * rpi: Added /opt/vc/include/interface/vmcs_host/linux to rpi_cflags to fix + building on 'next' firmware branch. credits: Nedim Lisica + * fixed: + * don't send two active source message sequences to philips. issue #118 + * don't send deck status updates to philips when activating the source + * update the active source status correctly after a manual switch to + another source. closes #124 + * rename cec_audio_status() to cec_audio_get_status() to avoid conflict + with the cec_audio_status enum. This makes the C API compile again. + credits: Dave Chapman + * LibCECTray: Fixed bug with libcec adding the keyup for button commands + and making sure they are still executed. credits: Nate Burr + * rpi: register callback for HPD. re-read the physical address when we + received VC_HDMI_ATTACHED. issue #109 + + -- Pulse-Eight Packaging Tue, 26 Feb 2013 23:06:00 +0100 + +libcec (2.0.5-1) unstable; urgency=low + + * changed: + * also try polls at least twice when it failed + * added methods to get the audiostatus and toggle the mute status from the + amplifier (if connected) + * added comboKey and iComboKeyTimeoutMs to libcec_configuration + * force cec_user_control_code_unknown to 0xFF + * fixed: + * check unsupported features properly + * only send an active source message when the stream path changed and we + weren't the active source yet + * don't mark as inactive source on routing changes + * press & hold + * never mark user control opcodes as unsupported + * report our OSD name to the TV, since some TVs don't request it + * initial audiostatus value + * don't log a no longer relevant FIXME + + -- Pulse-Eight Packaging Thu, 6 Dec 2012 20:58:00 +0100 + +libcec (2.0.4-1) unstable; urgency=low + + * changed: + * dropped obsolete cec-config + * added CEC_CLIENT_VERSION_CURRENT and CEC_SERVER_VERSION_CURRENT. closes + #88 + * support colon separated data for the 'tx' command in cec-client + * mark the adapter as (in)active source for firmware v3+ + * added 'is' command to cec-client, to mark libCEC as inactive source + * fixed: + * only change the handler of the primary device if the tv has a quirks mode + not for other devices + * send an active source message when the route was set to the physical + address that is handled by libCEC + * default double tap timeout wasn't set for panasonic + * philips TVs sometimes keep sending key presses without key releases + * philips TVs ignore 'image view on' right after they were sent into + standby. check the power status of the tv every 5 seconds, until it + reports to have powered on + * mark a device as powered on when receiving a stream path or routing + change + * update the active source status correctly on stream path changes + * ensure that we only send 'image view on' when needed + * mark the TV as 'in transition standby -> on' after sending + 'image view on', so we don't spam the TV with 'image view on' command + while waiting for it to finish powering up. bugzid: 1603. bugzid: 1609. + bugzid: 1592 + * request the active source before requesting device information in + cec-client, or it'll display incorrect information when called the first + time + * update the value of CCECProcessor::m_bMonitor when registering a client. + SetControlled() wasn't called on exit, so it took 30 seconds until it was + auto-enabled + * silence 'unused' warning properly. closes #86 + * only change the type of the client to 'playback device' instead of + 'recorder' for panasonic if the TV is a panasonic. issue #84 + * always poll the TV if it's marked as not present. issue #83. issue #84 + * only set m_iCurrentButton when the duration isn't known yet. fixes + duplicate key press for vendor remote codes. closes #81 + * delete the right registry key + * send active source message when we received a routing change with a + device that is handled by libCEC as address. issue #89 + * return value wasn't updated in GetLogicalAddresses() + + -- Pulse-Eight Packaging Thu, 15 Nov 2012 02:26:00 +0100 + +libcec (2.0.3-1) unstable; urgency=low + + * changed: + * log unhandled vendor remote keycodes in the log, so they get logged + without debugging enabled + * double tap timeout increased from 200ms to 250ms + * CuBox/NXP* renamed to TDA995x* + * fixed: + * handling of active route changes. github issue #56 and issue #58 + * new combo key handling broke samsung's vendor specific remote buttons. + github issue #54 + * don't try to set controlled mode when using firmware version 1 and crash. + github issue #76 + * fix for LG models that send a vendor key up after a normal key down. + github issue #71 + * some TVs send keypresses to us without making us the active source. mark + us as active source when this happens. github issue #71 + * LG doesn't send routing changes, and marks the TV as active source when + switching to another source that's not been selected in the simplink menu + instead. this change keeps libCEC marked as powered on and keep the deck + state set to CEC_DECK_INFO_OTHER_STATUS_LG. fixes keypresses not working + after switching to another source and back to libCEC's hdmi port via the + source select menu instead of the simplink menu. github issue #71 + * don't respond with an abort message when receiving a vendor remote button + command + * respond with CEC_ABORT_REASON_INVALID_OPERAND when receiving a keypress + without a parameter + * typo in stop+pause combo key that prevented one of the keys from working + * rpi: log what data we received exactly when we receive an response from + the pi's firmware that doesn't match any command that we sent. issue #77 + * cubox: added adapter ID interface + + -- Pulse-Eight Packaging Wed, 31 Oct 2012 15:57:00 +0100 + +libcec (2.0.2-2) unstable; urgency=medium + + * fixed: + * updating the device status after a poll was broken and could reset the + status of devices that were marked as handled by libCEC to 'not + present' + * don't keep spamming the bus with a vendor command when an active source + switch is pending for panasonic, but only send it when needed + * reset CVLCommandHandler::m_bCapabilitiesSent when the TV goes to standby + + -- Pulse-Eight Packaging Mon, 15 Oct 2012 13:52:00 +0100 + +libcec (2.0.2-1) unstable; urgency=low + + * changed/added: + * missing from the previous changelog: added support for the CuBox TDA995x + credits: warped-rudi + * lower retry timeout for source switches + * cec-client: wait for the source switch to finish when cec-client is + called with the -s switch + * request the power status of the TV directly after registering a new + client + * fixed: + * don't keep trying to send 'image view on' commands to the TV when no TV + is connected, and just send the 'set active source' command. fixes source + switch and debug log spam for people without a TV connected + * don't keep waiting for an updated power status from the TV for Panasonic, + but request a status update once every 5 seconds, or we can possibly wait + forever for the tv to send it + * log what we received exactly when logging FIXME + * typo in CVLCommandHandler::VendorPreActivateSourceHook. bugzid: 1087 + * if we failed to get the physical address of the device that we are + connected to in the config, then try to use the address that was + persisted in the eeprom before resetting to the default value, 1.0.0.0. + closes #50. + * don't update the device status of unregistered/broadcast + * log all device status changes + * CCECClient::IsLibCECActiveSource returns false now while the active + source command is pending + * log failed acks and other errors in the debug log again + * don't send 'image view on' when the TV is already powering up + * reset the delayed source switch timeout properly, so we don't spam + commands every second + * don't change the device status when sending a delayed source switch + * don't send out commands to a device that is marked as not present or + handled by libCEC + + -- Pulse-Eight Packaging Thu, 11 Oct 2012 15:48:00 +0100 + +libcec (2.0.1-1) unstable; urgency=low + + * changed/added: + * added Loewe support + * added signal handlers to client applications + * Documentation updated + * replaced cec-config-gui by libCEC tray + * log the exact data for failed transmissions, not the opcode + * don't log every frame, unless debugging was enabled in ./configure or + visual studio + * changed some log levels from NOTICE to DEBUG, so the non-debugging output + is less spammy + * interface changes: + * WARNING: breaking API changes + * clean up: deprecated methods and fields removed + * callback parameters changed to fix plain C compilation + * added GetAdapterProductId()+GetAdapterVendorId()/ + cec_get_adapter_product_id()+cec_get_adapter_vendor_id() + * added iDoubleTapTimeoutMs to libcec_configuration + * remove all pre-v2.0 compatibility checks + * fixed: + * fix plain C compilation + * prevent sending directly addressed commands from being sent to broadcast + * don't wait for a response when sending a reply, so we don't block message + handling + * message response signaling and logging + * prevent double taps by not sending the same key press twice within 200ms + * fall back to the primary client when + CCECProcessor::HandleLogicalAddressLost() and no client could be found + * no more delay up to 2 seconds when exiting libCEC + * don't get caught in a loop in CVLCommandHandler when the source switch + was not allowed and no power status request was sent + * always send image view on to the tv, don't check the power status + * only respond to vendor commands for panasonic if we are the destination + * rpi: current firmware first sends a change to logical address 'broadcast' + and then signals us that the address was lost. libCEC then failed to + re-register, because it didn't know any client at this address + + -- Pulse-Eight Packaging Mon, 8 Oct 2012 21:30:00 +0100 + +libcec (1.9.1-1) unstable; urgency=low + + * changed/added: + * added the type of adapter to libcec_configuration, + and display the type in cec-client -l + * added device detection support for composite usb devices on windows. + needs the windows ddk, and it's expected to be found in + C:\WinDDK\7600.16385.1 + + * interface changes: + * adapter type was added to libcec_configuration + * moved cec_adapter_messagecode from cectypes.h to USBCECAdapterMessage.h + + * fixed: + * retry m_port->Read(..) if an EINTR errror occurs instead of closing the + connection. credits @Obruni. closes #38 + * make cec-client include cecloader.h from our project, not from system + * fixed duplicate entries check in CUSBCECAdapterDetection + * fixed missing cec_version updates in libcec_configuration + * transmit an active source message after to a device + that's handled by libCEC. closes #43 + * rpi: handle vendor specific remote control presses. closes #42 + * rpi: handle VC_CEC_LOGICAL_ADDR_LOST, sent by the Pi's firmware when + the logical address was taken while CEC was being reinitialised + * panasonic: send out an active source message when the tv started up + because it sometimes doesn't request this + + -- Pulse-Eight Packaging Wed, 5 Sep 2012 16:54:00 +0100 + +libcec (1.8.2-1) unstable; urgency=low + + * changed/added: + * p8: match to the response provided by the firmware when checking + responses (added in firmware v2 rev6) + + * fixed: + * windows: update the error message when an error occurs while writing to + the serial port + * delayed source switch time was reset, resulting in an attempt every + second until it succeeded + * ensure that the vendor commands are always sent for panasonic, and that + the deck status for lg isn't reset. fixes some buttons not working after + a second or delayed source switch + * added guard so ReplaceHandler() doesn't accidentally try to replace a + handler for the broadcast address + * wait until the commandhandler is replaced before registering a client, + so we don't register a client and replace it directly afterwards if the + tv doesn't support the device type + * ensure that the command handler of the tv is replaced before registering + a client, or it might result in a double eeprom write attempt + * p8: don't disable controlled mode when switching to monitoring mode + * p8: do delayed eeprom writes async or it'll block processing other input + + -- Pulse-Eight Packaging Tue, 3 Aug 2012 02:35:00 +0100 + +libcec (1.8.1-1) unstable; urgency=low + + * changed/added: + * added support for the Raspberry Pi. + * added cec-client -i / cec-client --info that calls GetLibInfo() + * header cleanups + * added CAdapterFactory, to create IAdapterCommunication instances + * added --debug to configure, to include -ggdb + + * interface changes: + * added GetLibInfo()/cec_get_lib_info(), that shows how libCEC was compiled + and with which features included. + * added ToString(cec_user_control_code_key) to the interface + + * fixed: + * disallow sending CEC_OPCODE_SET_STREAM_PATH - not allowed by the CEC spec + * persist the configuration in the eeprom after initialising the client. + fixes wrong/old settings being used in autonomous mode, which broke the + wake on cec function + * persist the new configuration when the hdmi port setting changed + * cleaned locks around callbacks + * always set controlled mode to false when unregistering the last client. + fixes 30 second timeout before controlled mode gets deactivated + * updated the cached device type setting properly when persisting new + settings. correct return value from WriteEEPROM(). lock a mutex when + updating the state + * LibCecSharp: set the primary LA in CecLogicalAddresses + + -- Pulse-Eight Packaging Tue, 25 Jul 2012 13:05:00 +0100 + +libcec (1.7.2-1) unstable; urgency=low + + * changed/added: + * display a warning message if libCEC was not compiled with adapter + detection for the target platform + * panasonic: added a vendor command for panasonic that will enable routing + of some more buttons on the remote (guide, text, ...) + * standby command won't be forwarded more than once every 10 seconds + * added vendor ids for Akai, AOC, Benq, Daewoo, Grundig, Medion, Sharp and + Vizio + * cec-client: don't display debug output by default in 'cec-client -l' + + * interface changes: + * added a callback for clients that is called when a source is + (de)activated, so the client can respond to this action + * added cec_command::PushArray() + + * fixed: + * command forwarding. fixes player not going into standby mode + * missing virtual keyword in CCECCommandHandler:: + GetReplacementDeviceType() + * replace the handler (if needed) in GetHandler() + * reply with abort reason 'invalid operand' to vendor commands that we + don't understand + * changed all Handle...() commands to return a cec_abort_reason and send + the correct abort reason to the initiator as a response to directly + addressed messages + * changed 'couldn't change the ackmask: the connection is closed' into a + debug message + * don't send active source commands when the physical address is invalid or + unknown + * set the power status of a device to 'powered on' after it sends a stream + path change. can save an unneeded power state update request + * removed dupe code around delayed activate source commands. check for + delayed active source commands every 5 seconds instead of 15 seconds. + * panasonic: reset m_bPowerUpEventReceived in CVLCommandHandler when the + device lets us know it went into standby mode. fixes possibly failed + active source switches after it succeeded once + * panasonic: fixed delayed source switch for panasonic + * panasonic: mark the tv as powered up once it sends the audiomode request + * set the physical address of each device controlled by a CCECClient if + it's valid + * Windows could get stuck in a loop in case there an error occurred while + reading registry entries + * ABI fixes (binary compat with v1.2 for Windows and v1.5.2 for others) + * replace the handler directly after getting the vendor id of a device when + registering a client + * copy the class member values of the old handler when creating a new + command handler, or a delayed activate source will get lost when the + handler is switched + * cec-client: wrong client version + * Makefile cleanups. don't link cec-client and cec-config against libudev + and liblockdev + * pin libcec to the same version as libcec1 + * LibCecSharp: update the local configuration after connecting + * LibCecSharp: better handling of callbacks + + -- Pulse-Eight Packaging Wed, 27 Jun 2012 02:06:00 +0100 + +libcec (1.7.1-1) unstable; urgency=low + + * changed/added: + * added physical address detection via ADL for AMD graphics cards + * attempt to get the edid from nvidia's graphics card driver on linux via + /proc/acpi/video/NGFX/HDMI/EDID + * attempt to get the PA from the registry on windows if we fail to get the + physical address from the display driver + * changed the order in CCECClient::SetPhysicalAddress() so it first checks + whether a PA override is set in libcec_configuration.iPhysicalAddress, + then checks whether the address can be detected, and if both failed it'll + use the HDMI port + base device setting + * cec-client: only active the source when reconnecting if libcec was the + active source before closing the connection + * platform: added tcp server sockets for posix + + * interface changes: + * libcec_configuration.bAutodetectAddress is now read-only, and will be set + to 1 by libCEC if the PA was autodetected + * LibCecSharp: don't use an int but a CecUserControlCode in a CecKeypress + + * fixed: + * don't unregister clients in CLibCEC when disconnecting, but only in + CCECProcessor. fixes reconnect after close + * MSGCODE_TIMEOUT_ERROR is a response to a transmission + * retry 'activate source' every 10 seconds if it failed + * don't respond with a poll from the broadcast address when receiving + in CSLCommandHandler::HandleDeviceVendorId(), but use the primary LA of + the client as source instead + * hold a lock when changing the ackmask in + CUSBCECAdapterCommunication::Open + * don't respond with a feature abort to opcode play messages. bugzid: 873 + * get the vendor id of the TV before allocating logical addresses, so we + can determine if the TV supports the requested device type directly + * TransmitImageViewOn() and TransmitActiveSource() always returned true, + even if sending the command failed, so the retry for failed source + activations was never triggered + * open libcec.so.1 instead of libcec.so in cecloader.h. credits @coling. + github issue #30. + * fixed missing firmware version and build date in cec-client -l / + GetDeviceInformation() + + -- Pulse-Eight Packaging Sun, 10 Jun 2012 13:39:00 +0100 + +libcec (1.6.1-5) unstable; urgency=low + + * synced /debian directory with the one in precise (with a couple of changes) + * changed/added: + * serial port locking on linux + * cec-client: added -m/--monitor startup options, which will start a + monitor-only client. use 'mon 0' to switch to a normal client + * display an alert message when the firmware of the adapter can be upgraded + * added CEC 1.4 opcodes + * send a feature abort again for all unhandled commands + * refactored CLibCEC so a client registers itself within CCECProcessor, + which then allocates one or more logical addresses for it. + + * interface changes: + * added a new setting, bMonitorOnly, which will start a monitor-only client + + * fixed: + * ensure that we don't crash out when trying to stop a thread that hasn't + been started yet + * don't send a 'disconnected' alert when the close method is called + * use the correct source when transmitting an abort message as a reposonse + to a vendor command with id + * removed statics + * check the client version, not the server version in + libcec_configuration::operator==() + * cec-config: fix physical address detection + * LibCecSharp: fixed buffer overrun when copying libcec_configuration. + fixes crash when trying to save the configuration in the config gui. + + -- Pulse-Eight Packaging Mon, 14 May 2012 22:39:00 +0100 + +libcec (1.6.1-2) unstable; urgency=low + + * Build depends on pkg-config. (Closes: #669919) + * libudev-dev only optionally needed for Linux. + + -- Andres Mejia Sat, 21 Apr 2012 19:03:19 -0400 + +libcec (1.6.1-1) unstable; urgency=low + + [ Mario Limonciello ] + * New upstream version (LP: #982272) + + [ Andres Mejia ] + * New release fixes build failure with GCC-4.7. (Closes: #667241) + * Bump to Standards-Version 3.9.3. + + -- Andres Mejia Sat, 21 Apr 2012 00:02:08 -0400 + +libcec (1.3.2-3) unstable; urgency=low + + * Make dpkg-source options default for packaging. + + -- Andres Mejia Tue, 10 Jan 2012 18:12:57 -0500 + +libcec (1.3.2-2) unstable; urgency=low + + * Add options to pass to dpkg-source. + + -- Andres Mejia Sun, 08 Jan 2012 22:59:34 -0500 + +libcec (1.3.2-1) unstable; urgency=low + + * Initial release. (Closes: #655143) + + -- Andres Mejia Sun, 08 Jan 2012 15:36:49 -0500 + +libcec (1.6-3) unstable; urgency=low + + * changed/added: + * cec-client: show the firmware build date if available in cec-client -l + * cec-client: don't activate the source when starting + * cec-client: group up the output of the 'scan' command, and add the + currently active source to the output + * 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. + * async writes for CUSBCECAdapterCommunication. less locks and polls, more + speed + * added 'make docs' target, that updates the doxygen documentation + + * interface changes: + * added operator == and != for libcec_configuration + * added GetResponseOpcode(cec_opcode opcode) to cec_command + * added the firmware build date to libcec_configuration, so it can be + displayed by the client too. + * added static CLibCEC::Alert() method and CEC_ALERT_CONNECTION_LOST value + * 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 + * added a default menu language to libcec_configuration and set this + language for devices controlled by libcec. bugzid: 69 + + * fixed + * CCECProcessor::IsActiveSource() - TV was never checked + * don't call the deprecated SetActiveView() method in cec-client + * request the active source if unknown in CCECProcessor::GetActiveSource() + * don't try to match a device with PA 0xFFFF. + * don't change the power status of a device when changing the stream path + * 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 + * potential segfault in CCECProcessor::GetDeviceByPhysicalAddress() + * stream path changes when changed to the TV source (PA 0) + * clear the unsupported features list in CCECBusDevice::ResetDeviceStatus() + * never mark vendor commands as unsupported (only some may be unsupported), + as well as some others that should never be marked unsupported + * don't retry in CCECCommandHandler if the command has been marked as + unsupported + * 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 + * optimisation - strip unneeded virtual keywords from top level + implementations + * 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 + * 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 + * potentially uninitialised values in cec_command + * delay the 'active source' command for panasonic, until the vendor command + that reports that the TV is powered on has been received. bugzid: 723 + * 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. + * check whether callback methods are set to a valid ptr + * number of retries for polls + * win32: fix build in paths with spaces. bugzid: 730 + * LibCecSharp: free the alert GC callback when cleaning up + * the wrong setting was being read when powering on devices + * close the connection when a comm error was detected, and notify the + client via an alert + * don't segfault when calling ThreadsWait() without a valid thread + * lib/platform: fixed memleak + * leak in CCECAdapterMessageQueue::Write + * don't send commands if we know them to be unsupported. bugzid: 725 + + -- Pulse-Eight Packaging Wed, 18 Apr 2012 11:30:00 +0100 + +libcec (1.6-2) unstable; urgency=low + + * fixed: + * fixed typo in CUSBCECAdapterCommands::RequestSettings() that prevented + the settings from being read. the settings were still written, but never + read when bGetSettingsFromROM = 1. + + -- Pulse-Eight Packaging Wed, 18 Apr 2012 11:30:00 +0100 + +libcec (1.6-1) unstable; urgency=medium + + * changed/added: + * full firmware V2 support + * -o/--osdname argument for cec-client to set a custom osd name + * added the firmware version to cec-client's -l / --list-devices command. + bugzid: 631 + * added power on command for Samsung AVR devices. bugzid: 361 + * added buttoncode for 'channels list' on Samsung (0x96) + * don't check for the windows ddk when a prebuilt driver installer is + present + * respond to Get Menu Language. bugzid: 547. In the event that the menu + language is undefined in libcec (currently the default), the response + will be a feature abort. + + * interface changes: + * added the firmware version to libcec_configuration (read-only). bumped + server version to 1.6.0. fixed 'unknown server version' message on + startup. bugzid: 631 + * added a new setting to control whether to put the TV in standby when the + player is put in standby. added some missing bits (version numbers, + config) to LibCecSharp. bugzid: 558 + * added an alert callback. bugzid: 462 + * added bShutdownOnStandby to libcec_configuration. bugzid: 660. This + setting tells the client to shutdown when the TV switches off and is + complimentary to bPowerOffOnStandby, which tells the PC to suspend. + They are kept separate to maintain backwards compatibility. + + * fixed + * gcc 4.7 compilation + * poll doesn't have an opcode. bugzid: 591 + * wait for MSGEND when data was received when opening the connection. + bugzid: 536 + * mark the correct device as active source after a stream path change. + if the new address is not found, but the old address is, then mark the + old address as inactive. fixes TV switching back to the old active source + when it scans for devices. bugzid: 592 + * ensure that the vendor ID is sent before trying to activate any SL device + bugzid: 574 + * fixed possible crash when in CLibCEC::IsLibCECActiveSource() when libCEC + doesn't know which device is the active source. bugzid: 479 + * correct handling CEC_USER_CONTROL_CODE_POWER. This ensures that the power + code always operates as a toggle, depending on the current state, and + that SetCurrentButton is always called for a valid user control code. + bugzid: 570 + * frequency wasn't checked in GetTimeMs(), leading to incorrect wait times + on some windows systems + * refactored USB adapter communication. less locks, shorter locks, added + documentation, lots of clean ups and no more incoming messages that are + skipped + * the destructor of CSerialSocket didn't call Close() + * added guards in CSerialPort + * reset m_socket to INVALID_SERIAL_SOCKET_VALUE after closing the + connection + * always wait for thread exit in CThread's desctructor + * crash on exit after GetDeviceInformation() + * check whether the destination is valid before setting anything in + m_bWaitingForAck. fixes heap corruption and crash on exit. bugzid: 479 + * bUseTVMenuLanguage from libcec_configuration wasn't copied in + SetConfiguration(), so this setting was reset to the default value + (enabled) every time. bugzid: 617 + * request the vendor id of a device if needed when the device status is + changed into 'present'. bugzid: 361 + * give priority to messages from the TV. removed the global lock in + CCECProcessor when sending. this is no longer needed. bugzid: 238 + * add some bounds checking to the HDMI port number. bugzid: 508 + * fixed usbser.sys copying in the driver .INF. bugzid: 503 + * only update the physical address when it has actually changed. bugzid: + 672 + * moved the static variables in os-threads from the header to a separate + cpp file, or it could lead to problems when included multiple times + * don't send an active source command when the physical address couldn't be + set, or it might confuse other CEC devices + * serial socket timeouts. bugzid: 654 + * fixed possible crash when trying to request a vendor id of a device when + the address of libCEC isn't known yet. bugzid: 654 + * extra guard so no commands are transmitted without a valid initiator. + bugzid: 654 + * moved the timed ping to a separate thread. bugzid: 654 + * persist settings directly when they're changed, only persist settings + that actually changed, only instruct the device to persist the settings + in eeprom when something changed, and don't persist settings on exit. + bugzid: 715 + * cec-config-gui: persist settings both in the eeprom and in the settings + xml file + * validate the input in CCECProcessor::IsActiveSource(). fixes potential + crash when the active source isn't known. bugzid: 671 + + -- Pulse-Eight Packaging Mon, 16 Apr 2012 18:03:00 +0100 + +libcec (1.5-4) unstable; urgency=low + + * changed/added: + * OS-X installation requirements and pointer + * full v2 firmware support: + * ping the adapter every 15 seconds. bugzid: 541 + * added v2 msgcodes. bugzid: 543 + * implemented the write methods for the v2 configuration. bugzid: 543 + * included the logical addresses in the persisted configuration for v2. + bugzid: 543 + * persist the configuration before closing the connection. only try to + persist the configuration when talking to a v2 firmware. bugzid: 543 + * added GetSetting() to CUSBCECAdapterCommunication. bugzid: 543 + * read the persisted settings from the ROM, and update it in + libcec_configuration if found. bugzid: 543 + * cec-client: set bGetSettingsFromROM to 1 in cec-client. bugzid: 543 + * cec-client: only read persisted EEPROM settings when -r or --rom is + provided as cmdline arg. bugzid: 543 + * call SetControlledMode(false) as last command when closing the + connection in v2. bugzid: 542 + * initial FreeBSD support: simply try to use ttyU* + + * fixed: + * set controlled mode and retry to send the previous command if it failed + with MSGCODE_COMMAND_REJECTED + * m_iLineTimeout was never initialised and used. fixes MSGCODE_REJECTED + when transmitting a message and incorrect line timeouts being used + * mac configure compile bugzid: 157 + * cec-config-gui: fixed application exit when the user clicked 'no' when + asked to reconnect. bugzid: 556 + * only wait for multiple 'command accepted' response when sending a + transmit command, and only to 1 in other cases. bugzid: 543 + * set the correct logical address mask before switching to autonomous mode. + bugzid: 543 + * re-added SetLineTimeout(). bugzid: 543 + * CUSBCECAdapterCommunication::SetControlledMode checked for the wrong sent + state + * os-x: don't add 0.5 before dividing in GetTimeMs() + * os-x: struct timespec now values weren't set correctly + + -- Pulse-Eight Packaging Fri, 16 Mar 2012 10:12:00 +0100 + +libcec (1.5-3) unstable; urgency=low + + * fixed: + * OS-X compilation + * default to firmware version 1 after 3 tries. some versions didn't send a + version. + * fixed cec-config win32 compilation + + -- Pulse-Eight Packaging Sat, 03 Mar 2012 15:21:00 +0100 + +libcec (1.5-2) unstable; urgency=low + + * changed/added: + * added Toshiba's vendor id, and set the device ID of the primary device to + Toshiba's and transmit it when starting + * lock in SyncedBuffer + * added a timeout to StopThread() + * also add commands to unsupported features when receiving + CEC_ABORT_REASON_REFUSED + * cec-config-gui: set cbPortNumber enabled when the physical address + override isn't checked instead + * cec-config-gui: added support for the new 'send inactive source' setting + + * interface changes: + * added an 'send inactive source' option to libcec_configuration, only + supported by client/server 1.5.1 and up. bugzid: 439 + * added a command to the interface to start the bootloader directly, + without going through all checks. bugzid: 218 + * LibCecSharp: implemented support for the new 'send inactive source' + setting + + * fixed: + * don't send an updated configuration when libCEC hasn't been initialised + fully. bugzid: 459 + * don't send an updated configuration back when initialising. let the + client call the GetCurrentConfiguration() method. bugzid: 459 + * configuration updates from libCEC. bugzid: 459 + * fixed accidental double deref. the method parameter already does that. + github #24 + * use CLOCK_MONOTONIC for timing info, since gettimeofday is affected by + ntp and by manually adjusting the system time + * the timeout value of pthread_cond_timedwait has to be referenced to + CLOCK_REALTIME + * don't add data to the input buffer in CUSBCECAdapterCommunication before + it's fully initialised + * fixed return value of CUSBCECAdapterCommunication::ParseMessage(). fixes + messages not being parsed in certain occasions + * don't try to transmit when the processor is being stopped + * set the server version in the LibCEC's constructor, since this is + checked by clients. fixes 'invalid libCEC version' popup when inserting + the adapter + * don't wait for the full timeout to pass in CCECProcessor:: + OpenConnection(), but retry to connect 2 times. fixes 'port busy' errors + when initialising libCEC. bugzid: 436 + * use the correct Sleep() method in CCECProcessor::OpenConnection(). the + thread hasn't been started there yet, so the sleep wasn't working. fixes + 'device or resource busy' when plugging in the adapter. bugzid: 436 + * check the adapter ping and firmware before starting the reader thread, so + we really leave the com port alone for a second when it fails because of + a busy error. bugzid: 436 + * ensure that the connection is really closed before retrying to connect. + bugzid: 436 + * LibCecSharp: recreate the delegates properly when (re)connecting to + LibCecSharp + + -- Pulse-Eight Packaging Tue, 28 Feb 2012 21:19:00 +0100 + +libcec (1.5-1) unstable; urgency=low + + * changed/added: + * a new libcec_configuration structs, which allows the client app to pass + a number of new options, like waking multiple devices on startup, + overriding the vendor id, etc. + * a new configuration GUI for Windows (.NET). this allows you to set + libCEC's configuration for XBMC in a convenient GUI. + * a CLI configuration tool (unfinished) for other platforms. will be + finished in an update. + * implemented power up for LG devices other than a TV + * win32: don't install libcec to the system directory by default, and + delete previous (testing) copies if present + * wait for multiple responses, not just for one at a time + * set the ackmask to 0 when closing the connection + * don't send 'image view on' when calling SetActiveSource() + * don't send power on, acitve source and standby commands by default in + cec-client + * platform: added CTryLockObject + * platform: added an Init() method in CTimeout, so it can be reset + + * interface changes: + * added a new initialiser method: CecInitialise()/cec_initialise(), that + accepts a "libc_configuration" struct as parameter. this way, the + signature of the init method can stay the same when adding new options. + in LibCecSharp, the new method appears as a new constructor. + * added CanPersistConfiguration()/cec_can_persist_configuration() + * added PersistConfiguration()/cec_persist_configuration() + * added GetCurrentConfiguration()/cec_get_current_configuration() + * added SetConfiguration()/cec_set_configuration() + * added GetLogicalAddresses()/cec_get_logical_addresses(): returns the list + of addresses controlled by libCEC + * added RescanDevices()/cec_rescan_devices(): lets libCEC force polls to + all logical addresses. + * added a callback that is called when libCEC's configuration changed. + * moved the autodetect address api call to libcec_configuration. only send + power up commands to non-tv devices when the power state is not + on/transition->on. let players call the power up/power down command. + * return the anynet return keycode directly instead of translating it to + 'return' for v1.5.0+ clients + * extracted CecSharpTypes.h in LibCecSharp. LibCecSharp is now in the + CecSharp namespace + * include the local cectypes.h in cec.h and cecc.h instead of system wide + * deprecated GetLibVersion() methods. use libcec_configuration instead + * removed deprecated CECCreate() method + + * fixed: + * fixed a lot of LG specific issues + * fixed OS-X compilation. credits: Dustin Cooper + * fixed a couple of possible deadlocks, e.g. when closing the connection + while receiving data + * cleaned up existing code + * libCEC no longer puts incoming data in a fifo buffer, but tries to + process it directly, which fixes issues like libCEC blocking processing + new commands while waiting for transmission acks. + * 'unsupported command' marking in CCECBusDevice + * ensure that the ackmask is always set to 0 when closing the connection + and that the call doesn't block the Close() call + * don't try to read or write in CUSBCECAdapterCommunication when the + connection has been closed + * LibCecSharp: added quotes to the linker statement for libcec.lib. fixes + compilation in paths with spaces. closes #20 + * LibCecSharp: set the callback methods in libcec to NULL before closing + the connection, since these might already have been destroyed in .NET + * LibCecSharp: delete the internal callback struct when closing the + connection + * LibCecSharp: pass correctly formatted logical address lists + * ensure that the vendor id is requested first when requesting info from a + device, so we are using the correct handler + * keep the 'busy state' of the command handler in CCECBusDevice + * poll the next device when the current is handled by libCEC. + * check the vendor id of a device before sending a power on command + * ensure that there always is at least one device type set + * transmit a keypress and key release as power on command when the target + device isn't the TV + * don't do a full reinit when not needed + * fix active source switches for the standard CEC implementation + * ensure that we don't send data to ourself + * check whether the port is open, not whether libCEC is initialised in + Transmit() + * platform: fixed return value from CCondition::Wait() + * platform: don't broadcast but wake one thread in + CProtectedSocket::MarkReady() + * platform: include stdint.h in windows/os-types.h instead of typedef'ing + ints + * platform: fixed tcp socket error handling and return value. + * platform: fixed return values of socket operations in lib/platform + * platform: added predicate in CCondition + * deleted the signed driver from the tree, since that doesn't work. let the + installer create a new signed driver on the production build system + + -- Pulse-Eight Packaging Mon, 19 Feb 2012 01:04:00 +0100 + +libcec (1.4-4) unstable; urgency=low + + * changed/added: + * added tcp client sockets to lib/platform (WIP) + * clean up lib/platform + * added: set controlled mode on after opening a connection to the adapter + (for firmware v2) + * added an IAdapterCommunicationCallback interface an use a callback method + to pass newly received cec_commands to CCECProcessor + * added "driver only" and "driver + libcec" sections to the installer + * added a signed driver + * created a separate driver installer, which is included in the libCEC + installer. uninstalls the old unsigned version of libCEC and the driver + when it's found and installs the new one in C:\Program Files(x86)\ + Pulse Eight\USB-CEC Adapter. + * don't sign development binaries with a temporary key. devs can do that + themselves when they want LibCecSharp in the GAC + * interface changes: + * added SetStreamPath()/cec_set_stream_path_logical()/ + cec_set_stream_path_physical() to the interface, to send a + "set stream path" command over the CEC bus, used to activate another + source. + * fixed: + * transmit 'menu state activated' after the stream path has been set to a + device that is handled by libCEC. should fix remote commands not working + properly on Panasonic TVs and after another source has been active. + bugzid: 233 + * set the ackmask to 0x0 when trying to find a free logical address + * keep trying to reconnect to the com port until the timeout runs out. + bugzid: 230 + * wait 500 ms before trying to retransmit a command. always wait for the + result of a transmission in CCECCommandHandler::Transmit() + * receive and send full cec_commands, not CCECAdapterMessages in + CAdapterCommunication. extract an IAdapterCommunication interface. fixed + potentially missed data in CAdapterCommunication + * close and delete the connection when the processor thread ends. fixes + reconnect after standby (access denied / connection already opened) + * don't replace handlers when not initialised, or the primary device's + logical address isn't known yet, which can lead to crashes. don't call + handlers directly in CCECProcessor without holding a lock on them + * fixed possible crash when command handler were switched while it was + being used + * keep the mutex locked when calling ReplaceHandlers() in CCECProcessor + * win32: also timeout when data is received in SocketRead() + * win32: fixed < vista runtime and compilation + * win32: ping the adapter and request the firmware version in + CUSBCECAdapterCommunication instead of CCECProcesssor. fixes failed + libCEC inits + * win32: fixed crash on exit in LibCecSharp + + -- Pulse-Eight Packaging Mon, 6 Feb 2012 14:26:00 +0100 + +libcec (1.4-3) unstable; urgency=low + + * fixed: + * try to ping the device and grab the firmware version until the connect + timeout runs out. fixes failed reconnect after standby, when the adapter + is still being initialised + + -- Pulse-Eight Packaging Thu, 27 Jan 2012 13:05:00 +0100 + +libcec (1.4-2) unstable; urgency=low + + * changed/added: + * added a firmware flash script for linux. + usage: ./support/cec-flash-device.sh /path/to/firware.hex + * refactored threading/locking - added windows native instead of + pthread-win32, so we can compile native x64 too + * check whether the adapter responds when connecting to it and report the + firmware version of the adapter after connecting + * moved create-installer.cmd to support/ + * completely removed AM_SILENT_RULES + * interface changes: + * compile LibCecSharp against .NET framework 2.0 and sign the assembly + * fixed: + * only the key release events were sent, not keypresses, which appeared in + clients as laggy keypresses + * fixed reconnect after standby + * wait for active tranmission to finish when opening a connection to the + adapter. fixes initialisation errors + * set the default transmit timeout properly instead of using 0 + * fixed possible deadlock because of a negative timeout in + CAdapterCommunication::WaitForTransmitSucceeded() + * fixed error message in cec-client (unable to open the device on port ...) + * exit cec-client after entering bootloader mode + * MSGCODE_START_BOOTLOADER doesn't respond with MSGCODE_COMMAND_ACCEPTED + + -- Pulse-Eight Packaging Thu, 25 Jan 2012 23:28:00 +0100 + +libcec (1.4-1) unstable; urgency=low + + * changed/added: + * added the vendor id for Sony + * always refresh the power state of a device when it hasn't been updated + for 30 seconds + * do silent builds by default + * interface changes: + * added optional callback methods to libCEC. enable them by calling + EnableCallbacks(ICECCallbacks *callbacks) / + cec_enable_callbacks(ICECCallbacks *callbacks). after this method is + called, the GetNext...() methods will not return any data + * added the same callbacks to LibCecSharp. implement CecCallbackMethods + and override the methods in there + * fixed: + * use the given timeout when trying to open a connection to the CEC + adapter + * resolved difference between method name in LibCECC.cpp and cecc.h. + credits: Doug Johnson + * don't transmit physical addresses while holding a lock in CCECProcessor + * don't hold a lock when sending an active source message. + * unload libCEC when the lib version is invalid + * "unused" warnings suppressed + + -- Pulse-Eight Packaging Thu, 12 Jan 2012 19:06:00 +0100 + +libcec (1.3-3) unstable; urgency=low + + * changed/added: + * place in libudev include in an extern C block. fixes compilations on + older libudev versions (e.g. on Hardy). closes #2. credits @fbuenemann + * added pkg-config to the dependencies list. issue #15 + * updated README. closes #14 + * added a script that tests some basic functions of the CEC adapter: + /support/cec-test-device.sh + * fixed: + * don't make libCEC the active source when changing the physical address. + don't send active source messages on startup, when not the active source + fixes unwanted device power ups + * replace the command handler directly after receiving a changed vendor + id. change the primary type from recording device to playback device + for panasonic TVs + * don't send a deck status update when sending an active source message + for panasonic TVs + * only switch handlers once when using the generic handler + * don't switch handlers when not needed + * hold a lock in CCECProcessor::SetHDMIPort() + * don't send deck status updates when sending an active source message by + default + + -- Pulse-Eight Packaging Thu, 3 Jan 2012 22:48:00 +0100 + +libcec (1.3-2) unstable; urgency=low + + * changed/added: + * copy libcec.dll to the XBMC installation dir when XBMC is found + * disable background polling. let the client request this info when needed + * update the power status of a device when it's set to + CEC_POWER_STATUS_IN_TRANSITION_STANDBY_TO_ON + * wait for the correct response when requesting something, not just any + response + * don't keep trying the same command/request after receiving a feature + abort message + * interface changes: + * change the previously unused boolean parameter in volume control methods + to bSendRelease, and only send a key release when it's true. default to + true + * fixed: + * don't send the power up/down keypress to listeners when in the initial + device state (powered off). fixes unexpected shutdown in XBMC when + connecting to the CEC adapter. + * send a 'menu state activated' command when starting up. bugzid: 113 + * don't wait for a response when not needed + * don't hold a lock while waiting for a response. fixes failed libCEC + inits and slow responses + * don't replace a command handler when it's being used. fixes possible + crash on startup + * don't try to do anything before the processor thread has started + * don't transmit active source messages when the physical address is + still 0xFFFF + * don't init the default handler before the physical address is known + + -- Pulse-Eight Packaging Thu, 29 Dec 2011 03:05:00 +0100 + +libcec (1.3-1) unstable; urgency=low + + * changed/added: + * make libudev optional. if libudev is not available on linux, adapter + autodetection will also not be available. fixes compilation on Hardy/ATV1 + * added a C++ CLR wrapper for libCEC, so libCEC can be used by any .NET + language + * added vendor support for LG + * added vendor support for Philips + * added vendor support for Yamaha + * added vendor support for Onkyo + * added 'scan' command to cec-client, that displays info about devices on + the bus. made all ToString() methods available on the interface. + * added '-s' or '--single-command' to cec-client. starting cec-client with + this parameter executes a single command in cec-client and does not power + on devices on startup and power them off on exit. this way, you can use + cec-client in a shell script. since there's some handshaking involved at + startup, this is not very fast. to execute a command and only display the + result and any error/warning, execute it with + RESULT=`echo command | cec-client -s -d 3` (on linux/osx, win32 batch + files are a bit different) + * added HDMI port ('-p' or '--port') and base device ('-b' or '--base') to + cec-client's parameters + * handle image view on and text view on + * handle routing information and report physical address opcodes + * handle audio status updates + * send ping and bootloader commands via the output queue + * scan the CEC bus for devices when starting libcec + * pass all commands that are directed at libcec to listeners + * interface changes: + * added GetActiveSource()/cec_get_active_source() + * added IsActiveSource()/cec_is_active_source() + * added GetDevicePhysicalAddress()/cec_get_device_physical_address() + * added GetDeviceOSDName()/cec_get_osd_name() + * added SendKeypress()/cec_send_keypress() and SendKeyRelease()/ + cec_send_key_release() + * added VolumeUp()/cec_volume_up(), VolumeDown()/cec_volume_down(), + MuteAudio()/cec_mute_audio() + * added GetActiveDevices()/cec_get_active_devices(), IsActiveDevice()/ + cec_is_active_device(), IsActiveDeviceType()/cec_is_active_device_type(). + * added SetHDMIPort()/cec_set_hdmi_port(). devices are now detected on load + and when a device with the same physical address is detected, libcec will + use the selected hdmi port on that device. should fix source selection on + other devices, like an amplifier + * added a hook in libcec for physical address autodetection + * fixed: + * don't request the physical address from the tv (it's always 0x0000) + * set the proper ackmask before doing anything else + * don't unlock the transmit mutex in CCECProcessor while waiting for an + answer + * fix device polling + * refactor CEC read/write. keep a single lock for all writes, not one per + device + * ignore other data while waiting for a response + * retry failed tranmissions + * don't delete a message before it's been sent when starting the bootloader + * or when sending a ping + * fixed possible segfault when switching the command handler after a vendor + * id changed + * handle audio opcodes correctly + * inactive source should be directly addressed at the TV + * don't report a changed physical address when it hasn't changed + * routing information sets the stream path, not the physical address + * don't scan the whole bus in CCECProcessor::IsActiveDeviceType() + * don't request the vendor id from devices that are handled by libcec + * mark device status as present when a command was received from a device + * always send a power on command in CCECBusDevice::PowerOn() + * don't request updates statusses unless needed + * report physical address sends 3 parameters, not 2. check whether the + device type is correct + * devices can send vendor commands from other vendors, so don't assume the + device is of a certain vendor when it sends commands with a vendor id + * thread safety fixes. bugzid: 19 + * clear any previous input when opening a connection to the adapter. + bugzid: 54 + * use the correct source address in CSLCommandHandler::HandleVendorCommand() + * uncorrected CEC_OPCODE_DEVICE_VENDOR_ID. closes #5 + * renamed enum methods. fixes potential macro collision with isset(). + thanks davilla + * don't change the active device when receiving stream path changed + messages. fixes wrong source selection when powering after the TV. + + -- Pulse-Eight Packaging Fri, 09 Dec 2011 12:16:00 +0100 + +libcec (1.2-1) unstable; urgency=low + + * bugfixes: + * pass the deck_control command to libcec listeners + * check whether the initiator is valid in CCECProcessor::ParseCommand(). + fixes possible segfault when parsing invalid data + + -- Pulse-Eight Packaging Sat, 12 Nov 2011 13:36:00 +0100 + +libcec (1.1-3) unstable; urgency=low + + * fixed return value in CCECProcessor::SetStreamPath(), which prevented + active source and menu state from being sent + + -- Pulse-Eight Packaging Fri, 11 Nov 2011 23:36:00 +0100 + +libcec (1.1-2) unstable; urgency=low + + * forgot to update the headers to v1.1 + + -- Pulse-Eight Packaging Fri, 11 Nov 2011 18:56:00 +0100 + +libcec (1.1-1) unstable; urgency=low + + * interface changes: + * added logical address autodetection and let libcec handle multiple types + simultaniously. for logical address autodetection, you have to use + CECInit()/cec_init_typed() instead of CECCreate()/cec_init() + * added SetActiveSource()/cec_set_active_source() to the interface. + deprecated SetActiveView()/cec_set_active_view() + * added SetMenuState() + * added PollDevice()/cec_poll_device() + * removed duplicate method SetActiveSource() / SetActiveView() + * added SetDeckControlMode() and SetDeckInfo() + * fixed: + * added vendor detection for panasonic and broadcast active view and set + menu state when a panasonic device sets the stream path. thanks for the + pointer cptcoconut. + * added vendor code for pioneer + * osd string is 13 chars max. don't send more + * send the correct cec version for each device + * switch to panasonic specific cec implementation if a panasonic device was + detected + * send the correct device type in TransmitPhysicalAddress() + * send a reply from the correct device when the stream path is requested + * opcode 0x80 means the stream path changed, not the physical address + * don't poll for a vendor ID in monitoring mode + * fixed parameter parsing in SetVendorId() + * buffer up commands that are received while waiting for an ack. only send + 'active source' message for the actual active source + * win32: prepend the com port path with '\\.\', so com ports > 9 can be + accessed. thanks smolesen + * audio systems cannot be an active source, so don't transmit active + source message from this device + * only send 'active source' when powered on + * only set the osd name for the primary device. use default values for + others + * increase physical address with 0x100 per device + * win32: removed unneeded afxres.h include in the resource files, which + is not present when using studio express. thanks Ghuron + * fixed C headers + * mark the active source as active and other devices as inactive + * set the power status to 'on' when receiving CEC_USER_CONTROL_CODE_POWER + * transmit the menu state as (active) when the stream path is set + * changed: + * changed copyright of boblight files with permission of the original + author + * partial handling of audio related opcodes + * more consistent log messages + * set a device type and name for each CCECBusDevice + * keep a power and menu state per device + * renamed all Broadcast...() and Report...() methods to Transmit...() + * renamed SetOSDString() to TransmitOSDString() + * changed debug level of 'did not receive ack' from error to debug + * only set the power status to 'on' for the primary device + * moved method decriptions from cecc.h to cec.h + * only send a power on command when a device isn't on already and set + the power state to CEC_POWER_STATUS_IN_TRANSITION_STANDBY_TO_ON while + powering on + * handle CEC_OPCODE_STANDBY + * handle CEC_OPCODE_ACTIVE_SOURCE + * always start in standby mode and let the tv (or other device) send the + power on command + * renamed the last few enums + * handle deck related opcodes. + * added TransmitVendorId(), but only transmit the id if it's not set to 'unknown' + + -- Pulse-Eight Packaging Fri, 11 Nov 2011 17:42:00 +0100 + +libcec (1.0-1) unstable; urgency=low + + * interface changes: + * set lib interface version back to 1.0 and rename GetLibVersion() to + GetLibVersionMajor() and GetMinVersion() to GetMinLibVersion() + * added GetLibVersionMinor()/cec_get_lib_version_minor() and set the minor + version number to 1 + * fixed: + * samsung's vendor specific remote keypresses don't send key releases. added + call to AddKey() directly after the keypress + * always reset the button press time in CLibCEC::AddKey() + * always wait for a signal in CCECProcessor::Transmit() + * changed: + * drop shared_ptr and use a normal pointer. removed boost dependency + + -- Pulse-Eight Packaging Fri, 04 Nov 2011 00:14:00 +0100 + +libcec (0.8-2) unstable; urgency=low + + * added 'libboost-dev' to build deps + + -- Pulse-Eight Packaging Tue, 01 Nov 2011 23:31:00 +0100 + +libcec (0.8-1) unstable; urgency=low + + * interface changes: + * added GetDevicePowerStatus()/cec_get_device_power_status() + * added GetDeviceVendorId()/cec_get_device_vendor_id() + * added GetDeviceMenuLanguage()/cec_get_device_menu_language() + * added GetDeviceCecVersion()/cec_get_device_cec_version() + * added SwitchMonitoring()/cec_switch_monitoring() to the interface. when + monitoring is enabled, the device will only log the data it received, + but will not respond to any message + * removed timeout parameter in Transmit() and included the ack timeout in + the cec_command struct + * made the vendor id -> vendor name translation available + * made CEC_LOG levels powers of 2 + * introduced CEC_LOG_TRAFFIC log level + * fixed: + * set the correct ackmask on startup + * wait for ack while keeping a lock + * wait for the processor thread to start before continuing on startup + * wait for messages to be transmitted before continuing in + CCECProcessor::Transmit() + * only set the logical address once when it has changed + * correct source for broadcast messages + * win32: create Release type installer + * changed: + * make all reads and write in CAdapterCommunication go through buffers. + * poll for a vendor ID of connected devices and switch to a non-standard + CEC implementation if needed. + * added vendor detection of Samsung and LG devices + * handle samsung remote command 'return' + * cec-client: + * added -la and --logical-address to the command line params + * added -d and --log-level params to cec-client + * added -sf and --short-log-file, which only log the actual messages, not + the level and timestamp + * added -f and --log-file parameters to cec-client + * added option to change the log level to cec-client + + -- Pulse-Eight Packaging Tue, 01 Nov 2011 22:58:00 +0100 + +libcec (0.7-1) unstable; urgency=low + + * send a keypress with 0 duration when a key is pressed and with a duration + set when it's released + * added SetOSDString() to the interface (not supported by all tvs) + * fixed: 'routing change' is a broadcast message. log routing changes, but + don't send a 'set active view' message, so the active input won't be + changed + * log keypresses in the debug log + * added 'pa' command to cec-client, to change the physical address + * added SetPhysicalAddress()/cec_set_physical_address() to the interface, so + the HDMI port number to use can be changed + * fixed: put the message processing code from WaitForAck() in ParseMessage(). + fixes missing incoming message logging of non-data messages when not + waiting for an ACK + * added 'txn' command to cec-client. same as 'tx', but doesn't wait for ACK + before returning + * fixed: set initiator and destination first in cec_command::push_back(). + fixes 'tx' command in cec-client + * fixed: keep trying to connect while iTimeout isn't reached (default 10 + seconds). fixes exit with a 'permission denied' error when the device isn't + ready yet. remove CEC_SETTLE_DOWN_TIME + * fixed: don't call SetActiveView() when reporting the power status. fixes + loop which causes some TVs to report failed connections + * fixed: eom was not being parsed when receiving MSGCODE_FRAME_DATA. fixed. + * fixed: add the device type as parameter when sending the physical address. + thanks bobo1on1 + * fixed: typo in libcec.pc.in + * added optional strLib parameter to LoadLibCec(), so the location of the + shared library can be specified + * only link cec-client against ld. use AC_SEARCH_LIBS instead of AC_CHECK_LIB + * use int instead of bool on the public C interface and remove stdbool.h include + * renamed: CECExports.h => cec.h, CECExportsC.h => cecc.h, CECLoader.h => + cecloader.h, CECTypes.h => cectypes.h + * updated debian package. split up libcec and libcec-dev + * fixed: changed to use dlopen instead of static linkage. shuffled headers a + bit. bumped interface to version 7 + * removed 'rt' from libraries. it's not needed (anymore) + * fixed: reset the active view after a routing change. issue #1 + * fixed: changed attached license to be GPLv2 instead of GPLv3 this was an + error as libCEC is licensed GPLv2 not GPLv3 thanks @garbear + * added contributors link + + -- Pulse-Eight Packaging Fri, 14 Oct 2011 17:34:00 +0200 + +libcec (0.6-1) unstable; urgency=low + + * bumped interface version to 6 + * fixed packet output (reporting the OSD name correctly now) + * refactored packet structs: split up in cec commands and adapter messages + * fixed i/o timings + * added Darwin support (thanks Davilla!) + * fixed WaitForAck() + * fixed possible deadlock when starting a new thread + * implemented vendor id and device class parsing. full detection will follow + * added "on" and "standby" commands to the test client + * retransmit packets if needed + * fix GetTimeMs() on linux + * added timestamp to log messages + + -- Pulse-Eight Packaging Sun, 09 Oct 2011 15:15:00 +0200 + +libcec (0.5-1) unstable; urgency=low + + * bumped interface version to 5 + * don't pass std::string and std::vector across the interface + * fixed heap corruption crashes on windows + * fixed some memory leaks + * reset all structs to default values before doing with them + + -- Pulse-Eight Packaging Fri, 07 Oct 2011 22:00:00 +0200 + +libcec (0.4-3) unstable; urgency=low + + * fixed reconnect + * fixed some threading related bugs + * fixed deadlock on exit + * fixed wrongly reported physical address + + -- Pulse-Eight Packaging Thu, 06 Oct 2011 00:19:00 +0200 + +libcec (0.4-2) unstable; urgency=low + + * fixed int parameter sizes and some signed/unsigned warnings + * check whether m_port isn't NULL in ReadFromDevice + * stop the processor thread and delete the CSerialPort instance on exit + * added mutex in CSerialPort + * fix segfault on exit + * renamed libPlatform -> platform. + * stuck everything from libCEC in the CEC namespace to avoid namespace + pollution + + -- Pulse-Eight Packaging Tue, 04 Oct 2011 23:45:00 +0200 + +libcec (0.4-1) unstable; urgency=low + + * bumped interface version to 4 + * timeout parameter removed from Close()/cec_close(). return type changed to + void + * added cec_destroy() method + * removed timeout parameter from Transmit() + * change the default argument of PowerOnDevices() to CECDEVICE_TV + * removed PowerOffDevices(). use StandbyDevices() instead + * removed obsolete methods from the interface + * fixed bug: pthread_cond_wait was called without the mutex locked + * fixed possible deadlock: don't send messages and wait for an ack with the + mutex locked in CCECParser + * created a separate reader thread and fixed the 'lock timeout' bug + * testclient: use CECDEVICE_TV instead of the default argument + (CECDEVICE_BROADCAST) for PowerOnDevices() and PowerOffDevices() + + -- Pulse-Eight Packaging Tue, 04 Oct 2011 00:48:00 +0200 + +libcec (0.3-1) unstable; urgency=low + + * added device detection support for Windows + + -- Pulse-Eight Packaging Sun, 02 Oct 2011 12:09:33 +0200 + +libcec (0.2-1) unstable; urgency=low + + * added a Close() method to the interface + * Added CEC command that were received by the adapter in a buffer that can be + read by a client with GetNextCommand()/cec_get_next_command(). added a + 'help' command to the test client, that displays all available commands + * Fixed setting the ackmask. deprecated SetAckMask()/cec_set_ack_mask(). use + SetLogicalAddress()/cec_set_logical_address() instead. add 'la' command to + the testclient to set the logical address of the cec adapter + * Added optional logical and physical address parameters to + LoadLibCec()/cec_init() on the interface. fixed wrongly placed namespace + close tag in CECExports.h. updated interface documentation. bumped + interface version to 2. + * fixed hardcoded ackmask in SetAckMast(). set a shorter display name in the + test client. the previous one was too long and being rejected + + -- Pulse-Eight Packaging Fri, 28 Sep 2011 01:33:00 +0200 + +libcec (0.1-1) unstable; urgency=low + + * Initial release v0.1 + + -- Pulse-Eight Packaging Wed, 28 Sep 2011 23:55:48 +0200 diff -Nru libcec-4.0.1+dfsg1/debian/control libcec-4.0.2.1~artful/debian/control --- libcec-4.0.1+dfsg1/debian/control 2017-01-18 08:16:30.000000000 +0000 +++ libcec-4.0.2.1~artful/debian/control 2017-01-28 22:54:36.000000000 +0000 @@ -1,47 +1,39 @@ Source: libcec -Maintainer: Sjoerd Simons -Uploaders: Balint Reczey Section: libs Priority: optional -Build-Depends: debhelper (>= 9), - g++ (>= 4:5.2), - pkg-config, - libudev-dev [linux-any], - libp8-platform-dev, - python-dev, - dh-python, - cmake (>= 2.8.9), - swig, - libxrandr-dev, - x11proto-core-dev, - libncurses5-dev -Standards-Version: 3.9.8 -Vcs-Browser: https://anonscm.debian.org/cgit/collab-maint/libcec.git -Vcs-Git: https://anonscm.debian.org/git/collab-maint/libcec.git +Maintainer: Lars Op den Kamp +Build-Depends: debhelper (>= 7), + pkg-config, + libudev-dev, + libp8-platform-dev, + python-dev, + cmake (>= 2.8.9), + swig, + libxrandr-dev, + x11proto-core-dev, + libncurses5-dev +Standards-Version: 3.8.4 Homepage: http://libcec.pulse-eight.com/ +Vcs-Git: git://anonscm.debian.org/collab-maint/libcec.git +Vcs-Browser: http://anonscm.debian.org/gitweb/?p=collab-maint/libcec.git -Package: libcec-dev +Package: libcec4-dev Architecture: any Section: libdevel Depends: libcec4 (= ${binary:Version}), ${misc:Depends} -Description: USB CEC Adaptor communication Library (development files) - This library provides support for the Pulse-Eight USB-CEC adapter and - other CEC capable hardware, like the Raspberry Pi. +Description: libCEC communication Library (development files) + This library provides support for the Pulse-Eight USB-CEC adapter. . This package provides the necessary files needed for development. Package: libcec4 Architecture: any Multi-Arch: same -Depends: ${shlibs:Depends}, - ${misc:Depends} Pre-Depends: ${misc:Pre-Depends} -Breaks: libcec4v4 -Replaces: libcec4v4 -Description: USB CEC Adaptor communication Library (shared library) - This library provides support for the Pulse-Eight USB-CEC adapter and - other CEC capable hardware, like the Raspberry Pi. +Depends: ${shlibs:Depends}, ${misc:Depends} +Description: libCEC communication Library (shared library) + This library provides support for the Pulse-Eight USB-CEC adapter. . This package provides the shared library. @@ -51,22 +43,23 @@ Depends: libcec4 (= ${binary:Version}), ${shlibs:Depends}, ${misc:Depends} -Description: USB CEC Adaptor communication Library (utility programs) - This library provides support for the Pulse-Eight USB-CEC adapter and - other CEC capable hardware, like the Raspberry Pi. +Description: libCEC communication Library (utility programs) + This library provides support for the Pulse-Eight USB-CEC adapter. . This package provides the CEC utility programs. Package: python-libcec Architecture: any Section: python -Depends: libcec4 (= ${binary:Version}), - ${misc:Depends}, - ${shlibs:Depends}, - ${python:Depends} Pre-Depends: ${misc:Pre-Depends} -Description: Python bindings for USB CEC Adaptor - This library provides support for the Pulse-Eight USB-CEC adapter and - other CEC capable hardware, like the Raspberry Pi. +Depends: libcec4 (= ${binary:Version}) +Description: Python bindings for libCEC + This library provides Python bindings for libCEC. . - This package provides Python bindings for libcec. + This package provides Python bindings for libCEC. + +Package: libcec +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends}, libcec4 (= ${binary:Version}) +Description: Meta package libCEC. + diff -Nru libcec-4.0.1+dfsg1/debian/copyright libcec-4.0.2.1~artful/debian/copyright --- libcec-4.0.1+dfsg1/debian/copyright 2017-01-18 08:16:30.000000000 +0000 +++ libcec-4.0.2.1~artful/debian/copyright 2017-01-28 22:54:36.000000000 +0000 @@ -1,67 +1,82 @@ -Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Format: http://dep.debian.net/deps/dep5/ Upstream-Name: libcec Upstream-Contact: Lars Op den Kamp Source: https://github.com/Pulse-Eight/libcec -Files-Excluded: debian/ - support/p8-usbcec-driver-installer.exe Files: * -Copyright: 2011-2015, Pulse-Eight Limited. -License: GPL-2+ -Comment: Alternatively, you can license this library under a commercial license, +Copyright: 2011-2012 Pulse-Eight Limited. +License: GPL-2+ or other + libCEC(R) is Copyright (C) 2011 Pulse-Eight Limited. All rights reserved. + libCEC(R) is a original work, containing original code. + . + libCEC(R) is a trademark of Pulse-Eight Limited. + . + This program is dual-licensed; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + . + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + . + You should have received a copy of the GNU General Public License + along with this program. If not, see . + . + Alternatively, you can license this library under a commercial license, please contact Pulse-Eight Licensing for more information. . - For more information contact: - Pulse-Eight Licensing - http://www.pulse-eight.com/ - http://www.pulse-eight.net/ + On Debian systems, the full text of the GNU General Public License + version 2 can be found in the file + '/usr/share/common-licenses/GPL-2'. + +Files: lib/platform/windows/dlfcn-win32.* +Copyright: 2007 Ramiro Polla +License: LGPL-2.1+ + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + . + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + . + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . + . + On Debian systems, the full text of the GNU Lesser General Public License + version 2.1 can be found in the file + '/usr/share/common-licenses/LGPL-2.1'. + +Files: lib/util/StdString.h +Copyright: 2002 Joseph M. O'Leary +License: other + This code is 100% free. Use it anywhere you + want. Rewrite it, restructure it, whatever. If you can write software + that makes money off of it, good for you. I kinda like capitalism. + Please don't blame me if it causes your $30 billion dollar satellite + explode in orbit. If you redistribute it in any form, I'd appreciate it + if you would leave this notice here. Files: debian/* Copyright: 2011, Andres Mejia License: GPL-2+ - -Files: src/libcec/adapter/Exynos/* -Copyright: 2014, Valentin Manea - 2011-2015, Pulse-Eight Limited. -License: GPL-2+ - -Files: src/libcec/platform/adl/adl-edid.cpp - src/libcec/platform/adl/adl-edid.h -Copyright: 2011-2015, Pulse-Eight Limited. -License: GPL-2+ - -Files: src/libcec/platform/windows/stdint.h -Copyright: 2006-2013, Alexander Chemeris -License: BSD-3-clause - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions are met: - . - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - . - 2. Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - . - 3. The name of the author may be used to endorse or promote products - derived from this software without specific prior written permission. - . - THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED - WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO - EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; - OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, - WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR - OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF - ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -License: GPL-2+ - This program is free software; you can redistribute it and/or modify + This Program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; version 2 dated June, 1991, or (at - your option) any later version. + the Free Software Foundation; either version 2, or (at your option) + any later version. . - On Debian systems, the complete text of version 2 of the GNU General - Public License can be found in '/usr/share/common-licenses/GPL-2'. + This Program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + . + You should have received a copy of the GNU General Public License + along with this program. If not, see . + . + On Debian systems, the full text of the GNU General Public License + version 2 can be found in the file + '/usr/share/common-licenses/GPL-2'. diff -Nru libcec-4.0.1+dfsg1/debian/gbp.conf libcec-4.0.2.1~artful/debian/gbp.conf --- libcec-4.0.1+dfsg1/debian/gbp.conf 2017-01-18 08:16:30.000000000 +0000 +++ libcec-4.0.2.1~artful/debian/gbp.conf 1970-01-01 00:00:00.000000000 +0000 @@ -1,2 +0,0 @@ -[DEFAULT] -pristine-tar = True diff -Nru libcec-4.0.1+dfsg1/debian/libcec4-dev.install libcec-4.0.2.1~artful/debian/libcec4-dev.install --- libcec-4.0.1+dfsg1/debian/libcec4-dev.install 1970-01-01 00:00:00.000000000 +0000 +++ libcec-4.0.2.1~artful/debian/libcec4-dev.install 2017-01-28 22:54:36.000000000 +0000 @@ -0,0 +1,3 @@ +usr/include +usr/lib/*/pkgconfig +usr/lib/*/*.so diff -Nru libcec-4.0.1+dfsg1/debian/libcec4.symbols libcec-4.0.2.1~artful/debian/libcec4.symbols --- libcec-4.0.1+dfsg1/debian/libcec4.symbols 2017-01-18 08:16:30.000000000 +0000 +++ libcec-4.0.2.1~artful/debian/libcec4.symbols 1970-01-01 00:00:00.000000000 +0000 @@ -1,1230 +0,0 @@ -# SymbolsHelper-Confirmed: 4.0.0 alpha arm64 armel armhf hppa hurd-i386 i386 mips mips64el mipsel powerpc ppc64 ppc64el s390x sparc64 x32 -libcec.so.4 libcec4 #MINVER# - CECDestroy@Base 2.1.4 - CECInitialise@Base 2.1.4 - CECStartBootloader@Base 2.1.4 - (optional|arch=!hurd-i386)_Z11FindComPortRNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.1.0 - _Z15ADL_AllocMemoryi@Base 2.1.4 - (optional|arch=!hurd-i386)_Z16TranslateComPortRNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.1.0 - _Z24libcec_set_configurationPN3CEC11ICECAdapterEPNS_20libcec_configurationE@Base 3.0.1 - _Z7CECInitPKcN3CEC20cec_device_type_listE@Base 2.1.4 - (optional=templinst)_ZN10P8PLATFORM10CConditionIVbE25_PredicateCallbackDefaultEPv@Base 3.1.0 - (optional=templinst)_ZN10P8PLATFORM10CConditionIbE25_PredicateCallbackDefaultEPv@Base 3.1.0 - _ZN10P8PLATFORM11CEDIDParser18GetPhysicalAddressEv@Base 3.1.0 - _ZN10P8PLATFORM11CLockObjectD1Ev@Base 3.1.0 - _ZN10P8PLATFORM11CLockObjectD2Ev@Base 3.1.0 - _ZN10P8PLATFORM11CSerialPortD0Ev@Base 3.1.0 - _ZN10P8PLATFORM11CSerialPortD1Ev@Base 3.1.0 - _ZN10P8PLATFORM11CSerialPortD2Ev@Base 3.1.0 - (optional=templinst)_ZN10P8PLATFORM12SyncedBufferIN3CEC11cec_commandEED0Ev@Base 3.1.0 - (optional=templinst)_ZN10P8PLATFORM12SyncedBufferIN3CEC11cec_commandEED1Ev@Base 3.1.0 - (optional=templinst)_ZN10P8PLATFORM12SyncedBufferIN3CEC11cec_commandEED2Ev@Base 3.1.0 - (optional=templinst)_ZN10P8PLATFORM12SyncedBufferIPN3CEC13CCallbackWrapEED0Ev@Base 3.1.0 - (optional=templinst)_ZN10P8PLATFORM12SyncedBufferIPN3CEC13CCallbackWrapEED1Ev@Base 3.1.0 - (optional=templinst)_ZN10P8PLATFORM12SyncedBufferIPN3CEC13CCallbackWrapEED2Ev@Base 3.1.0 - (optional=templinst)_ZN10P8PLATFORM12SyncedBufferIPN3CEC28CCECAdapterMessageQueueEntryEED0Ev@Base 3.1.0 - (optional=templinst)_ZN10P8PLATFORM12SyncedBufferIPN3CEC28CCECAdapterMessageQueueEntryEED1Ev@Base 3.1.0 - (optional=templinst)_ZN10P8PLATFORM12SyncedBufferIPN3CEC28CCECAdapterMessageQueueEntryEED2Ev@Base 3.1.0 - (optional=templinst)_ZN10P8PLATFORM13CCommonSocketIiE14GetErrorNumberEv@Base 3.1.0 - (optional=templinst)_ZN10P8PLATFORM13CCommonSocketIiE7GetNameB5cxx11Ev@Base 4.0 - (optional=templinst)_ZN10P8PLATFORM13CCommonSocketIiE8GetErrorB5cxx11Ev@Base 4.0 - _ZN10P8PLATFORM13CNVEdidParser18GetPhysicalAddressEv@Base 3.1.0 - _ZN10P8PLATFORM13CNVEdidParserD0Ev@Base 3.1.0 - _ZN10P8PLATFORM13CNVEdidParserD1Ev@Base 3.1.0 - _ZN10P8PLATFORM13CNVEdidParserD2Ev@Base 3.1.0 - _ZN10P8PLATFORM13CSerialSocket11SetBaudRateEj@Base 3.1.0 - (arch-bits=64)_ZN10P8PLATFORM13CSerialSocket4OpenEm@Base 3.1.0 - (arch-bits=32)_ZN10P8PLATFORM13CSerialSocket4OpenEy@Base 3.1.0 - (arch-bits=32)_ZN10P8PLATFORM13CSerialSocket4ReadEPvjy@Base 3.1.0 - (arch-bits=64)_ZN10P8PLATFORM13CSerialSocket4ReadEPvmm@Base 3.1.0 - _ZN10P8PLATFORM13CSerialSocket5CloseEv@Base 3.1.0 - (arch-bits=32)_ZN10P8PLATFORM13CSerialSocket5WriteEPvj@Base 3.1.0 - (arch-bits=64)_ZN10P8PLATFORM13CSerialSocket5WriteEPvm@Base 3.1.0 - _ZN10P8PLATFORM13CSerialSocket6IsOpenEv@Base 3.1.0 - _ZN10P8PLATFORM13CSerialSocket8ShutdownEv@Base 3.1.0 - _ZN10P8PLATFORM13CSerialSocketD0Ev@Base 3.1.0 - _ZN10P8PLATFORM13CSerialSocketD1Ev@Base 3.1.0 - _ZN10P8PLATFORM13CSerialSocketD2Ev@Base 3.1.0 - _ZN10P8PLATFORM14CADLEdidParser10InitialiseEv@Base 3.1.0 - _ZN10P8PLATFORM14CADLEdidParser11OpenLibraryEv@Base 3.1.0 - _ZN10P8PLATFORM14CADLEdidParser12CloseLibraryEv@Base 3.1.0 - _ZN10P8PLATFORM14CADLEdidParser14GetAdapterEDIDEiiP18ADLDisplayEDIDData@Base 3.1.0 - _ZN10P8PLATFORM14CADLEdidParser14GetAdapterInfoEi@Base 3.1.0 - _ZN10P8PLATFORM14CADLEdidParser14GetNumAdaptersEv@Base 3.1.0 - _ZN10P8PLATFORM14CADLEdidParser18GetPhysicalAddressEv@Base 3.1.0 - _ZN10P8PLATFORM14CADLEdidParserC1Ev@Base 3.1.0 - _ZN10P8PLATFORM14CADLEdidParserC2Ev@Base 3.1.0 - _ZN10P8PLATFORM14CADLEdidParserD0Ev@Base 3.1.0 - _ZN10P8PLATFORM14CADLEdidParserD1Ev@Base 3.1.0 - _ZN10P8PLATFORM14CADLEdidParserD2Ev@Base 3.1.0 - _ZN10P8PLATFORM14CConditionImplD0Ev@Base 3.1.0 - _ZN10P8PLATFORM14CConditionImplD1Ev@Base 3.1.0 - _ZN10P8PLATFORM14CConditionImplD2Ev@Base 3.1.0 - (optional=templinst)_ZN10P8PLATFORM16CProtectedSocketINS_13CSerialSocketEE14GetErrorNumberEv@Base 3.1.0 - (arch-bits=64)_ZN10P8PLATFORM16CProtectedSocketINS_13CSerialSocketEE4OpenEm@Base 3.1.0 - (arch-bits=32)_ZN10P8PLATFORM16CProtectedSocketINS_13CSerialSocketEE4OpenEy@Base 3.1.0 - (arch-bits=32)_ZN10P8PLATFORM16CProtectedSocketINS_13CSerialSocketEE4ReadEPvjy@Base 3.1.0 - (arch-bits=64)_ZN10P8PLATFORM16CProtectedSocketINS_13CSerialSocketEE4ReadEPvmm@Base 3.1.0 - (optional=templinst)_ZN10P8PLATFORM16CProtectedSocketINS_13CSerialSocketEE5CloseEv@Base 3.1.0 - (arch-bits=32)_ZN10P8PLATFORM16CProtectedSocketINS_13CSerialSocketEE5WriteEPvj@Base 3.1.0 - (arch-bits=64)_ZN10P8PLATFORM16CProtectedSocketINS_13CSerialSocketEE5WriteEPvm@Base 3.1.0 - (optional=templinst)_ZN10P8PLATFORM16CProtectedSocketINS_13CSerialSocketEE6IsBusyEv@Base 3.1.0 - (optional=templinst)_ZN10P8PLATFORM16CProtectedSocketINS_13CSerialSocketEE6IsIdleEv@Base 3.1.0 - (optional=templinst)_ZN10P8PLATFORM16CProtectedSocketINS_13CSerialSocketEE6IsOpenEv@Base 3.1.0 - (optional=templinst)_ZN10P8PLATFORM16CProtectedSocketINS_13CSerialSocketEE7GetNameB5cxx11Ev@Base 4.0 - (optional=templinst)_ZN10P8PLATFORM16CProtectedSocketINS_13CSerialSocketEE8GetErrorB5cxx11Ev@Base 4.0 - (optional=templinst)_ZN10P8PLATFORM16CProtectedSocketINS_13CSerialSocketEE8ShutdownEv@Base 3.1.0 - (optional=templinst)_ZN10P8PLATFORM16CProtectedSocketINS_13CSerialSocketEED0Ev@Base 3.1.0 - (optional=templinst)_ZN10P8PLATFORM16CProtectedSocketINS_13CSerialSocketEED1Ev@Base 3.1.0 - (optional=templinst)_ZN10P8PLATFORM16CProtectedSocketINS_13CSerialSocketEED2Ev@Base 3.1.0 - _ZN10P8PLATFORM16CRandrEdidParser18GetPhysicalAddressEv@Base 3.1.0 - _ZN10P8PLATFORM16CRandrEdidParserD0Ev@Base 4.0.1 - _ZN10P8PLATFORM16CRandrEdidParserD1Ev@Base 4.0.1 - _ZN10P8PLATFORM16CRandrEdidParserD2Ev@Base 4.0.1 - _ZN10P8PLATFORM6CEventD0Ev@Base 3.1.0 - _ZN10P8PLATFORM6CEventD1Ev@Base 3.1.0 - _ZN10P8PLATFORM6CEventD2Ev@Base 3.1.0 - _ZN10P8PLATFORM6CMutex5ClearEv@Base 3.1.0 - _ZN10P8PLATFORM7CThread10StopThreadEi@Base 3.1.0 - _ZN10P8PLATFORM7CThread12CreateThreadEb@Base 3.1.0 - _ZN10P8PLATFORM7CThread13ThreadHandlerEPv@Base 3.1.0 - _ZN10P8PLATFORM7CThread5SleepEj@Base 3.1.0 - _ZN10P8PLATFORM7CThread9IsRunningEv@Base 3.1.0 - _ZN10P8PLATFORM7CThread9IsStoppedEv@Base 3.1.0 - _ZN10P8PLATFORM7CThreadD0Ev@Base 3.1.0 - _ZN10P8PLATFORM7CThreadD1Ev@Base 3.1.0 - _ZN10P8PLATFORM7CThreadD2Ev@Base 3.1.0 - _ZN3CEC10CCECClient10AddCommandERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC10CCECClient10GetOSDNameB5cxx11Ev@Base 3.0.1 - _ZN3CEC10CCECClient10OnRegisterEv@Base 2.1.4 - _ZN3CEC10CCECClient10PollDeviceENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC10CCECClient10QueueAlertENS_12libcec_alertERKNS_16libcec_parameterE@Base 3.0.1 - _ZN3CEC10CCECClient10SetOSDNameERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.0.1 - _ZN3CEC10CCECClient11AudioEnableEb@Base 4.0 - _ZN3CEC10CCECClient11AudioStatusEv@Base 2.1.4 - _ZN3CEC10CCECClient11AudioUnmuteEv@Base 2.1.4 - _ZN3CEC10CCECClient11PingAdapterEv@Base 2.1.4 - _ZN3CEC10CCECClient11QueueAddKeyERKNS_12cec_keypressE@Base 3.0.1 - _ZN3CEC10CCECClient11QueueAddLogERKNS_19cec_log_message_cppE@Base 4.0 - _ZN3CEC10CCECClient11SetHDMIPortENS_19cec_logical_addressEhb@Base 2.1.4 - _ZN3CEC10CCECClient12IsRegisteredEv@Base 2.1.4 - _ZN3CEC10CCECClient12OnUnregisterEv@Base 2.1.4 - _ZN3CEC10CCECClient12SendKeypressENS_19cec_logical_addressENS_21cec_user_control_codeEb@Base 2.1.4 - _ZN3CEC10CCECClient12SendVolumeUpEb@Base 2.1.4 - _ZN3CEC10CCECClient13CallbackAlertENS_12libcec_alertERKNS_16libcec_parameterE@Base 2.1.4 - _ZN3CEC10CCECClient13IsInitialisedEv@Base 2.1.4 - _ZN3CEC10CCECClient13SendMuteAudioEv@Base 2.1.4 - _ZN3CEC10CCECClient13SetRegisteredEb@Base 2.1.4 - _ZN3CEC10CCECClient13SetStreamPathENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC10CCECClient13SetStreamPathEt@Base 2.1.4 - _ZN3CEC10CCECClient14CallbackAddKeyERKNS_12cec_keypressE@Base 2.1.4 - _ZN3CEC10CCECClient14CallbackAddLogERKNS_19cec_log_message_cppE@Base 4.0 - _ZN3CEC10CCECClient14GetDeviceTypesEv@Base 2.1.4 - _ZN3CEC10CCECClient14GetWakeDevicesEv@Base 2.1.4 - _ZN3CEC10CCECClient14IsActiveDeviceENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC10CCECClient14IsActiveSourceENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC10CCECClient14SendKeyReleaseENS_19cec_logical_addressEb@Base 2.1.4 - _ZN3CEC10CCECClient14SendVolumeDownEb@Base 2.1.4 - _ZN3CEC10CCECClient14SetDeviceTypesERKNS_20cec_device_type_listE@Base 2.1.4 - _ZN3CEC10CCECClient14SetInitialisedEb@Base 2.1.4 - _ZN3CEC10CCECClient14SetWakeDevicesERKNS_21cec_logical_addressesE@Base 2.1.4 - _ZN3CEC10CCECClient15AudioToggleMuteEv@Base 2.1.4 - _ZN3CEC10CCECClient15EnableCallbacksEPvPNS_13ICECCallbacksE@Base 2.1.4 - _ZN3CEC10CCECClient15GetActiveSourceEv@Base 2.1.4 - _ZN3CEC10CCECClient15QueueAddCommandERKNS_11cec_commandE@Base 3.0.1 - _ZN3CEC10CCECClient15SendSetDeckInfoENS_13cec_deck_infoEb@Base 2.1.4 - _ZN3CEC10CCECClient15SourceActivatedENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC10CCECClient16ChangeDeviceTypeENS_15cec_device_typeES1_@Base 2.1.4 - _ZN3CEC10CCECClient16GetActiveDevicesEv@Base 2.1.4 - _ZN3CEC10CCECClient16GetClientVersionEv@Base 2.1.4 - _ZN3CEC10CCECClient16GetConfigurationEv@Base 2.1.4 - _ZN3CEC10CCECClient16GetDeviceOSDNameB5cxx11ENS_19cec_logical_addressE@Base 4.0 - _ZN3CEC10CCECClient16GetPrimaryDeviceEv@Base 2.1.4 - _ZN3CEC10CCECClient16SendSetMenuStateENS_14cec_menu_stateEb@Base 2.1.4 - _ZN3CEC10CCECClient16SendSetOSDStringENS_19cec_logical_addressENS_19cec_display_controlEPKc@Base 2.1.4 - _ZN3CEC10CCECClient16SetClientVersionEj@Base 3.0.1 - _ZN3CEC10CCECClient16SetConfigurationERKNS_20libcec_configurationE@Base 2.1.4 - _ZN3CEC10CCECClient16SetCurrentButtonENS_21cec_user_control_codeE@Base 2.1.4 - _ZN3CEC10CCECClient16SwitchMonitoringEb@Base 2.1.4 - _ZN3CEC10CCECClient17GetConnectionInfoB5cxx11Ev@Base 3.0.1 - _ZN3CEC10CCECClient17GetDeviceVendorIdENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC10CCECClient17GetPlaybackDeviceEv@Base 2.1.4 - _ZN3CEC10CCECClient17SetLogicalAddressENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC10CCECClient17SourceDeactivatedENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC10CCECClient18CallbackAddCommandERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC10CCECClient18DoubleTapTimeoutMSEv@Base 2.2.0 - _ZN3CEC10CCECClient18IsActiveDeviceTypeENS_15cec_device_typeE@Base 2.1.4 - _ZN3CEC10CCECClient18SendPowerOnDevicesENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC10CCECClient18SendStandbyDevicesENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC10CCECClient18SetPhysicalAddressERKNS_20libcec_configurationE@Base 2.1.4 - _ZN3CEC10CCECClient18SetPhysicalAddressEt@Base 2.1.4 - _ZN3CEC10CCECClient19GetDeviceCecVersionENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC10CCECClient19GetLogicalAddressesEv@Base 2.1.4 - _ZN3CEC10CCECClient19GetTVVendorOverrideEv@Base 2.1.4 - _ZN3CEC10CCECClient19RescanActiveDevicesEv@Base 2.1.4 - _ZN3CEC10CCECClient19SendSetActiveSourceENS_15cec_device_typeE@Base 2.1.4 - _ZN3CEC10CCECClient19SendSetInactiveViewEv@Base 2.1.4 - _ZN3CEC10CCECClient19SetTVVendorOverrideENS_13cec_vendor_idE@Base 2.1.4 - _ZN3CEC10CCECClient20CheckKeypressTimeoutEv@Base 2.1.4 - _ZN3CEC10CCECClient20GetDevicePowerStatusENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC10CCECClient20IsLibCECActiveSourceEv@Base 2.1.4 - _ZN3CEC10CCECClient20PersistConfigurationERKNS_20libcec_configurationE@Base 2.1.4 - _ZN3CEC10CCECClient20QueueSourceActivatedEbNS_19cec_logical_addressE@Base 3.0.1 - _ZN3CEC10CCECClient20ResetPhysicalAddressEv@Base 2.1.4 - _ZN3CEC10CCECClient21GetDeviceMenuLanguageB5cxx11ENS_19cec_logical_addressE@Base 4.0 - _ZN3CEC10CCECClient21QueueMenuStateChangedENS_14cec_menu_stateE@Base 3.0.1 - _ZN3CEC10CCECClient22SendSetDeckControlModeENS_21cec_deck_control_modeEb@Base 2.1.4 - _ZN3CEC10CCECClient23CallbackSourceActivatedEbNS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC10CCECClient23CanPersistConfigurationEv@Base 2.1.4 - _ZN3CEC10CCECClient23GetCurrentConfigurationERNS_20libcec_configurationE@Base 2.1.4 - _ZN3CEC10CCECClient23SetSupportedDeviceTypesEv@Base 2.1.4 - _ZN3CEC10CCECClient24AllocateLogicalAddressesEv@Base 2.1.4 - _ZN3CEC10CCECClient24CallbackMenuStateChangedENS_14cec_menu_stateE@Base 2.1.4 - _ZN3CEC10CCECClient24GetDevicePhysicalAddressENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC10CCECClient24GetPrimaryLogicalAddressEv@Base 4.0 - _ZN3CEC10CCECClient24SetDevicePhysicalAddressEt@Base 2.1.4 - _ZN3CEC10CCECClient25AutodetectPhysicalAddressEv@Base 2.1.4 - _ZN3CEC10CCECClient25QueueConfigurationChangedERKNS_20libcec_configurationE@Base 3.0.1 - _ZN3CEC10CCECClient27AllocateLogicalAddressTunerEv@Base 2.1.4 - _ZN3CEC10CCECClient28CallbackConfigurationChangedERKNS_20libcec_configurationE@Base 2.1.4 - _ZN3CEC10CCECClient33AllocateLogicalAddressAudioSystemEv@Base 2.1.4 - _ZN3CEC10CCECClient36AllocateLogicalAddressPlaybackDeviceEv@Base 2.1.4 - _ZN3CEC10CCECClient37AllocateLogicalAddressRecordingDeviceEv@Base 2.1.4 - _ZN3CEC10CCECClient5AlertENS_12libcec_alertERKNS_16libcec_parameterE@Base 2.1.4 - _ZN3CEC10CCECClient6AddKeyERKNS_12cec_keypressE@Base 2.1.4 - _ZN3CEC10CCECClient6AddKeyEbb@Base 3.1.0 - _ZN3CEC10CCECClient6AddLogERKNS_19cec_log_message_cppE@Base 4.0 - _ZN3CEC10CCECClient7ProcessEv@Base 3.0.1 - _ZN3CEC10CCECClient8TransmitERKNS_11cec_commandEb@Base 2.1.4 - _ZN3CEC10CCECClient9AudioMuteEv@Base 2.1.4 - _ZN3CEC10CCECClientC1EPNS_13CCECProcessorERKNS_20libcec_configurationE@Base 2.1.4 - _ZN3CEC10CCECClientC2EPNS_13CCECProcessorERKNS_20libcec_configurationE@Base 2.1.4 - _ZN3CEC10CCECClientD0Ev@Base 2.1.4 - _ZN3CEC10CCECClientD1Ev@Base 2.1.4 - _ZN3CEC10CCECClientD2Ev@Base 2.1.4 - _ZN3CEC11ICECAdapter8ToStringENS_13cec_vendor_idE@Base 3.0.1 - _ZN3CEC13CCECBusDevice10GetHandlerEv@Base 2.1.4 - _ZN3CEC13CCECBusDevice10GetOSDNameB5cxx11ENS_19cec_logical_addressEb@Base 3.0.1 - _ZN3CEC13CCECBusDevice10HandlePollENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC13CCECBusDevice10SetOSDNameERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.0.1 - _ZN3CEC13CCECBusDevice11GetVendorIdENS_19cec_logical_addressEb@Base 2.1.4 - (arch-bits=64)_ZN3CEC13CCECBusDevice11SetVendorIdEm@Base 3.1.0 - (arch-bits=32)_ZN3CEC13CCECBusDevice11SetVendorIdEy@Base 3.1.0 - _ZN3CEC13CCECBusDevice12GetMenuStateENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC13CCECBusDevice12SetMenuStateENS_14cec_menu_stateE@Base 2.1.4 - _ZN3CEC13CCECBusDevice12SignalOpcodeENS_10cec_opcodeE@Base 2.1.4 - _ZN3CEC13CCECBusDevice12TransmitPollENS_19cec_logical_addressEb@Base 2.1.4 - _ZN3CEC13CCECBusDevice13AsAudioSystemEPS0_@Base 2.1.4 - _ZN3CEC13CCECBusDevice13AsAudioSystemEv@Base 2.1.4 - _ZN3CEC13CCECBusDevice13GetCecVersionENS_19cec_logical_addressEb@Base 2.1.4 - _ZN3CEC13CCECBusDevice13GetVendorNameENS_19cec_logical_addressEb@Base 2.1.4 - _ZN3CEC13CCECBusDevice13HandleCommandERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC13CCECBusDevice13SetCecVersionENS_11cec_versionE@Base 2.1.4 - _ZN3CEC13CCECBusDevice13SetStreamPathEtt@Base 2.1.4 - _ZN3CEC13CCECBusDevice13WaitForOpcodeENS_10cec_opcodeE@Base 2.1.4 - (arch-bits=64)_ZN3CEC13CCECBusDevice14ActivateSourceEm@Base 3.1.0 - (arch-bits=32)_ZN3CEC13CCECBusDevice14ActivateSourceEy@Base 3.1.0 - _ZN3CEC13CCECBusDevice14GetPowerStatusENS_19cec_logical_addressEb@Base 2.1.4 - _ZN3CEC13CCECBusDevice14HandlePollFromENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC13CCECBusDevice14ReplaceHandlerEb@Base 2.1.4 - _ZN3CEC13CCECBusDevice14RequestOSDNameENS_19cec_logical_addressEb@Base 2.1.4 - _ZN3CEC13CCECBusDevice14SetActiveRouteEt@Base 2.1.4 - _ZN3CEC13CCECBusDevice14SetPowerStatusENS_16cec_power_statusE@Base 2.1.4 - _ZN3CEC13CCECBusDevice15GetMenuLanguageB5cxx11ENS_19cec_logical_addressEb@Base 4.0 - _ZN3CEC13CCECBusDevice15ImageViewOnSentEv@Base 2.1.4 - _ZN3CEC13CCECBusDevice15RequestVendorIdENS_19cec_logical_addressEb@Base 2.1.4 - _ZN3CEC13CCECBusDevice15SetDeviceStatusENS_21cec_bus_device_statusENS_11cec_versionE@Base 2.1.4 - _ZN3CEC13CCECBusDevice15SetMenuLanguageERA4_Kc@Base 4.0 - _ZN3CEC13CCECBusDevice15SetMenuLanguageERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 4.0 - _ZN3CEC13CCECBusDevice15TransmitOSDNameENS_19cec_logical_addressEb@Base 2.1.4 - _ZN3CEC13CCECBusDevice16AsPlaybackDeviceEPS0_@Base 2.1.4 - _ZN3CEC13CCECBusDevice16AsPlaybackDeviceEv@Base 2.1.4 - _ZN3CEC13CCECBusDevice16GetCurrentStatusEv@Base 2.1.4 - _ZN3CEC13CCECBusDevice16MarkHandlerReadyEv@Base 2.1.4 - _ZN3CEC13CCECBusDevice16TransmitKeypressENS_19cec_logical_addressENS_21cec_user_control_codeEb@Base 2.1.4 - _ZN3CEC13CCECBusDevice16TransmitVendorIDENS_19cec_logical_addressEbb@Base 2.1.4 - _ZN3CEC13CCECBusDevice16TransmitVolumeUpENS_19cec_logical_addressEb@Base 4.0 - _ZN3CEC13CCECBusDevice17AsRecordingDeviceEPS0_@Base 2.1.4 - _ZN3CEC13CCECBusDevice17AsRecordingDeviceEv@Base 2.1.4 - _ZN3CEC13CCECBusDevice17GetCurrentOSDNameB5cxx11Ev@Base 3.0.1 - _ZN3CEC13CCECBusDevice17IsHandledByLibCECEv@Base 2.1.4 - _ZN3CEC13CCECBusDevice17OnImageViewOnSentEb@Base 2.1.4 - _ZN3CEC13CCECBusDevice17RequestCecVersionENS_19cec_logical_addressEb@Base 2.1.4 - _ZN3CEC13CCECBusDevice17ResetDeviceStatusEb@Base 2.1.4 - _ZN3CEC13CCECBusDevice17TransmitMenuStateENS_19cec_logical_addressEb@Base 2.1.4 - _ZN3CEC13CCECBusDevice17TransmitMuteAudioENS_19cec_logical_addressE@Base 4.0 - _ZN3CEC13CCECBusDevice17TransmitOSDStringENS_19cec_logical_addressENS_19cec_display_controlEPKcb@Base 2.1.4 - _ZN3CEC13CCECBusDevice17TryLogicalAddressENS_11cec_versionE@Base 2.1.4 - _ZN3CEC13CCECBusDevice18GetCurrentVendorIdEv@Base 2.1.4 - _ZN3CEC13CCECBusDevice18GetPhysicalAddressENS_19cec_logical_addressEb@Base 2.1.4 - _ZN3CEC13CCECBusDevice18MarkAsActiveSourceEv@Base 2.1.4 - _ZN3CEC13CCECBusDevice18RequestPowerStatusENS_19cec_logical_addressEbb@Base 2.1.4 - _ZN3CEC13CCECBusDevice18SetPhysicalAddressEt@Base 2.1.4 - _ZN3CEC13CCECBusDevice18TransmitCECVersionENS_19cec_logical_addressEb@Base 2.1.4 - _ZN3CEC13CCECBusDevice18TransmitKeyReleaseENS_19cec_logical_addressEb@Base 2.1.4 - _ZN3CEC13CCECBusDevice18TransmitPowerStateENS_19cec_logical_addressEb@Base 2.1.4 - _ZN3CEC13CCECBusDevice18TransmitVolumeDownENS_19cec_logical_addressEb@Base 4.0 - _ZN3CEC13CCECBusDevice19HandleReceiveFailedEv@Base 2.1.4 - _ZN3CEC13CCECBusDevice19RequestActiveSourceEb@Base 2.1.4 - _ZN3CEC13CCECBusDevice19RequestMenuLanguageENS_19cec_logical_addressEb@Base 2.1.4 - _ZN3CEC13CCECBusDevice19TransmitImageViewOnEv@Base 2.1.4 - _ZN3CEC13CCECBusDevice20IsUnsupportedFeatureENS_10cec_opcodeE@Base 2.1.4 - _ZN3CEC13CCECBusDevice20MarkAsInactiveSourceEb@Base 2.1.4 - _ZN3CEC13CCECBusDevice20TransmitActiveSourceEb@Base 2.1.4 - _ZN3CEC13CCECBusDevice21GetCurrentPowerStatusEv@Base 2.1.4 - _ZN3CEC13CCECBusDevice21SetUnsupportedFeatureENS_10cec_opcodeE@Base 2.1.4 - _ZN3CEC13CCECBusDevice22CheckVendorIdRequestedENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC13CCECBusDevice22RequestPhysicalAddressENS_19cec_logical_addressEb@Base 2.1.4 - _ZN3CEC13CCECBusDevice22SystemAudioModeRequestEv@Base 4.0 - _ZN3CEC13CCECBusDevice22TransmitInactiveSourceEv@Base 2.1.4 - _ZN3CEC13CCECBusDevice23HasValidPhysicalAddressEv@Base 2.1.4 - _ZN3CEC13CCECBusDevice23TransmitPhysicalAddressEb@Base 2.1.4 - _ZN3CEC13CCECBusDevice23TransmitSetMenuLanguageENS_19cec_logical_addressEb@Base 2.1.4 - _ZN3CEC13CCECBusDevice25GetCurrentPhysicalAddressEv@Base 2.1.4 - _ZN3CEC13CCECBusDevice35TransmitPendingActiveSourceCommandsEv@Base 2.1.4 - _ZN3CEC13CCECBusDevice4AsTVEPS0_@Base 2.1.4 - _ZN3CEC13CCECBusDevice4AsTVEv@Base 2.1.4 - _ZN3CEC13CCECBusDevice7AsTunerEPS0_@Base 2.1.4 - _ZN3CEC13CCECBusDevice7AsTunerEv@Base 2.1.4 - _ZN3CEC13CCECBusDevice7PowerOnENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC13CCECBusDevice7StandbyENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC13CCECBusDevice8MarkBusyEv@Base 2.1.4 - _ZN3CEC13CCECBusDevice9GetClientEv@Base 2.1.4 - _ZN3CEC13CCECBusDevice9GetStatusEbb@Base 2.1.4 - _ZN3CEC13CCECBusDevice9IsPresentEv@Base 2.1.4 - _ZN3CEC13CCECBusDevice9MarkReadyEv@Base 2.1.4 - _ZN3CEC13CCECBusDevice9NeedsPollEv@Base 2.1.4 - _ZN3CEC13CCECBusDeviceC1EPNS_13CCECProcessorENS_19cec_logical_addressEt@Base 2.1.4 - _ZN3CEC13CCECBusDeviceC2EPNS_13CCECProcessorENS_19cec_logical_addressEt@Base 2.1.4 - _ZN3CEC13CCECBusDeviceD0Ev@Base 2.1.4 - _ZN3CEC13CCECBusDeviceD1Ev@Base 2.1.4 - _ZN3CEC13CCECBusDeviceD2Ev@Base 2.1.4 - _ZN3CEC13CCECDeviceMap10FilterTypeENS_15cec_device_typeERSt6vectorIPNS_13CCECBusDeviceESaIS4_EE@Base 2.1.4 - _ZN3CEC13CCECDeviceMap11FilterTypesERKNS_20cec_device_type_listERSt6vectorIPNS_13CCECBusDeviceESaIS6_EE@Base 2.1.4 - _ZN3CEC13CCECDeviceMap12FilterActiveERSt6vectorIPNS_13CCECBusDeviceESaIS3_EE@Base 2.1.4 - _ZN3CEC13CCECDeviceMap17ResetDeviceStatusEv@Base 2.1.4 - _ZN3CEC13CCECDeviceMap18ToLogicalAddressesERKSt6vectorIPNS_13CCECBusDeviceESaIS3_EE@Base 2.1.4 - _ZN3CEC13CCECDeviceMap21GetByLogicalAddressesERSt6vectorIPNS_13CCECBusDeviceESaIS3_EERKNS_21cec_logical_addressesE@Base 2.1.4 - _ZN3CEC13CCECDeviceMap22FilterLibCECControlledERSt6vectorIPNS_13CCECBusDeviceESaIS3_EE@Base 2.1.4 - _ZN3CEC13CCECDeviceMap26GetDeviceByPhysicalAddressEtb@Base 2.1.4 - _ZN3CEC13CCECDeviceMap3EndEv@Base 2.1.4 - _ZN3CEC13CCECDeviceMap5BeginEv@Base 2.1.4 - _ZN3CEC13CCECDeviceMap5ClearEv@Base 2.1.4 - _ZN3CEC13CCECDeviceMap9SignalAllENS_10cec_opcodeE@Base 2.1.4 - _ZN3CEC13CCECDeviceMapC1EPNS_13CCECProcessorE@Base 2.1.4 - _ZN3CEC13CCECDeviceMapC2EPNS_13CCECProcessorE@Base 2.1.4 - _ZN3CEC13CCECDeviceMapD0Ev@Base 2.1.4 - _ZN3CEC13CCECDeviceMapD1Ev@Base 2.1.4 - _ZN3CEC13CCECDeviceMapD2Ev@Base 2.1.4 - _ZN3CEC13CCECProcessor10HandlePollENS_19cec_logical_addressES1_@Base 2.1.4 - _ZN3CEC13CCECProcessor10PollDeviceENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC13CCECProcessor11PingAdapterEv@Base 2.1.4 - _ZN3CEC13CCECProcessor12ResetMembersEv@Base 2.1.4 - _ZN3CEC13CCECProcessor13PowerOnDeviceENS_19cec_logical_addressES1_@Base 2.1.4 - _ZN3CEC13CCECProcessor13StandbyDeviceENS_19cec_logical_addressES1_@Base 2.1.4 - _ZN3CEC13CCECProcessor13TransmitAbortENS_19cec_logical_addressES1_NS_10cec_opcodeENS_16cec_abort_reasonE@Base 2.1.4 - _ZN3CEC13CCECProcessor14ActivateSourceEt@Base 2.1.4 - _ZN3CEC13CCECProcessor14CECInitialisedEv@Base 2.1.4 - _ZN3CEC13CCECProcessor14IsActiveSourceENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC13CCECProcessor14OpenConnectionEPKctjb@Base 2.1.4 - _ZN3CEC13CCECProcessor14PowerOnDevicesENS_19cec_logical_addressERKSt6vectorIPNS_13CCECBusDeviceESaIS4_EE@Base 2.1.4 - _ZN3CEC13CCECProcessor14ProcessCommandERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC13CCECProcessor14RegisterClientEPNS_10CCECClientE@Base 2.1.4 - _ZN3CEC13CCECProcessor14RegisterClientESt10shared_ptrINS_10CCECClientEE@Base 3.0.1 - _ZN3CEC13CCECProcessor14StandbyDevicesENS_19cec_logical_addressERKSt6vectorIPNS_13CCECBusDeviceESaIS4_EE@Base 2.1.4 - _ZN3CEC13CCECProcessor15GetActiveSourceEb@Base 2.1.4 - _ZN3CEC13CCECProcessor15IsPresentDeviceENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC13CCECProcessor15ReplaceHandlersEv@Base 2.1.4 - _ZN3CEC13CCECProcessor15SetActiveSourceEbb@Base 2.1.4 - _ZN3CEC13CCECProcessor15StartBootloaderEPKc@Base 2.1.4 - _ZN3CEC13CCECProcessor16ChangeDeviceTypeESt10shared_ptrINS_10CCECClientEENS_15cec_device_typeES4_@Base 3.0.1 - _ZN3CEC13CCECProcessor16GetPrimaryClientEv@Base 2.1.4 - _ZN3CEC13CCECProcessor16GetPrimaryDeviceEv@Base 2.1.4 - _ZN3CEC13CCECProcessor16SwitchMonitoringEb@Base 2.1.4 - _ZN3CEC13CCECProcessor16UnregisterClientEPNS_10CCECClientE@Base 2.1.4 - _ZN3CEC13CCECProcessor16UnregisterClientESt10shared_ptrINS_10CCECClientEE@Base 3.0.1 - _ZN3CEC13CCECProcessor17GetLogicalAddressEv@Base 2.1.4 - _ZN3CEC13CCECProcessor17OnCommandReceivedERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC13CCECProcessor17SetCECInitialisedEb@Base 2.1.4 - _ZN3CEC13CCECProcessor17TryLogicalAddressENS_19cec_logical_addressENS_11cec_versionE@Base 2.1.4 - _ZN3CEC13CCECProcessor17UnregisterClientsEv@Base 2.1.4 - _ZN3CEC13CCECProcessor19GetLogicalAddressesEv@Base 2.1.4 - _ZN3CEC13CCECProcessor19GetRetryLineTimeoutEv@Base 2.1.4 - _ZN3CEC13CCECProcessor19HandleReceiveFailedENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC13CCECProcessor19IsPresentDeviceTypeENS_15cec_device_typeE@Base 2.1.4 - _ZN3CEC13CCECProcessor19RescanActiveDevicesEv@Base 2.1.4 - _ZN3CEC13CCECProcessor19SetLogicalAddressesERKNS_21cec_logical_addressesE@Base 2.1.4 - _ZN3CEC13CCECProcessor19SetRetryLineTimeoutEh@Base 2.1.4 - _ZN3CEC13CCECProcessor20GetDeviceInformationEPKcPNS_20libcec_configurationEj@Base 2.1.4 - _ZN3CEC13CCECProcessor20PersistConfigurationERKNS_20libcec_configurationE@Base 2.1.4 - _ZN3CEC13CCECProcessor20PhysicalAddressInUseEt@Base 2.1.4 - _ZN3CEC13CCECProcessor21ClearLogicalAddressesEv@Base 2.1.4 - _ZN3CEC13CCECProcessor22GetStandardLineTimeoutEv@Base 2.1.4 - _ZN3CEC13CCECProcessor22SetStandardLineTimeoutEh@Base 2.1.4 - _ZN3CEC13CCECProcessor23CanPersistConfigurationEv@Base 2.1.4 - _ZN3CEC13CCECProcessor23IsRunningLatestFirmwareEv@Base 2.1.4 - _ZN3CEC13CCECProcessor24AllocateLogicalAddressesESt10shared_ptrINS_10CCECClientEE@Base 3.0.1 - _ZN3CEC13CCECProcessor24HandleLogicalAddressLostENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC13CCECProcessor26GetDeviceByPhysicalAddressEtb@Base 2.1.4 - _ZN3CEC13CCECProcessor28GetPhysicalAddressFromEepromEv@Base 2.1.4 - _ZN3CEC13CCECProcessor28HandlePhysicalAddressChangedEt@Base 2.1.4 - _ZN3CEC13CCECProcessor35TransmitPendingActiveSourceCommandsEv@Base 2.1.4 - _ZN3CEC13CCECProcessor5CloseEv@Base 2.1.4 - _ZN3CEC13CCECProcessor5StartEPKctj@Base 2.1.4 - _ZN3CEC13CCECProcessor7ProcessEv@Base 2.1.4 - _ZN3CEC13CCECProcessor8TransmitERKNS_11cec_commandEb@Base 2.1.4 - _ZN3CEC13CCECProcessor9GetClientENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC13CCECProcessor9LogOutputERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC13CCECProcessorC1EPNS_7CLibCECE@Base 2.1.4 - _ZN3CEC13CCECProcessorC2EPNS_7CLibCECE@Base 2.1.4 - _ZN3CEC13CCECProcessorD0Ev@Base 2.1.4 - _ZN3CEC13CCECProcessorD1Ev@Base 2.1.4 - _ZN3CEC13CCECProcessorD2Ev@Base 2.1.4 - _ZN3CEC13CCECTypeUtils14GetMaskForTypeENS_15cec_device_typeE@Base 2.1.4 - _ZN3CEC13CCECTypeUtils8ToStringENS_10cec_opcodeE@Base 2.1.4 - _ZN3CEC13CCECTypeUtils8ToStringENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC13CCECTypeUtils8ToStringENS_21cec_user_control_codeE@Base 3.0.1 - _ZN3CEC15CAdapterFactory11GetInstanceEPKct@Base 2.1.4 - _ZN3CEC15CAdapterFactory12FindAdaptersEPNS_11cec_adapterEhPKc@Base 2.1.4 - _ZN3CEC15CAdapterFactory14DetectAdaptersEPNS_22cec_adapter_descriptorEhPKc@Base 2.1.4 - _ZN3CEC15CAdapterFactory19InitVideoStandaloneEv@Base 2.1.4 - _ZN3CEC15CAdapterFactoryD0Ev@Base 2.1.4 - _ZN3CEC15CAdapterFactoryD1Ev@Base 2.1.4 - _ZN3CEC15CAdapterFactoryD2Ev@Base 2.1.4 - _ZN3CEC15CCECAudioSystem10VolumeDownENS_19cec_logical_addressEb@Base 2.1.4 - _ZN3CEC15CCECAudioSystem11EnableAudioEPNS_13CCECBusDeviceE@Base 4.0 - _ZN3CEC15CCECAudioSystem14GetAudioStatusENS_19cec_logical_addressEb@Base 2.1.4 - _ZN3CEC15CCECAudioSystem14SetAudioStatusEh@Base 2.1.4 - _ZN3CEC15CCECAudioSystem18RequestAudioStatusENS_19cec_logical_addressEb@Base 2.1.4 - _ZN3CEC15CCECAudioSystem19TransmitAudioStatusENS_19cec_logical_addressEb@Base 2.1.4 - _ZN3CEC15CCECAudioSystem24SetSystemAudioModeStatusENS_23cec_system_audio_statusE@Base 2.1.4 - _ZN3CEC15CCECAudioSystem26TransmitSetSystemAudioModeENS_19cec_logical_addressEb@Base 2.1.4 - _ZN3CEC15CCECAudioSystem29TransmitSystemAudioModeStatusENS_19cec_logical_addressEb@Base 2.1.4 - _ZN3CEC15CCECAudioSystem8VolumeUpENS_19cec_logical_addressEb@Base 2.1.4 - _ZN3CEC15CCECAudioSystem9MuteAudioENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC15CCECAudioSystemC1EPNS_13CCECProcessorENS_19cec_logical_addressEt@Base 2.1.4 - _ZN3CEC15CCECAudioSystemC2EPNS_13CCECProcessorENS_19cec_logical_addressEt@Base 2.1.4 - _ZN3CEC15CCECAudioSystemD0Ev@Base 2.1.4 - _ZN3CEC15CCECAudioSystemD1Ev@Base 2.1.4 - _ZN3CEC15CCECAudioSystemD2Ev@Base 2.1.4 - _ZN3CEC15CCECInputBufferD0Ev@Base 2.1.4 - _ZN3CEC15CCECInputBufferD1Ev@Base 2.1.4 - _ZN3CEC15CCECInputBufferD2Ev@Base 2.1.4 - _ZN3CEC16CWaitForResponse4WaitENS_10cec_opcodeEj@Base 2.1.4 - _ZN3CEC16CWaitForResponse5ClearEv@Base 2.1.4 - _ZN3CEC16CWaitForResponse8GetEventENS_10cec_opcodeE@Base 2.1.4 - _ZN3CEC16CWaitForResponse8ReceivedENS_10cec_opcodeE@Base 2.1.4 - _ZN3CEC16CWaitForResponseC1Ev@Base 2.1.4 - _ZN3CEC16CWaitForResponseC2Ev@Base 2.1.4 - _ZN3CEC16CWaitForResponseD1Ev@Base 2.1.4 - _ZN3CEC16CWaitForResponseD2Ev@Base 2.1.4 - _ZN3CEC17CANCommandHandler21HandleSetMenuLanguageERKNS_11cec_commandE@Base 2.2.0 - _ZN3CEC17CANCommandHandler28HandleVendorRemoteButtonDownERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC17CANCommandHandler31HandleDeviceVendorCommandWithIdERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC17CANCommandHandler7PowerOnENS_19cec_logical_addressES1_@Base 2.1.4 - (arch-bits=64)_ZN3CEC17CANCommandHandlerC1EPNS_13CCECBusDeviceEiial@Base 3.1.0 - (arch-bits=32)_ZN3CEC17CANCommandHandlerC1EPNS_13CCECBusDeviceEiiax@Base 3.1.0 - (arch-bits=64)_ZN3CEC17CANCommandHandlerC2EPNS_13CCECBusDeviceEiial@Base 3.1.0 - (arch-bits=32)_ZN3CEC17CANCommandHandlerC2EPNS_13CCECBusDeviceEiiax@Base 3.1.0 - _ZN3CEC17CANCommandHandlerD0Ev@Base 2.1.4 - _ZN3CEC17CANCommandHandlerD1Ev@Base 2.1.4 - _ZN3CEC17CANCommandHandlerD2Ev@Base 2.1.4 - _ZN3CEC17CAQCommandHandler7PowerOnENS_19cec_logical_addressES1_@Base 2.1.4 - (arch-bits=64)_ZN3CEC17CAQCommandHandlerC1EPNS_13CCECBusDeviceEiial@Base 3.1.0 - (arch-bits=32)_ZN3CEC17CAQCommandHandlerC1EPNS_13CCECBusDeviceEiiax@Base 3.1.0 - (arch-bits=64)_ZN3CEC17CAQCommandHandlerC2EPNS_13CCECBusDeviceEiial@Base 3.1.0 - (arch-bits=32)_ZN3CEC17CAQCommandHandlerC2EPNS_13CCECBusDeviceEiiax@Base 3.1.0 - _ZN3CEC17CAQCommandHandlerD0Ev@Base 2.1.4 - _ZN3CEC17CAQCommandHandlerD1Ev@Base 2.1.4 - _ZN3CEC17CAQCommandHandlerD2Ev@Base 2.1.4 - _ZN3CEC17CImageViewOnCheck7ProcessEv@Base 2.1.4 - _ZN3CEC17CImageViewOnCheckD0Ev@Base 2.1.4 - _ZN3CEC17CImageViewOnCheckD1Ev@Base 2.1.4 - _ZN3CEC17CImageViewOnCheckD2Ev@Base 2.1.4 - _ZN3CEC17CPHCommandHandler11InitHandlerEv@Base 2.1.4 - _ZN3CEC17CPHCommandHandler14ActivateSourceEb@Base 2.1.4 - (arch-bits=64)_ZN3CEC17CPHCommandHandler16TransmitVendorIDENS_19cec_logical_addressES1_mb@Base 3.1.0 - (arch-bits=32)_ZN3CEC17CPHCommandHandler16TransmitVendorIDENS_19cec_logical_addressES1_yb@Base 3.1.0 - _ZN3CEC17CPHCommandHandler20HandleDeviceVendorIdERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC17CPHCommandHandler24HandleUserControlPressedERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC17CPHCommandHandler24HandleUserControlReleaseERKNS_11cec_commandE@Base 2.1.4 - (arch-bits=64)_ZN3CEC17CPHCommandHandlerC1EPNS_13CCECBusDeviceEiial@Base 3.1.0 - (arch-bits=32)_ZN3CEC17CPHCommandHandlerC1EPNS_13CCECBusDeviceEiiax@Base 3.1.0 - (arch-bits=64)_ZN3CEC17CPHCommandHandlerC2EPNS_13CCECBusDeviceEiial@Base 3.1.0 - (arch-bits=32)_ZN3CEC17CPHCommandHandlerC2EPNS_13CCECBusDeviceEiiax@Base 3.1.0 - _ZN3CEC17CPHCommandHandlerD0Ev@Base 2.1.4 - _ZN3CEC17CPHCommandHandlerD1Ev@Base 2.1.4 - _ZN3CEC17CPHCommandHandlerD2Ev@Base 2.1.4 - _ZN3CEC17CRHCommandHandler31HandleDeviceVendorCommandWithIdERKNS_11cec_commandE@Base 2.1.4 - (arch-bits=64)_ZN3CEC17CRHCommandHandlerC1EPNS_13CCECBusDeviceEiial@Base 3.1.0 - (arch-bits=32)_ZN3CEC17CRHCommandHandlerC1EPNS_13CCECBusDeviceEiiax@Base 3.1.0 - (arch-bits=64)_ZN3CEC17CRHCommandHandlerC2EPNS_13CCECBusDeviceEiial@Base 3.1.0 - (arch-bits=32)_ZN3CEC17CRHCommandHandlerC2EPNS_13CCECBusDeviceEiiax@Base 3.1.0 - _ZN3CEC17CRHCommandHandlerD0Ev@Base 2.1.4 - _ZN3CEC17CRHCommandHandlerD1Ev@Base 2.1.4 - _ZN3CEC17CRHCommandHandlerD2Ev@Base 2.1.4 - _ZN3CEC17CRLCommandHandler11InitHandlerEv@Base 2.1.4 - _ZN3CEC17CRLCommandHandler31HandleDeviceVendorCommandWithIdERKNS_11cec_commandE@Base 2.1.4 - (arch-bits=64)_ZN3CEC17CRLCommandHandlerC1EPNS_13CCECBusDeviceEiial@Base 3.1.0 - (arch-bits=32)_ZN3CEC17CRLCommandHandlerC1EPNS_13CCECBusDeviceEiiax@Base 3.1.0 - (arch-bits=64)_ZN3CEC17CRLCommandHandlerC2EPNS_13CCECBusDeviceEiial@Base 3.1.0 - (arch-bits=32)_ZN3CEC17CRLCommandHandlerC2EPNS_13CCECBusDeviceEiiax@Base 3.1.0 - _ZN3CEC17CRLCommandHandlerD0Ev@Base 2.1.4 - _ZN3CEC17CRLCommandHandlerD1Ev@Base 2.1.4 - _ZN3CEC17CRLCommandHandlerD2Ev@Base 2.1.4 - _ZN3CEC17CSLCommandHandler11InitHandlerEv@Base 2.1.4 - _ZN3CEC17CSLCommandHandler12ResetSLStateEv@Base 2.1.4 - _ZN3CEC17CSLCommandHandler13HandleStandbyERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC17CSLCommandHandler13SLInitialisedEv@Base 2.1.4 - _ZN3CEC17CSLCommandHandler14ActivateSourceEb@Base 2.1.4 - _ZN3CEC17CSLCommandHandler16SetSLInitialisedEv@Base 2.1.4 - _ZN3CEC17CSLCommandHandler17TransmitMenuStateENS_19cec_logical_addressES1_NS_14cec_menu_stateEb@Base 2.1.4 - _ZN3CEC17CSLCommandHandler18HandleFeatureAbortERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC17CSLCommandHandler19HandleVendorCommandERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC17CSLCommandHandler20HandleGiveDeckStatusERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC17CSLCommandHandler25HandleRequestActiveSourceERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC17CSLCommandHandler25HandleVendorCommandSLInitERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC17CSLCommandHandler26HandleVendorCommandPowerOnERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC17CSLCommandHandler27HandleGiveDevicePowerStatusERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC17CSLCommandHandler28HandleVendorCommandSLConnectERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC17CSLCommandHandler30TransmitVendorCommandSLAckInitENS_19cec_logical_addressES1_@Base 2.1.4 - _ZN3CEC17CSLCommandHandler32HandleVendorCommandPowerOnStatusERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC17CSLCommandHandler34TransmitVendorCommandSetDeviceModeENS_19cec_logical_addressES1_NS_15cec_device_typeE@Base 2.1.4 - _ZN3CEC17CSLCommandHandler7PowerOnENS_19cec_logical_addressES1_@Base 2.1.4 - (arch-bits=64)_ZN3CEC17CSLCommandHandlerC1EPNS_13CCECBusDeviceEiial@Base 3.1.0 - (arch-bits=32)_ZN3CEC17CSLCommandHandlerC1EPNS_13CCECBusDeviceEiiax@Base 3.1.0 - (arch-bits=64)_ZN3CEC17CSLCommandHandlerC2EPNS_13CCECBusDeviceEiial@Base 3.1.0 - (arch-bits=32)_ZN3CEC17CSLCommandHandlerC2EPNS_13CCECBusDeviceEiiax@Base 3.1.0 - _ZN3CEC17CSLCommandHandlerD0Ev@Base 2.1.4 - _ZN3CEC17CSLCommandHandlerD1Ev@Base 2.1.4 - _ZN3CEC17CSLCommandHandlerD2Ev@Base 2.1.4 - _ZN3CEC17CVLCommandHandler11InitHandlerEv@Base 2.1.4 - _ZN3CEC17CVLCommandHandler13HandleStandbyERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC17CVLCommandHandler19HandleVendorCommandERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC17CVLCommandHandler19SourceSwitchAllowedEv@Base 2.1.4 - _ZN3CEC17CVLCommandHandler20PowerUpEventReceivedEv@Base 2.1.4 - _ZN3CEC17CVLCommandHandler23HandleReportPowerStatusERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC17CVLCommandHandler27VendorPreActivateSourceHookEv@Base 2.1.4 - _ZN3CEC17CVLCommandHandler28HandleSystemAudioModeRequestERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC17CVLCommandHandler29SendVendorCommandCapabilitiesENS_19cec_logical_addressES1_@Base 2.1.4 - _ZN3CEC17CVLCommandHandler31HandleDeviceVendorCommandWithIdERKNS_11cec_commandE@Base 2.1.4 - (arch-bits=64)_ZN3CEC17CVLCommandHandlerC1EPNS_13CCECBusDeviceEiial@Base 3.1.0 - (arch-bits=32)_ZN3CEC17CVLCommandHandlerC1EPNS_13CCECBusDeviceEiiax@Base 3.1.0 - (arch-bits=64)_ZN3CEC17CVLCommandHandlerC2EPNS_13CCECBusDeviceEiial@Base 3.1.0 - (arch-bits=32)_ZN3CEC17CVLCommandHandlerC2EPNS_13CCECBusDeviceEiiax@Base 3.1.0 - _ZN3CEC17CVLCommandHandlerD0Ev@Base 2.1.4 - _ZN3CEC17CVLCommandHandlerD1Ev@Base 2.1.4 - _ZN3CEC17CVLCommandHandlerD2Ev@Base 2.1.4 - _ZN3CEC18CAdapterPingThread7ProcessEv@Base 2.1.4 - _ZN3CEC18CAdapterPingThreadD0Ev@Base 2.1.4 - _ZN3CEC18CAdapterPingThreadD1Ev@Base 2.1.4 - _ZN3CEC18CAdapterPingThreadD2Ev@Base 2.1.4 - _ZN3CEC18CCECAdapterMessage11PushEscapedEh@Base 2.1.4 - _ZN3CEC18CCECAdapterMessage16PushReceivedByteEh@Base 2.1.4 - _ZN3CEC18CCECAdapterMessage18MessageCodeIsErrorENS_23cec_adapter_messagecodeE@Base 2.1.4 - _ZN3CEC18CCECAdapterMessage5ClearEv@Base 2.1.4 - _ZN3CEC18CCECAdapterMessage5ShiftEh@Base 2.1.4 - _ZN3CEC18CCECAdapterMessage6AppendERNS_14cec_datapacketE@Base 2.1.4 - _ZN3CEC18CCECAdapterMessage6AppendERS0_@Base 2.1.4 - _ZN3CEC18CCECAdapterMessage8PushBackEh@Base 2.1.4 - _ZN3CEC18CCECAdapterMessage8ToStringENS_23cec_adapter_messagecodeE@Base 2.1.4 - _ZN3CEC18CCECAdapterMessageC1ERKNS_11cec_commandEh@Base 2.1.4 - _ZN3CEC18CCECAdapterMessageC1Ev@Base 2.1.4 - _ZN3CEC18CCECAdapterMessageC2ERKNS_11cec_commandEh@Base 2.1.4 - _ZN3CEC18CCECAdapterMessageC2Ev@Base 2.1.4 - _ZN3CEC18CCECCommandHandler10HandlePollERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC18CCECCommandHandler11GetVendorIdEv@Base 2.1.4 - _ZN3CEC18CCECCommandHandler11InitHandlerEv@Base 2.1.4 - _ZN3CEC18CCECCommandHandler11SetVendorIdENS_13cec_vendor_idE@Base 2.1.4 - _ZN3CEC18CCECCommandHandler11SetVendorIdERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC18CCECCommandHandler12TransmitPollENS_19cec_logical_addressES1_b@Base 2.1.4 - _ZN3CEC18CCECCommandHandler13HandleCommandERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC18CCECCommandHandler13HandleStandbyERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC18CCECCommandHandler14ActivateSourceEb@Base 2.1.4 - _ZN3CEC18CCECCommandHandler15TransmitOSDNameENS_19cec_logical_addressES1_NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEb@Base 3.0.1 - _ZN3CEC18CCECCommandHandler15TransmitStandbyENS_19cec_logical_addressES1_@Base 2.1.4 - _ZN3CEC18CCECCommandHandler16HandleSetOSDNameERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC18CCECCommandHandler16HandleTextViewOnERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC18CCECCommandHandler16TransmitKeypressENS_19cec_logical_addressES1_NS_21cec_user_control_codeEb@Base 2.1.4 - (arch-bits=64)_ZN3CEC18CCECCommandHandler16TransmitVendorIDENS_19cec_logical_addressES1_mb@Base 3.1.0 - (arch-bits=32)_ZN3CEC18CCECCommandHandler16TransmitVendorIDENS_19cec_logical_addressES1_yb@Base 3.1.0 - _ZN3CEC18CCECCommandHandler16UnhandledCommandERKNS_11cec_commandENS_16cec_abort_reasonE@Base 2.1.4 - _ZN3CEC18CCECCommandHandler17HandleDeckControlERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC18CCECCommandHandler17HandleGiveOSDNameERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC18CCECCommandHandler17HandleImageViewOnERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC18CCECCommandHandler17HandleMenuRequestERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC18CCECCommandHandler17TransmitMenuStateENS_19cec_logical_addressES1_NS_14cec_menu_stateEb@Base 2.1.4 - _ZN3CEC18CCECCommandHandler17TransmitOSDStringENS_19cec_logical_addressES1_NS_19cec_display_controlEPKcb@Base 2.1.4 - _ZN3CEC18CCECCommandHandler18HandleActiveSourceERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC18CCECCommandHandler18HandleFeatureAbortERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC18CCECCommandHandler18SetPhysicalAddressENS_19cec_logical_addressEt@Base 2.1.4 - _ZN3CEC18CCECCommandHandler18TransmitCECVersionENS_19cec_logical_addressES1_NS_11cec_versionEb@Base 2.1.4 - _ZN3CEC18CCECCommandHandler18TransmitDeckStatusENS_19cec_logical_addressES1_NS_13cec_deck_infoEb@Base 2.1.4 - _ZN3CEC18CCECCommandHandler18TransmitKeyReleaseENS_19cec_logical_addressES1_b@Base 2.1.4 - _ZN3CEC18CCECCommandHandler18TransmitPowerStateENS_19cec_logical_addressES1_NS_16cec_power_statusEb@Base 2.1.4 - _ZN3CEC18CCECCommandHandler19HandleGetCecVersionERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC18CCECCommandHandler19HandleRoutingChangeERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC18CCECCommandHandler19HandleSetStreamPathERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC18CCECCommandHandler19HandleVendorCommandERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC18CCECCommandHandler19SourceSwitchAllowedEv@Base 2.1.4 - _ZN3CEC18CCECCommandHandler19TransmitAudioStatusENS_19cec_logical_addressES1_hb@Base 2.1.4 - _ZN3CEC18CCECCommandHandler19TransmitImageViewOnENS_19cec_logical_addressES1_@Base 2.1.4 - _ZN3CEC18CCECCommandHandler20HandleDeviceVendorIdERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC18CCECCommandHandler20HandleGiveDeckStatusERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC18CCECCommandHandler20TransmitActiveSourceENS_19cec_logical_addressEtb@Base 2.1.4 - _ZN3CEC18CCECCommandHandler21HandleGiveAudioStatusERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC18CCECCommandHandler21HandleSetMenuLanguageERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC18CCECCommandHandler21TransmitSetStreamPathEtb@Base 2.1.4 - _ZN3CEC18CCECCommandHandler22HandleDeviceCecVersionERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC18CCECCommandHandler22HandleGiveMenuLanguageERKNS_11cec_commandE@Base 2.1.4 - (arch-bits=64)_ZN3CEC18CCECCommandHandler22ScheduleActivateSourceEm@Base 3.1.0 - (arch-bits=32)_ZN3CEC18CCECCommandHandler22ScheduleActivateSourceEy@Base 3.1.0 - _ZN3CEC18CCECCommandHandler22TransmitInactiveSourceENS_19cec_logical_addressEt@Base 2.1.4 - _ZN3CEC18CCECCommandHandler22TransmitRequestOSDNameENS_19cec_logical_addressES1_b@Base 2.1.4 - _ZN3CEC18CCECCommandHandler23HandleReportAudioStatusERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC18CCECCommandHandler23HandleReportPowerStatusERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC18CCECCommandHandler23TransmitPhysicalAddressENS_19cec_logical_addressEtNS_15cec_device_typeEb@Base 2.1.4 - _ZN3CEC18CCECCommandHandler23TransmitRequestVendorIdENS_19cec_logical_addressES1_b@Base 2.1.4 - _ZN3CEC18CCECCommandHandler23TransmitSetMenuLanguageENS_19cec_logical_addressEPKcb@Base 2.1.4 - _ZN3CEC18CCECCommandHandler24HandleGiveDeviceVendorIdERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC18CCECCommandHandler24HandleRoutingInformationERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC18CCECCommandHandler24HandleSetSystemAudioModeERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC18CCECCommandHandler24HandleUserControlPressedERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC18CCECCommandHandler24HandleUserControlReleaseERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC18CCECCommandHandler24RequestEmailFromCustomerERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC18CCECCommandHandler25HandleGivePhysicalAddressERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC18CCECCommandHandler25HandleRequestActiveSourceERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC18CCECCommandHandler25TransmitRequestCecVersionENS_19cec_logical_addressES1_b@Base 2.1.4 - _ZN3CEC18CCECCommandHandler26HandleVendorRemoteButtonUpERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC18CCECCommandHandler26TransmitRequestAudioStatusENS_19cec_logical_addressES1_b@Base 2.1.4 - _ZN3CEC18CCECCommandHandler26TransmitRequestPowerStatusENS_19cec_logical_addressES1_bb@Base 2.1.4 - _ZN3CEC18CCECCommandHandler26TransmitSetSystemAudioModeENS_19cec_logical_addressES1_NS_23cec_system_audio_statusEb@Base 2.1.4 - _ZN3CEC18CCECCommandHandler27HandleGiveDevicePowerStatusERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC18CCECCommandHandler27HandleReportPhysicalAddressERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC18CCECCommandHandler27HandleSystemAudioModeStatusERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC18CCECCommandHandler27TransmitRequestActiveSourceENS_19cec_logical_addressEb@Base 2.1.4 - _ZN3CEC18CCECCommandHandler27TransmitRequestMenuLanguageENS_19cec_logical_addressES1_b@Base 2.1.4 - _ZN3CEC18CCECCommandHandler27VendorPreActivateSourceHookEv@Base 2.1.4 - _ZN3CEC18CCECCommandHandler28HandleSystemAudioModeRequestERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC18CCECCommandHandler28HandleVendorRemoteButtonDownERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC18CCECCommandHandler29TransmitSystemAudioModeStatusENS_19cec_logical_addressES1_NS_23cec_system_audio_statusEb@Base 2.1.4 - _ZN3CEC18CCECCommandHandler30TransmitRequestPhysicalAddressENS_19cec_logical_addressES1_b@Base 2.1.4 - _ZN3CEC18CCECCommandHandler30TransmitSystemAudioModeRequestENS_19cec_logical_addressEt@Base 4.0 - _ZN3CEC18CCECCommandHandler31HandleDeviceVendorCommandWithIdERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC18CCECCommandHandler31HandleGiveSystemAudioModeStatusERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC18CCECCommandHandler7PowerOnENS_19cec_logical_addressES1_@Base 2.1.4 - _ZN3CEC18CCECCommandHandler8TransmitERNS_11cec_commandEbb@Base 2.1.4 - (arch-bits=64)_ZN3CEC18CCECCommandHandlerC1EPNS_13CCECBusDeviceEiial@Base 3.1.0 - (arch-bits=32)_ZN3CEC18CCECCommandHandlerC1EPNS_13CCECBusDeviceEiiax@Base 3.1.0 - (arch-bits=64)_ZN3CEC18CCECCommandHandlerC2EPNS_13CCECBusDeviceEiial@Base 3.1.0 - (arch-bits=32)_ZN3CEC18CCECCommandHandlerC2EPNS_13CCECBusDeviceEiiax@Base 3.1.0 - _ZN3CEC18CCECCommandHandlerD0Ev@Base 2.1.4 - _ZN3CEC18CCECCommandHandlerD1Ev@Base 2.1.4 - _ZN3CEC18CCECCommandHandlerD2Ev@Base 2.1.4 - _ZN3CEC18CCECPlaybackDevice13GetDeckStatusENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC18CCECPlaybackDevice13SetDeckStatusENS_13cec_deck_infoE@Base 2.1.4 - _ZN3CEC18CCECPlaybackDevice17ResetDeviceStatusEv@Base 2.1.4 - _ZN3CEC18CCECPlaybackDevice18GetDeckControlModeENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC18CCECPlaybackDevice18SetDeckControlModeENS_21cec_deck_control_modeE@Base 2.1.4 - _ZN3CEC18CCECPlaybackDevice18TransmitDeckStatusENS_19cec_logical_addressEb@Base 2.1.4 - _ZN3CEC18CCECPlaybackDeviceC1EPNS_13CCECProcessorENS_19cec_logical_addressEt@Base 2.1.4 - _ZN3CEC18CCECPlaybackDeviceC2EPNS_13CCECProcessorENS_19cec_logical_addressEt@Base 2.1.4 - _ZN3CEC18CCECPlaybackDeviceD0Ev@Base 2.1.4 - _ZN3CEC18CCECPlaybackDeviceD1Ev@Base 2.1.4 - _ZN3CEC18CCECPlaybackDeviceD2Ev@Base 2.1.4 - _ZN3CEC19CAQPowerStatusCheck7ProcessEv@Base 2.1.4 - _ZN3CEC19CAQPowerStatusCheckD0Ev@Base 2.1.4 - _ZN3CEC19CAQPowerStatusCheckD1Ev@Base 2.1.4 - _ZN3CEC19CAQPowerStatusCheckD2Ev@Base 2.1.4 - _ZN3CEC19CCECRecordingDevice17ResetDeviceStatusEv@Base 2.1.4 - _ZN3CEC19CCECRecordingDeviceC1EPNS_13CCECProcessorENS_19cec_logical_addressEt@Base 2.1.4 - _ZN3CEC19CCECRecordingDeviceC2EPNS_13CCECProcessorENS_19cec_logical_addressEt@Base 2.1.4 - _ZN3CEC19CCECRecordingDeviceD0Ev@Base 2.1.4 - _ZN3CEC19CCECRecordingDeviceD1Ev@Base 2.1.4 - _ZN3CEC19CCECRecordingDeviceD2Ev@Base 2.1.4 - _ZN3CEC20libcec_configuration5ClearEv@Base 2.1.4 - _ZN3CEC21CCECStandbyProtection7ProcessEv@Base 2.1.4 - _ZN3CEC21CCECStandbyProtectionC1EPNS_13CCECProcessorE@Base 2.1.4 - _ZN3CEC21CCECStandbyProtectionC2EPNS_13CCECProcessorE@Base 2.1.4 - _ZN3CEC21CCECStandbyProtectionD0Ev@Base 2.1.4 - _ZN3CEC21CCECStandbyProtectionD1Ev@Base 2.1.4 - _ZN3CEC21CCECStandbyProtectionD2Ev@Base 2.1.4 - _ZN3CEC22CUSBCECAdapterCommands10SetAckMaskEt@Base 2.1.4 - _ZN3CEC22CUSBCECAdapterCommands11PingAdapterEv@Base 2.1.4 - _ZN3CEC22CUSBCECAdapterCommands11WriteEEPROMEv@Base 2.1.4 - _ZN3CEC22CUSBCECAdapterCommands14RequestSettingENS_23cec_adapter_messagecodeE@Base 2.1.4 - _ZN3CEC22CUSBCECAdapterCommands14SetLineTimeoutEh@Base 2.1.4 - _ZN3CEC22CUSBCECAdapterCommands15RequestSettingsEv@Base 2.1.4 - _ZN3CEC22CUSBCECAdapterCommands15SetActiveSourceEbb@Base 2.1.4 - _ZN3CEC22CUSBCECAdapterCommands15StartBootloaderEv@Base 2.1.4 - _ZN3CEC22CUSBCECAdapterCommands16GetConfigurationERNS_20libcec_configurationE@Base 2.1.4 - _ZN3CEC22CUSBCECAdapterCommands16RequestBuildDateEv@Base 2.1.4 - _ZN3CEC22CUSBCECAdapterCommands17SetControlledModeEb@Base 2.1.4 - _ZN3CEC22CUSBCECAdapterCommands17SetSettingOSDNameEPKc@Base 2.1.4 - _ZN3CEC22CUSBCECAdapterCommands18RequestAdapterTypeEv@Base 2.1.4 - _ZN3CEC22CUSBCECAdapterCommands20PersistConfigurationERKNS_20libcec_configurationE@Base 2.1.4 - _ZN3CEC22CUSBCECAdapterCommands20SetSettingCECVersionENS_11cec_versionE@Base 2.1.4 - _ZN3CEC22CUSBCECAdapterCommands20SetSettingDeviceTypeENS_15cec_device_typeE@Base 2.1.4 - _ZN3CEC22CUSBCECAdapterCommands21RequestSettingOSDNameEv@Base 2.1.4 - _ZN3CEC22CUSBCECAdapterCommands21SetSettingAutoEnabledEb@Base 2.1.4 - _ZN3CEC22CUSBCECAdapterCommands22RequestFirmwareVersionEv@Base 2.1.4 - _ZN3CEC22CUSBCECAdapterCommands24RequestSettingCECVersionEv@Base 2.1.4 - _ZN3CEC22CUSBCECAdapterCommands24RequestSettingDeviceTypeEv@Base 2.1.4 - _ZN3CEC22CUSBCECAdapterCommands25RequestSettingAutoEnabledEv@Base 2.1.4 - _ZN3CEC22CUSBCECAdapterCommands25SetSettingPhysicalAddressEt@Base 2.1.4 - _ZN3CEC22CUSBCECAdapterCommands28SetSettingLogicalAddressMaskEt@Base 2.1.4 - _ZN3CEC22CUSBCECAdapterCommands29RequestSettingPhysicalAddressEv@Base 2.1.4 - _ZN3CEC22CUSBCECAdapterCommands31SetSettingDefaultLogicalAddressENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC22CUSBCECAdapterCommands32RequestSettingLogicalAddressMaskEv@Base 2.1.4 - _ZN3CEC22CUSBCECAdapterCommands35RequestSettingDefaultLogicalAddressEv@Base 2.1.4 - _ZN3CEC22CUSBCECAdapterCommandsC1EPNS_27CUSBCECAdapterCommunicationE@Base 2.1.4 - _ZN3CEC22CUSBCECAdapterCommandsC2EPNS_27CUSBCECAdapterCommunicationE@Base 2.1.4 - _ZN3CEC23CCECAdapterMessageQueue15MessageReceivedERKNS_18CCECAdapterMessageE@Base 2.1.4 - _ZN3CEC23CCECAdapterMessageQueue21CheckTimedOutMessagesEv@Base 2.1.4 - _ZN3CEC23CCECAdapterMessageQueue24ProvidesExtendedResponseEv@Base 2.1.4 - _ZN3CEC23CCECAdapterMessageQueue5ClearEv@Base 2.1.4 - _ZN3CEC23CCECAdapterMessageQueue5WriteEPNS_18CCECAdapterMessageE@Base 2.1.4 - (arch-bits=32)_ZN3CEC23CCECAdapterMessageQueue7AddDataEPhj@Base 3.1.0 - (arch-bits=64)_ZN3CEC23CCECAdapterMessageQueue7AddDataEPhm@Base 3.1.0 - _ZN3CEC23CCECAdapterMessageQueue7ProcessEv@Base 2.1.4 - _ZN3CEC23CCECAdapterMessageQueueC1EPNS_27CUSBCECAdapterCommunicationE@Base 2.1.4 - _ZN3CEC23CCECAdapterMessageQueueC2EPNS_27CUSBCECAdapterCommunicationE@Base 2.1.4 - _ZN3CEC23CCECAdapterMessageQueueD0Ev@Base 2.1.4 - _ZN3CEC23CCECAdapterMessageQueueD1Ev@Base 2.1.4 - _ZN3CEC23CCECAdapterMessageQueueD2Ev@Base 2.1.4 - _ZN3CEC23CUSBCECAdapterDetection12FindAdaptersEPNS_22cec_adapter_descriptorEhPKc@Base 2.1.4 - _ZN3CEC23CUSBCECAdapterDetection13CanAutodetectEv@Base 2.1.4 - _ZN3CEC23CUSBCECAdapterDetection16FindAdaptersUdevEPNS_22cec_adapter_descriptorEhPKc@Base 3.1.0 - _ZN3CEC23CUSBCECAdapterDetection17FindAdaptersAppleEPNS_22cec_adapter_descriptorEhPKc@Base 3.1.0 - _ZN3CEC23CUSBCECAdapterDetection19FindAdaptersFreeBSDEPNS_22cec_adapter_descriptorEhPKc@Base 3.1.0 - _ZN3CEC23CUSBCECAdapterDetection19FindAdaptersWindowsEPNS_22cec_adapter_descriptorEhPKc@Base 3.1.0 - _ZN3CEC25CAdapterEepromWriteThread4StopEv@Base 2.1.4 - _ZN3CEC25CAdapterEepromWriteThread5WriteEv@Base 2.1.4 - _ZN3CEC25CAdapterEepromWriteThread7ProcessEv@Base 2.1.4 - _ZN3CEC25CAdapterEepromWriteThreadD0Ev@Base 2.1.4 - _ZN3CEC25CAdapterEepromWriteThreadD1Ev@Base 2.1.4 - _ZN3CEC25CAdapterEepromWriteThreadD2Ev@Base 2.1.4 - _ZN3CEC26CCECAllocateLogicalAddress7ProcessEv@Base 2.1.4 - _ZN3CEC26CCECAllocateLogicalAddressC1EPNS_13CCECProcessorESt10shared_ptrINS_10CCECClientEE@Base 3.0.1 - _ZN3CEC26CCECAllocateLogicalAddressC2EPNS_13CCECProcessorESt10shared_ptrINS_10CCECClientEE@Base 3.0.1 - _ZN3CEC26CCECAllocateLogicalAddressD0Ev@Base 2.1.4 - _ZN3CEC26CCECAllocateLogicalAddressD1Ev@Base 2.1.4 - _ZN3CEC26CCECAllocateLogicalAddressD2Ev@Base 2.1.4 - _ZN3CEC27CUSBCECAdapterCommunication10HandlePollERKNS_18CCECAdapterMessageE@Base 2.1.4 - _ZN3CEC27CUSBCECAdapterCommunication11GetPortNameB5cxx11Ev@Base 3.0.1 - _ZN3CEC27CUSBCECAdapterCommunication11GetVendorIdEv@Base 2.1.4 - _ZN3CEC27CUSBCECAdapterCommunication11PingAdapterEv@Base 2.1.4 - _ZN3CEC27CUSBCECAdapterCommunication11SendCommandENS_23cec_adapter_messagecodeERNS_18CCECAdapterMessageEb@Base 2.1.4 - _ZN3CEC27CUSBCECAdapterCommunication12CheckAdapterEj@Base 2.1.4 - _ZN3CEC27CUSBCECAdapterCommunication13IsInitialisedEv@Base 2.1.4 - _ZN3CEC27CUSBCECAdapterCommunication13MarkAsWaitingENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC27CUSBCECAdapterCommunication13WriteToDeviceEPNS_18CCECAdapterMessageE@Base 2.1.4 - _ZN3CEC27CUSBCECAdapterCommunication14GetAdapterTypeEv@Base 2.1.4 - (arch-bits=32)_ZN3CEC27CUSBCECAdapterCommunication14ReadFromDeviceEjj@Base 3.1.0 - (arch-bits=64)_ZN3CEC27CUSBCECAdapterCommunication14ReadFromDeviceEjm@Base 3.1.0 - _ZN3CEC27CUSBCECAdapterCommunication14SetInitialisedEb@Base 2.1.4 - _ZN3CEC27CUSBCECAdapterCommunication14SetLineTimeoutEh@Base 2.1.4 - _ZN3CEC27CUSBCECAdapterCommunication15ClearInputBytesEj@Base 2.1.4 - _ZN3CEC27CUSBCECAdapterCommunication15SetActiveSourceEbb@Base 2.1.4 - _ZN3CEC27CUSBCECAdapterCommunication15StartBootloaderEv@Base 2.1.4 - _ZN3CEC27CUSBCECAdapterCommunication16GetConfigurationERNS_20libcec_configurationE@Base 2.1.4 - _ZN3CEC27CUSBCECAdapterCommunication17ResetMessageQueueEv@Base 2.1.4 - _ZN3CEC27CUSBCECAdapterCommunication17SetControlledModeEb@Base 2.1.4 - _ZN3CEC27CUSBCECAdapterCommunication18GetFirmwareVersionEv@Base 2.1.4 - _ZN3CEC27CUSBCECAdapterCommunication18GetPhysicalAddressEv@Base 2.1.4 - _ZN3CEC27CUSBCECAdapterCommunication19GetLogicalAddressesEv@Base 2.1.4 - _ZN3CEC27CUSBCECAdapterCommunication19SetLogicalAddressesERKNS_21cec_logical_addressesE@Base 2.1.4 - _ZN3CEC27CUSBCECAdapterCommunication20GetFirmwareBuildDateEv@Base 2.1.4 - _ZN3CEC27CUSBCECAdapterCommunication20PersistConfigurationERKNS_20libcec_configurationE@Base 2.1.4 - _ZN3CEC27CUSBCECAdapterCommunication23IsRunningLatestFirmwareEv@Base 2.1.4 - _ZN3CEC27CUSBCECAdapterCommunication24ProvidesExtendedResponseEv@Base 2.1.4 - _ZN3CEC27CUSBCECAdapterCommunication28SupportsSourceLogicalAddressENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC27CUSBCECAdapterCommunication4OpenEjbb@Base 2.1.4 - _ZN3CEC27CUSBCECAdapterCommunication5CloseEv@Base 2.1.4 - _ZN3CEC27CUSBCECAdapterCommunication5WriteERKNS_11cec_commandERbhb@Base 2.1.4 - _ZN3CEC27CUSBCECAdapterCommunication6IsOpenEv@Base 2.1.4 - _ZN3CEC27CUSBCECAdapterCommunication7ProcessEv@Base 2.1.4 - _ZN3CEC27CUSBCECAdapterCommunicationC1EPNS_29IAdapterCommunicationCallbackEPKct@Base 2.1.4 - _ZN3CEC27CUSBCECAdapterCommunicationC2EPNS_29IAdapterCommunicationCallbackEPKct@Base 2.1.4 - _ZN3CEC27CUSBCECAdapterCommunicationD0Ev@Base 2.1.4 - _ZN3CEC27CUSBCECAdapterCommunicationD1Ev@Base 2.1.4 - _ZN3CEC27CUSBCECAdapterCommunicationD2Ev@Base 2.1.4 - _ZN3CEC28CCECAdapterMessageQueueEntry10IsResponseERKNS_18CCECAdapterMessageE@Base 2.1.4 - _ZN3CEC28CCECAdapterMessageQueueEntry11MessageCodeEv@Base 2.1.4 - _ZN3CEC28CCECAdapterMessageQueueEntry13IsResponseOldERKNS_18CCECAdapterMessageE@Base 2.1.4 - _ZN3CEC28CCECAdapterMessageQueueEntry15MessageReceivedERKNS_18CCECAdapterMessageE@Base 2.1.4 - _ZN3CEC28CCECAdapterMessageQueueEntry23MessageReceivedResponseERKNS_18CCECAdapterMessageE@Base 2.1.4 - _ZN3CEC28CCECAdapterMessageQueueEntry24ProvidesExtendedResponseEv@Base 2.1.4 - _ZN3CEC28CCECAdapterMessageQueueEntry30MessageReceivedCommandAcceptedERKNS_18CCECAdapterMessageE@Base 2.1.4 - _ZN3CEC28CCECAdapterMessageQueueEntry32MessageReceivedTransmitSucceededERKNS_18CCECAdapterMessageE@Base 2.1.4 - _ZN3CEC28CCECAdapterMessageQueueEntry4WaitEj@Base 2.1.4 - _ZN3CEC28CCECAdapterMessageQueueEntry6SignalEv@Base 2.1.4 - _ZN3CEC28CCECAdapterMessageQueueEntry9BroadcastEv@Base 2.1.4 - _ZN3CEC28CCECAdapterMessageQueueEntry9IsWaitingEv@Base 2.1.4 - _ZN3CEC28CCECAdapterMessageQueueEntryC1EPNS_23CCECAdapterMessageQueueEPNS_18CCECAdapterMessageE@Base 2.1.4 - _ZN3CEC28CCECAdapterMessageQueueEntryC2EPNS_23CCECAdapterMessageQueueEPNS_18CCECAdapterMessageE@Base 2.1.4 - _ZN3CEC28CCECAdapterMessageQueueEntryD0Ev@Base 2.1.4 - _ZN3CEC28CCECAdapterMessageQueueEntryD1Ev@Base 2.1.4 - _ZN3CEC28CCECAdapterMessageQueueEntryD2Ev@Base 2.1.4 - _ZN3CEC6CCECTV17ResetDeviceStatusEv@Base 2.1.4 - _ZN3CEC6CCECTVC1EPNS_13CCECProcessorENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC6CCECTVC2EPNS_13CCECProcessorENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC6CCECTVD0Ev@Base 2.1.4 - _ZN3CEC6CCECTVD1Ev@Base 2.1.4 - _ZN3CEC6CCECTVD2Ev@Base 2.1.4 - _ZN3CEC7CLibCEC10AddCommandERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC7CLibCEC10GetLibInfoEv@Base 2.1.4 - _ZN3CEC7CLibCEC10PollDeviceENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC7CLibCEC10VolumeDownEb@Base 2.1.4 - _ZN3CEC7CLibCEC11AudioEnableEb@Base 4.0 - _ZN3CEC7CLibCEC11AudioStatusEv@Base 2.1.4 - _ZN3CEC7CLibCEC11AudioUnmuteEv@Base 2.1.4 - _ZN3CEC7CLibCEC11PingAdapterEv@Base 2.1.4 - _ZN3CEC7CLibCEC11SetDeckInfoENS_13cec_deck_infoEb@Base 2.1.4 - _ZN3CEC7CLibCEC11SetHDMIPortENS_19cec_logical_addressEh@Base 2.1.4 - _ZN3CEC7CLibCEC12FindAdaptersEPNS_11cec_adapterEhPKc@Base 2.1.4 - (arch-bits=32)_ZN3CEC7CLibCEC12PrintVersionEjPcj@Base 3.1.0 - (arch-bits=64)_ZN3CEC7CLibCEC12PrintVersionEjPcm@Base 3.1.0 - _ZN3CEC7CLibCEC12SendKeypressENS_19cec_logical_addressENS_21cec_user_control_codeEb@Base 2.1.4 - _ZN3CEC7CLibCEC12SetMenuStateENS_14cec_menu_stateEb@Base 2.1.4 - _ZN3CEC7CLibCEC12SetOSDStringENS_19cec_logical_addressENS_19cec_display_controlEPKc@Base 2.1.4 - _ZN3CEC7CLibCEC13SetStreamPathENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC7CLibCEC13SetStreamPathEt@Base 2.1.4 - _ZN3CEC7CLibCEC14DetectAdaptersEPNS_22cec_adapter_descriptorEhPKcb@Base 2.1.4 - _ZN3CEC7CLibCEC14GetMaskForTypeENS_15cec_device_typeE@Base 2.1.4 - _ZN3CEC7CLibCEC14GetMaskForTypeENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC7CLibCEC14IsActiveDeviceENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC7CLibCEC14IsActiveSourceENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC7CLibCEC14PowerOnDevicesENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC7CLibCEC14RegisterClientERNS_20libcec_configurationE@Base 2.1.4 - _ZN3CEC7CLibCEC14SendKeyReleaseENS_19cec_logical_addressEb@Base 2.1.4 - _ZN3CEC7CLibCEC14StandbyDevicesENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC7CLibCEC15AudioToggleMuteEv@Base 2.1.4 - _ZN3CEC7CLibCEC15EnableCallbacksEPvPNS_13ICECCallbacksE@Base 2.1.4 - _ZN3CEC7CLibCEC15GetActiveSourceEv@Base 2.1.4 - _ZN3CEC7CLibCEC15SetActiveSourceENS_15cec_device_typeE@Base 2.1.4 - _ZN3CEC7CLibCEC15SetInactiveViewEv@Base 2.1.4 - _ZN3CEC7CLibCEC15StartBootloaderEv@Base 2.1.4 - _ZN3CEC7CLibCEC15VersionToStringB5cxx11Ej@Base 3.0.1 - _ZN3CEC7CLibCEC16GetActiveDevicesEv@Base 2.1.4 - _ZN3CEC7CLibCEC16GetDeviceOSDNameB5cxx11ENS_19cec_logical_addressE@Base 4.0 - _ZN3CEC7CLibCEC16SetConfigurationEPKNS_20libcec_configurationE@Base 2.1.4 - _ZN3CEC7CLibCEC16SwitchMonitoringEb@Base 2.1.4 - _ZN3CEC7CLibCEC16VendorIdToStringEj@Base 3.0.1 - _ZN3CEC7CLibCEC17CommandFromStringEPKc@Base 3.0.1 - _ZN3CEC7CLibCEC17GetDeviceVendorIdENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC7CLibCEC17SetLogicalAddressENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC7CLibCEC18IsActiveDeviceTypeENS_15cec_device_typeE@Base 2.1.4 - _ZN3CEC7CLibCEC18SetDeckControlModeENS_21cec_deck_control_modeEb@Base 2.1.4 - _ZN3CEC7CLibCEC18SetPhysicalAddressEt@Base 2.1.4 - _ZN3CEC7CLibCEC19GetDeviceCecVersionENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC7CLibCEC19GetLogicalAddressesEv@Base 2.1.4 - _ZN3CEC7CLibCEC19InitVideoStandaloneEv@Base 2.1.4 - _ZN3CEC7CLibCEC19RescanActiveDevicesEv@Base 2.1.4 - _ZN3CEC7CLibCEC20CheckKeypressTimeoutEv@Base 2.1.4 - _ZN3CEC7CLibCEC20GetDeviceInformationEPKcPNS_20libcec_configurationEj@Base 2.1.4 - _ZN3CEC7CLibCEC20GetDevicePowerStatusENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC7CLibCEC20IsLibCECActiveSourceEv@Base 2.1.4 - _ZN3CEC7CLibCEC20PersistConfigurationEPNS_20libcec_configurationE@Base 2.1.4 - _ZN3CEC7CLibCEC21GetDeviceMenuLanguageB5cxx11ENS_19cec_logical_addressE@Base 4.0 - _ZN3CEC7CLibCEC22IsValidPhysicalAddressEt@Base 2.1.4 - _ZN3CEC7CLibCEC23CanPersistConfigurationEv@Base 2.1.4 - _ZN3CEC7CLibCEC23GetCurrentConfigurationEPNS_20libcec_configurationE@Base 2.1.4 - _ZN3CEC7CLibCEC24GetDevicePhysicalAddressENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC7CLibCEC4OpenEPKcj@Base 2.1.4 - _ZN3CEC7CLibCEC5AlertENS_12libcec_alertERKNS_16libcec_parameterE@Base 2.1.4 - _ZN3CEC7CLibCEC5CloseEv@Base 2.1.4 - _ZN3CEC7CLibCEC6AddLogENS_13cec_log_levelEPKcz@Base 2.1.4 - _ZN3CEC7CLibCEC7GetTypeENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC7CLibCEC8ToStringENS_10cec_opcodeE@Base 2.1.4 - _ZN3CEC7CLibCEC8ToStringENS_11cec_versionE@Base 2.1.4 - _ZN3CEC7CLibCEC8ToStringENS_13cec_deck_infoE@Base 2.1.4 - _ZN3CEC7CLibCEC8ToStringENS_14cec_menu_stateE@Base 2.1.4 - _ZN3CEC7CLibCEC8ToStringENS_15cec_device_typeE@Base 3.0.1 - _ZN3CEC7CLibCEC8ToStringENS_16cec_adapter_typeE@Base 2.1.4 - _ZN3CEC7CLibCEC8ToStringENS_16cec_audio_statusE@Base 2.1.4 - _ZN3CEC7CLibCEC8ToStringENS_16cec_power_statusE@Base 2.1.4 - _ZN3CEC7CLibCEC8ToStringENS_19cec_logical_addressE@Base 2.1.4 - _ZN3CEC7CLibCEC8ToStringENS_21cec_deck_control_modeE@Base 2.1.4 - _ZN3CEC7CLibCEC8ToStringENS_21cec_user_control_codeE@Base 2.1.4 - _ZN3CEC7CLibCEC8ToStringENS_23cec_system_audio_statusE@Base 2.1.4 - _ZN3CEC7CLibCEC8TransmitERKNS_11cec_commandE@Base 2.1.4 - _ZN3CEC7CLibCEC8VolumeUpEb@Base 2.1.4 - _ZN3CEC7CLibCEC9AudioMuteEv@Base 2.1.4 - _ZN3CEC7CLibCECC1Ev@Base 2.1.4 - _ZN3CEC7CLibCECC2Ev@Base 2.1.4 - _ZN3CEC7CLibCECD0Ev@Base 2.1.4 - _ZN3CEC7CLibCECD1Ev@Base 2.1.4 - _ZN3CEC7CLibCECD2Ev@Base 2.1.4 - _ZN3CEC9CCECTuner17ResetDeviceStatusEv@Base 2.1.4 - _ZN3CEC9CCECTunerC1EPNS_13CCECProcessorENS_19cec_logical_addressEt@Base 2.1.4 - _ZN3CEC9CCECTunerC2EPNS_13CCECProcessorENS_19cec_logical_addressEt@Base 2.1.4 - _ZN3CEC9CCECTunerD0Ev@Base 2.1.4 - _ZN3CEC9CCECTunerD1Ev@Base 2.1.4 - _ZN3CEC9CCECTunerD2Ev@Base 2.1.4 - _ZN3CEC9CResponse4WaitEj@Base 2.1.4 - _ZN3CEC9CResponse9BroadcastEv@Base 2.1.4 - _ZN3CEC9CResponseC1ENS_10cec_opcodeE@Base 2.1.4 - _ZN3CEC9CResponseC2ENS_10cec_opcodeE@Base 2.1.4 - _ZN3CEC9CResponseD1Ev@Base 2.1.4 - _ZN3CEC9CResponseD2Ev@Base 2.1.4 - _ZNK3CEC10CCECClient15GetDeviceByTypeENS_15cec_device_typeE@Base 2.1.4 - _ZNK3CEC13CCECBusDevice12GetProcessorEv@Base 2.1.4 - _ZNK3CEC13CCECBusDevice13GetLastActiveEv@Base 2.1.4 - _ZNK3CEC13CCECBusDevice14IsActiveSourceEv@Base 2.1.4 - _ZNK3CEC13CCECBusDevice17GetLogicalAddressEv@Base 2.1.4 - _ZNK3CEC13CCECBusDevice21GetLogicalAddressNameEv@Base 2.1.4 - _ZNK3CEC13CCECBusDevice7GetTypeEv@Base 2.1.4 - _ZNK3CEC13CCECDeviceMap13GetChildrenOfERSt6vectorIPNS_13CCECBusDeviceESaIS3_EES3_@Base 2.1.4 - _ZNK3CEC13CCECDeviceMap14GetWakeDevicesERKNS_20libcec_configurationERSt6vectorIPNS_13CCECBusDeviceESaIS6_EE@Base 2.1.4 - _ZNK3CEC13CCECDeviceMap15GetActiveSourceEv@Base 2.1.4 - _ZNK3CEC13CCECDeviceMap18GetPowerOffDevicesERKNS_20libcec_configurationERSt6vectorIPNS_13CCECBusDeviceESaIS6_EE@Base 2.1.4 - _ZNK3CEC13CCECDeviceMap19GetLibCECControlledERSt6vectorIPNS_13CCECBusDeviceESaIS3_EE@Base 2.1.4 - _ZNK3CEC13CCECDeviceMap2AtENS_19cec_logical_addressE@Base 2.1.4 - _ZNK3CEC13CCECDeviceMap2AtEh@Base 2.1.4 - _ZNK3CEC13CCECDeviceMap3GetERSt6vectorIPNS_13CCECBusDeviceESaIS3_EE@Base 2.1.4 - _ZNK3CEC13CCECDeviceMap9GetActiveERSt6vectorIPNS_13CCECBusDeviceESaIS3_EE@Base 2.1.4 - _ZNK3CEC13CCECDeviceMap9GetByTypeENS_15cec_device_typeERSt6vectorIPNS_13CCECBusDeviceESaIS4_EE@Base 2.1.4 - _ZNK3CEC13CCECDeviceMapixENS_19cec_logical_addressE@Base 2.1.4 - _ZNK3CEC13CCECDeviceMapixEh@Base 2.1.4 - _ZNK3CEC13CCECProcessor14GetAudioSystemEv@Base 2.1.4 - _ZNK3CEC13CCECProcessor17GetPlaybackDeviceENS_19cec_logical_addressE@Base 2.1.4 - _ZNK3CEC13CCECProcessor17IsHandledByLibCECENS_19cec_logical_addressE@Base 2.1.4 - _ZNK3CEC13CCECProcessor18GetAdapterVendorIdEv@Base 2.1.4 - _ZNK3CEC13CCECProcessor18GetRecordingDeviceENS_19cec_logical_addressE@Base 2.1.4 - _ZNK3CEC13CCECProcessor19GetAdapterProductIdEv@Base 2.1.4 - _ZNK3CEC13CCECProcessor26GetDetectedPhysicalAddressEv@Base 2.1.4 - _ZNK3CEC13CCECProcessor5GetTVEv@Base 2.1.4 - _ZNK3CEC13CCECProcessor6GetLibEv@Base 2.1.4 - _ZNK3CEC13CCECProcessor8GetTunerENS_19cec_logical_addressE@Base 2.1.4 - _ZNK3CEC13CCECProcessor9GetDeviceENS_19cec_logical_addressE@Base 2.1.4 - _ZNK3CEC17CVLCommandHandler18SupportsDeviceTypeENS_15cec_device_typeE@Base 2.1.4 - _ZNK3CEC17CVLCommandHandler24GetReplacementDeviceTypeENS_15cec_device_typeE@Base 2.1.4 - _ZNK3CEC18CCECAdapterMessage10NeedsRetryEv@Base 2.1.4 - _ZNK3CEC18CCECAdapterMessage10ResponseToEv@Base 2.1.4 - _ZNK3CEC18CCECAdapterMessage11DestinationEv@Base 2.1.4 - _ZNK3CEC18CCECAdapterMessage12ReplyIsErrorEv@Base 2.1.4 - _ZNK3CEC18CCECAdapterMessage14IsTransmissionEv@Base 4.0 - _ZNK3CEC18CCECAdapterMessage15HasStartMessageEv@Base 2.1.4 - _ZNK3CEC18CCECAdapterMessage16PushToCecCommandERNS_11cec_commandE@Base 2.1.4 - _ZNK3CEC18CCECAdapterMessage2AtEh@Base 2.1.4 - _ZNK3CEC18CCECAdapterMessage4SizeEv@Base 2.1.4 - _ZNK3CEC18CCECAdapterMessage5IsACKEv@Base 2.1.4 - _ZNK3CEC18CCECAdapterMessage5IsEOMEv@Base 2.1.4 - _ZNK3CEC18CCECAdapterMessage5ReplyEv@Base 2.1.4 - _ZNK3CEC18CCECAdapterMessage7IsEmptyEv@Base 2.1.4 - _ZNK3CEC18CCECAdapterMessage7IsErrorEv@Base 2.1.4 - _ZNK3CEC18CCECAdapterMessage7MessageEv@Base 2.1.4 - _ZNK3CEC18CCECAdapterMessage8ToStringB5cxx11Ev@Base 3.0.1 - _ZNK3CEC18CCECAdapterMessage9InitiatorEv@Base 2.1.4 - _ZNK3CEC18CCECAdapterMessageixEh@Base 2.1.4 - _ZNK3CEC18CCECCommandHandler12GetMyDevicesERSt6vectorIPNS_13CCECBusDeviceESaIS3_EE@Base 2.1.4 - _ZNK3CEC18CCECCommandHandler18GetTransmitRetriesEv@Base 2.1.4 - _ZNK3CEC18CCECCommandHandler18SupportsDeviceTypeENS_15cec_device_typeE@Base 2.1.4 - _ZNK3CEC18CCECCommandHandler19ActiveSourcePendingEv@Base 2.1.4 - _ZNK3CEC18CCECCommandHandler24GetReplacementDeviceTypeENS_15cec_device_typeE@Base 2.1.4 - _ZNK3CEC18CCECCommandHandler26GetDeviceByPhysicalAddressEt@Base 2.1.4 - _ZNK3CEC18CCECCommandHandler34SendDeckStatusUpdateOnActiveSourceEv@Base 2.1.4 - _ZNK3CEC18CCECCommandHandler9GetDeviceENS_19cec_logical_addressE@Base 2.1.4 - _ZNK3CEC27CUSBCECAdapterCommunication18GetAdapterVendorIdEv@Base 2.1.4 - _ZNK3CEC27CUSBCECAdapterCommunication19GetAdapterProductIdEv@Base 2.1.4 - _ZNK3CEC27CUSBCECAdapterCommunication8GetErrorB5cxx11Ev@Base 3.0.1 - _ZNK3CEC28CCECAdapterMessageQueueEntry19TimedOutOrSucceededEv@Base 2.1.4 - _ZNK3CEC28CCECAdapterMessageQueueEntry8ToStringEv@Base 2.1.4 - _ZNK3CEC7CLibCEC18GetAdapterVendorIdEv@Base 2.1.4 - _ZNK3CEC7CLibCEC19GetAdapterProductIdEv@Base 2.1.4 - (arch-bits=32)_ZNSt11_Deque_baseIN3CEC11cec_commandESaIS1_EE17_M_initialize_mapEj@Base 3.1.0 - (arch-bits=64)_ZNSt11_Deque_baseIN3CEC11cec_commandESaIS1_EE17_M_initialize_mapEm@Base 3.1.0 - (optional=templinst)_ZNSt11_Deque_baseIN3CEC11cec_commandESaIS1_EED1Ev@Base 2.1.4 - (optional=templinst)_ZNSt11_Deque_baseIN3CEC11cec_commandESaIS1_EED2Ev@Base 2.1.4 - (arch-bits=32)_ZNSt11_Deque_baseIPN3CEC13CCallbackWrapESaIS2_EE17_M_initialize_mapEj@Base 3.1.0 - (arch-bits=64)_ZNSt11_Deque_baseIPN3CEC13CCallbackWrapESaIS2_EE17_M_initialize_mapEm@Base 3.1.0 - (arch-bits=32)_ZNSt11_Deque_baseIPN3CEC28CCECAdapterMessageQueueEntryESaIS2_EE17_M_initialize_mapEj@Base 3.1.0 - (arch-bits=64)_ZNSt11_Deque_baseIPN3CEC28CCECAdapterMessageQueueEntryESaIS2_EE17_M_initialize_mapEm@Base 3.1.0 - (optional=templinst|arch=armel)_ZNSt15_Sp_counted_ptrIDnLN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 3.1.0 - (optional=templinst|arch=!armel)_ZNSt15_Sp_counted_ptrIDnLN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 3.0.1 - (optional=templinst|arch=armel)_ZNSt15_Sp_counted_ptrIPN3CEC10CCECClientELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 3.1.0 - (optional=templinst|arch=armel)_ZNSt15_Sp_counted_ptrIPN3CEC10CCECClientELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 3.1.0 - (optional=templinst|arch=armel)_ZNSt15_Sp_counted_ptrIPN3CEC10CCECClientELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 3.1.0 - (optional=templinst|arch=armel)_ZNSt15_Sp_counted_ptrIPN3CEC10CCECClientELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 3.1.0 - (optional=templinst|arch=armel)_ZNSt15_Sp_counted_ptrIPN3CEC10CCECClientELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 3.1.0 - (optional=templinst|arch=armel)_ZNSt15_Sp_counted_ptrIPN3CEC10CCECClientELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 3.1.0 - (optional=templinst|arch=!armel)_ZNSt15_Sp_counted_ptrIPN3CEC10CCECClientELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 3.0.1 - (optional=templinst|arch=!armel)_ZNSt15_Sp_counted_ptrIPN3CEC10CCECClientELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 3.0.1 - (optional=templinst|arch=!armel)_ZNSt15_Sp_counted_ptrIPN3CEC10CCECClientELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 3.0.1 - (optional=templinst|arch=!armel)_ZNSt15_Sp_counted_ptrIPN3CEC10CCECClientELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 3.0.1 - (optional=templinst|arch=!armel)_ZNSt15_Sp_counted_ptrIPN3CEC10CCECClientELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 3.0.1 - (optional=templinst|arch=!armel)_ZNSt15_Sp_counted_ptrIPN3CEC10CCECClientELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 3.0.1 - (optional=templinst|arch=armel)_ZNSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 3.1.0 - (optional=templinst|arch=armel)_ZNSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE1EE10_M_releaseEv@Base 3.1.0 - (optional=templinst|arch=!armel)_ZNSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 3.0.1 - (optional=templinst|arch=!armel)_ZNSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE10_M_releaseEv@Base 3.0.1 - (optional=templinst)_ZNSt5dequeIN3CEC11cec_commandESaIS1_EE16_M_push_back_auxIJRKS1_EEEvDpOT_@Base 3.0.1 - (optional=templinst)_ZNSt5dequeIPN3CEC13CCallbackWrapESaIS2_EE16_M_push_back_auxIJRKS2_EEEvDpOT_@Base 3.0.1 - (optional=templinst)_ZNSt5dequeIPN3CEC28CCECAdapterMessageQueueEntryESaIS2_EE16_M_push_back_auxIJRKS2_EEEvDpOT_@Base 3.0.1 - (optional=templinst)_ZNSt6vectorIN3CEC11cec_commandESaIS1_EE19_M_emplace_back_auxIJRKS1_EEEvDpOT_@Base 3.0.1 - (optional=templinst)_ZNSt6vectorIN3CEC20device_type_change_tESaIS1_EE19_M_emplace_back_auxIJRKS1_EEEvDpOT_@Base 3.0.1 - (optional=templinst)_ZNSt6vectorIN3CEC20device_type_change_tESaIS1_EED1Ev@Base 3.0.1 - (optional=templinst)_ZNSt6vectorIN3CEC20device_type_change_tESaIS1_EED2Ev@Base 3.0.1 - (optional=templinst)_ZNSt6vectorIPN3CEC13CCECBusDeviceESaIS2_EE19_M_emplace_back_auxIJRKS2_EEEvDpOT_@Base 3.0.1 - (optional=templinst)_ZNSt6vectorIPN3CEC13CCECBusDeviceESaIS2_EE19_M_emplace_back_auxIJS2_EEEvDpOT_@Base 3.0.1 - (optional=templinst)_ZNSt6vectorIPN3CEC13CCECBusDeviceESaIS2_EEaSERKS4_@Base 2.1.4 - (optional=templinst)_ZNSt6vectorISt10shared_ptrIN3CEC10CCECClientEESaIS3_EE19_M_emplace_back_auxIJRKS3_EEEvDpOT_@Base 3.0.1 - (optional=templinst)_ZNSt6vectorISt10shared_ptrIN3CEC10CCECClientEESaIS3_EED1Ev@Base 3.0.1 - (optional=templinst)_ZNSt6vectorISt10shared_ptrIN3CEC10CCECClientEESaIS3_EED2Ev@Base 3.0.1 - (arch-bits=64)_ZNSt6vectorImSaImEE19_M_emplace_back_auxIJRKmEEEvDpOT_@Base 3.1.0 - (arch-bits=32)_ZNSt6vectorIySaIyEE19_M_emplace_back_auxIJRKyEEEvDpOT_@Base 3.1.0 - (optional=templinst)_ZNSt8_Rb_treeIN3CEC10cec_opcodeES1_St9_IdentityIS1_ESt4lessIS1_ESaIS1_EE16_M_insert_uniqueIRKS1_EESt4pairISt17_Rb_tree_iteratorIS1_EbEOT_@Base 3.0.1 - (optional=templinst)_ZNSt8_Rb_treeIN3CEC10cec_opcodeES1_St9_IdentityIS1_ESt4lessIS1_ESaIS1_EE8_M_eraseEPSt13_Rb_tree_nodeIS1_E@Base 2.1.4 - (optional=templinst|arch=alpha armel armhf hurd-i386 i386 mips mipsel powerpc ppc64 s390x)_ZNSt8_Rb_treeIN3CEC10cec_opcodeESt4pairIKS1_PNS0_9CResponseEESt10_Select1stIS6_ESt4lessIS1_ESaIS6_EE24_M_get_insert_unique_posERS3_@Base 3.1.gcc6 - (optional=templinst|arch=amd64 arm64 hppa m68k mips64el ppc64el sparc64 x32)_ZNSt8_Rb_treeIN3CEC10cec_opcodeESt4pairIKS1_PNS0_9CResponseEESt10_Select1stIS6_ESt4lessIS1_ESaIS6_EE29_M_get_insert_hint_unique_posESt23_Rb_tree_const_iteratorIS6_ERS3_@Base 3.0.1 - (optional=templinst)_ZNSt8_Rb_treeIN3CEC10cec_opcodeESt4pairIKS1_PNS0_9CResponseEESt10_Select1stIS6_ESt4lessIS1_ESaIS6_EE8_M_eraseEPSt13_Rb_tree_nodeIS6_E@Base 2.1.4 - (optional=templinst)_ZNSt8_Rb_treeIN3CEC10cec_opcodeESt4pairIKS1_St6vectorINS0_11cec_commandESaIS5_EEESt10_Select1stIS8_ESt4lessIS1_ESaIS8_EE16_M_insert_uniqueIS2_IS1_S7_EEES2_ISt17_Rb_tree_iteratorIS8_EbEOT_@Base 3.0.1 - (optional=templinst)_ZNSt8_Rb_treeIN3CEC10cec_opcodeESt4pairIKS1_St6vectorINS0_11cec_commandESaIS5_EEESt10_Select1stIS8_ESt4lessIS1_ESaIS8_EE8_M_eraseEPSt13_Rb_tree_nodeIS8_E@Base 2.1.4 - (optional=templinst)_ZNSt8_Rb_treeIN3CEC19cec_logical_addressESt4pairIKS1_PNS0_13CCECBusDeviceEESt10_Select1stIS6_ESt4lessIS1_ESaIS6_EE16_M_insert_uniqueIS2_IS1_S5_EEES2_ISt17_Rb_tree_iteratorIS6_EbEOT_@Base 3.0.1 - (optional=templinst)_ZNSt8_Rb_treeIN3CEC19cec_logical_addressESt4pairIKS1_PNS0_13CCECBusDeviceEESt10_Select1stIS6_ESt4lessIS1_ESaIS6_EE8_M_eraseEPSt13_Rb_tree_nodeIS6_E@Base 2.1.4 - (optional=templinst)_ZNSt8_Rb_treeIN3CEC19cec_logical_addressESt4pairIKS1_St10shared_ptrINS0_10CCECClientEEESt10_Select1stIS7_ESt4lessIS1_ESaIS7_EE5eraseERS3_@Base 3.0.1 - (optional=templinst)_ZNSt8_Rb_treeIN3CEC19cec_logical_addressESt4pairIKS1_St10shared_ptrINS0_10CCECClientEEESt10_Select1stIS7_ESt4lessIS1_ESaIS7_EE8_M_eraseEPSt13_Rb_tree_nodeIS7_E@Base 3.0.1 - (arch-bits=64)_ZNSt8_Rb_treeImSt4pairIKmPN3CEC28CCECAdapterMessageQueueEntryEESt10_Select1stIS5_ESt4lessImESaIS5_EE16_M_insert_uniqueIS0_ImS4_EEES0_ISt17_Rb_tree_iteratorIS5_EbEOT_@Base 3.1.0 - (arch-bits=64)_ZNSt8_Rb_treeImSt4pairIKmPN3CEC28CCECAdapterMessageQueueEntryEESt10_Select1stIS5_ESt4lessImESaIS5_EE5eraseERS1_@Base 3.1.0 - (arch-bits=64)_ZNSt8_Rb_treeImSt4pairIKmPN3CEC28CCECAdapterMessageQueueEntryEESt10_Select1stIS5_ESt4lessImESaIS5_EE8_M_eraseEPSt13_Rb_tree_nodeIS5_E@Base 3.1.0 - (arch-bits=32)_ZNSt8_Rb_treeIySt4pairIKyPN3CEC28CCECAdapterMessageQueueEntryEESt10_Select1stIS5_ESt4lessIyESaIS5_EE16_M_insert_uniqueIS0_IyS4_EEES0_ISt17_Rb_tree_iteratorIS5_EbEOT_@Base 3.1.0 - (arch-bits=32)_ZNSt8_Rb_treeIySt4pairIKyPN3CEC28CCECAdapterMessageQueueEntryEESt10_Select1stIS5_ESt4lessIyESaIS5_EE5eraseERS1_@Base 3.1.0 - (arch-bits=32)_ZNSt8_Rb_treeIySt4pairIKyPN3CEC28CCECAdapterMessageQueueEntryEESt10_Select1stIS5_ESt4lessIyESaIS5_EE8_M_eraseEPSt13_Rb_tree_nodeIS5_E@Base 3.1.0 - _ZTIN10P8PLATFORM11CSerialPortE@Base 3.1.0 - _ZTIN10P8PLATFORM11PreventCopyE@Base 3.1.0 - _ZTIN10P8PLATFORM12SyncedBufferIN3CEC11cec_commandEEE@Base 3.1.0 - _ZTIN10P8PLATFORM12SyncedBufferIPN3CEC13CCallbackWrapEEE@Base 3.1.0 - _ZTIN10P8PLATFORM12SyncedBufferIPN3CEC28CCECAdapterMessageQueueEntryEEE@Base 3.1.0 - _ZTIN10P8PLATFORM13CCommonSocketIiEE@Base 3.1.0 - _ZTIN10P8PLATFORM13CNVEdidParserE@Base 3.1.0 - _ZTIN10P8PLATFORM13CSerialSocketE@Base 3.1.0 - _ZTIN10P8PLATFORM14CADLEdidParserE@Base 3.1.0 - _ZTIN10P8PLATFORM14CConditionImplE@Base 3.1.0 - _ZTIN10P8PLATFORM16CProtectedSocketINS_13CSerialSocketEEE@Base 3.1.0 - _ZTIN10P8PLATFORM16CRandrEdidParserE@Base 4.0.1 - _ZTIN10P8PLATFORM6CEventE@Base 3.1.0 - _ZTIN10P8PLATFORM7CThreadE@Base 3.1.0 - _ZTIN10P8PLATFORM7ISocketE@Base 3.1.0 - _ZTIN3CEC10CCECClientE@Base 2.1.4 - _ZTIN3CEC11ICECAdapterE@Base 2.1.4 - _ZTIN3CEC13CCECBusDeviceE@Base 2.1.4 - _ZTIN3CEC13CCECDeviceMapE@Base 2.1.4 - _ZTIN3CEC13CCECProcessorE@Base 2.1.4 - _ZTIN3CEC15CAdapterFactoryE@Base 2.1.4 - _ZTIN3CEC15CCECAudioSystemE@Base 2.1.4 - _ZTIN3CEC15CCECInputBufferE@Base 2.1.4 - _ZTIN3CEC17CANCommandHandlerE@Base 2.1.4 - _ZTIN3CEC17CAQCommandHandlerE@Base 2.1.4 - _ZTIN3CEC17CImageViewOnCheckE@Base 2.1.4 - _ZTIN3CEC17CPHCommandHandlerE@Base 2.1.4 - _ZTIN3CEC17CRHCommandHandlerE@Base 2.1.4 - _ZTIN3CEC17CRLCommandHandlerE@Base 2.1.4 - _ZTIN3CEC17CSLCommandHandlerE@Base 2.1.4 - _ZTIN3CEC17CVLCommandHandlerE@Base 2.1.4 - _ZTIN3CEC18CAdapterPingThreadE@Base 2.1.4 - _ZTIN3CEC18CCECCommandHandlerE@Base 2.1.4 - _ZTIN3CEC18CCECPlaybackDeviceE@Base 2.1.4 - _ZTIN3CEC19CAQPowerStatusCheckE@Base 2.1.4 - _ZTIN3CEC19CCECRecordingDeviceE@Base 2.1.4 - _ZTIN3CEC21CCECStandbyProtectionE@Base 2.1.4 - _ZTIN3CEC21IAdapterCommunicationE@Base 2.1.4 - _ZTIN3CEC23CCECAdapterMessageQueueE@Base 2.1.4 - _ZTIN3CEC25CAdapterEepromWriteThreadE@Base 2.1.4 - _ZTIN3CEC26CCECAllocateLogicalAddressE@Base 2.1.4 - _ZTIN3CEC27CUSBCECAdapterCommunicationE@Base 2.1.4 - _ZTIN3CEC28CCECAdapterMessageQueueEntryE@Base 2.1.4 - _ZTIN3CEC29IAdapterCommunicationCallbackE@Base 2.1.4 - _ZTIN3CEC6CCECTVE@Base 2.1.4 - _ZTIN3CEC7CLibCECE@Base 2.1.4 - _ZTIN3CEC9CCECTunerE@Base 2.1.4 - (arch=armel)_ZTIN9__gnu_cxx7__mutexE@Base 3.1.0 - (arch=armel)_ZTISt11_Mutex_baseILN9__gnu_cxx12_Lock_policyE1EE@Base 3.1.0 - (arch=!armel)_ZTISt11_Mutex_baseILN9__gnu_cxx12_Lock_policyE2EE@Base 3.1.0 - (arch=armel)_ZTISt15_Sp_counted_ptrIPN3CEC10CCECClientELN9__gnu_cxx12_Lock_policyE1EE@Base 3.1.0 - (arch=!armel)_ZTISt15_Sp_counted_ptrIPN3CEC10CCECClientELN9__gnu_cxx12_Lock_policyE2EE@Base 3.1.0 - (arch=armel)_ZTISt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE1EE@Base 3.1.0 - (arch=!armel)_ZTISt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE@Base 3.1.0 - _ZTSN10P8PLATFORM11CSerialPortE@Base 3.1.0 - _ZTSN10P8PLATFORM11PreventCopyE@Base 3.1.0 - _ZTSN10P8PLATFORM12SyncedBufferIN3CEC11cec_commandEEE@Base 3.1.0 - _ZTSN10P8PLATFORM12SyncedBufferIPN3CEC13CCallbackWrapEEE@Base 3.1.0 - _ZTSN10P8PLATFORM12SyncedBufferIPN3CEC28CCECAdapterMessageQueueEntryEEE@Base 3.1.0 - _ZTSN10P8PLATFORM13CCommonSocketIiEE@Base 3.1.0 - _ZTSN10P8PLATFORM13CNVEdidParserE@Base 3.1.0 - _ZTSN10P8PLATFORM13CSerialSocketE@Base 3.1.0 - _ZTSN10P8PLATFORM14CADLEdidParserE@Base 3.1.0 - _ZTSN10P8PLATFORM14CConditionImplE@Base 3.1.0 - _ZTSN10P8PLATFORM16CProtectedSocketINS_13CSerialSocketEEE@Base 3.1.0 - _ZTSN10P8PLATFORM16CRandrEdidParserE@Base 4.0.1 - _ZTSN10P8PLATFORM6CEventE@Base 3.1.0 - _ZTSN10P8PLATFORM7CThreadE@Base 3.1.0 - _ZTSN10P8PLATFORM7ISocketE@Base 3.1.0 - _ZTSN3CEC10CCECClientE@Base 2.1.4 - _ZTSN3CEC11ICECAdapterE@Base 2.1.4 - _ZTSN3CEC13CCECBusDeviceE@Base 2.1.4 - _ZTSN3CEC13CCECDeviceMapE@Base 2.1.4 - _ZTSN3CEC13CCECProcessorE@Base 2.1.4 - _ZTSN3CEC15CAdapterFactoryE@Base 2.1.4 - _ZTSN3CEC15CCECAudioSystemE@Base 2.1.4 - _ZTSN3CEC15CCECInputBufferE@Base 2.1.4 - _ZTSN3CEC17CANCommandHandlerE@Base 2.1.4 - _ZTSN3CEC17CAQCommandHandlerE@Base 2.1.4 - _ZTSN3CEC17CImageViewOnCheckE@Base 2.1.4 - _ZTSN3CEC17CPHCommandHandlerE@Base 2.1.4 - _ZTSN3CEC17CRHCommandHandlerE@Base 2.1.4 - _ZTSN3CEC17CRLCommandHandlerE@Base 2.1.4 - _ZTSN3CEC17CSLCommandHandlerE@Base 2.1.4 - _ZTSN3CEC17CVLCommandHandlerE@Base 2.1.4 - _ZTSN3CEC18CAdapterPingThreadE@Base 2.1.4 - _ZTSN3CEC18CCECCommandHandlerE@Base 2.1.4 - _ZTSN3CEC18CCECPlaybackDeviceE@Base 2.1.4 - _ZTSN3CEC19CAQPowerStatusCheckE@Base 2.1.4 - _ZTSN3CEC19CCECRecordingDeviceE@Base 2.1.4 - _ZTSN3CEC21CCECStandbyProtectionE@Base 2.1.4 - _ZTSN3CEC21IAdapterCommunicationE@Base 2.1.4 - _ZTSN3CEC23CCECAdapterMessageQueueE@Base 2.1.4 - _ZTSN3CEC25CAdapterEepromWriteThreadE@Base 2.1.4 - _ZTSN3CEC26CCECAllocateLogicalAddressE@Base 2.1.4 - _ZTSN3CEC27CUSBCECAdapterCommunicationE@Base 2.1.4 - _ZTSN3CEC28CCECAdapterMessageQueueEntryE@Base 2.1.4 - _ZTSN3CEC29IAdapterCommunicationCallbackE@Base 2.1.4 - _ZTSN3CEC6CCECTVE@Base 2.1.4 - _ZTSN3CEC7CLibCECE@Base 2.1.4 - _ZTSN3CEC9CCECTunerE@Base 2.1.4 - (arch=armel)_ZTSN9__gnu_cxx7__mutexE@Base 3.1.0 - (arch=armel)_ZTSSt11_Mutex_baseILN9__gnu_cxx12_Lock_policyE1EE@Base 3.1.0 - (arch=!armel)_ZTSSt11_Mutex_baseILN9__gnu_cxx12_Lock_policyE2EE@Base 3.1.0 - (arch=armel)_ZTSSt15_Sp_counted_ptrIPN3CEC10CCECClientELN9__gnu_cxx12_Lock_policyE1EE@Base 3.1.0 - (arch=!armel)_ZTSSt15_Sp_counted_ptrIPN3CEC10CCECClientELN9__gnu_cxx12_Lock_policyE2EE@Base 3.1.0 - (arch=armel)_ZTSSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE1EE@Base 3.1.0 - (arch=!armel)_ZTSSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE@Base 3.1.0 - _ZTVN10P8PLATFORM11CSerialPortE@Base 3.1.0 - _ZTVN10P8PLATFORM12SyncedBufferIN3CEC11cec_commandEEE@Base 3.1.0 - _ZTVN10P8PLATFORM12SyncedBufferIPN3CEC13CCallbackWrapEEE@Base 3.1.0 - _ZTVN10P8PLATFORM12SyncedBufferIPN3CEC28CCECAdapterMessageQueueEntryEEE@Base 3.1.0 - _ZTVN10P8PLATFORM13CCommonSocketIiEE@Base 3.1.0 - _ZTVN10P8PLATFORM13CNVEdidParserE@Base 3.1.0 - _ZTVN10P8PLATFORM13CSerialSocketE@Base 3.1.0 - _ZTVN10P8PLATFORM14CADLEdidParserE@Base 3.1.0 - _ZTVN10P8PLATFORM14CConditionImplE@Base 3.1.0 - _ZTVN10P8PLATFORM16CProtectedSocketINS_13CSerialSocketEEE@Base 3.1.0 - _ZTVN10P8PLATFORM16CRandrEdidParserE@Base 4.0.1 - _ZTVN10P8PLATFORM6CEventE@Base 3.1.0 - _ZTVN10P8PLATFORM7CThreadE@Base 3.1.0 - _ZTVN3CEC10CCECClientE@Base 2.1.4 - _ZTVN3CEC13CCECBusDeviceE@Base 2.1.4 - _ZTVN3CEC13CCECDeviceMapE@Base 2.1.4 - _ZTVN3CEC13CCECProcessorE@Base 2.1.4 - _ZTVN3CEC15CAdapterFactoryE@Base 2.1.4 - _ZTVN3CEC15CCECAudioSystemE@Base 2.1.4 - _ZTVN3CEC15CCECInputBufferE@Base 2.1.4 - _ZTVN3CEC17CANCommandHandlerE@Base 2.1.4 - _ZTVN3CEC17CAQCommandHandlerE@Base 2.1.4 - _ZTVN3CEC17CImageViewOnCheckE@Base 2.1.4 - _ZTVN3CEC17CPHCommandHandlerE@Base 2.1.4 - _ZTVN3CEC17CRHCommandHandlerE@Base 2.1.4 - _ZTVN3CEC17CRLCommandHandlerE@Base 2.1.4 - _ZTVN3CEC17CSLCommandHandlerE@Base 2.1.4 - _ZTVN3CEC17CVLCommandHandlerE@Base 2.1.4 - _ZTVN3CEC18CAdapterPingThreadE@Base 2.1.4 - _ZTVN3CEC18CCECCommandHandlerE@Base 2.1.4 - _ZTVN3CEC18CCECPlaybackDeviceE@Base 2.1.4 - _ZTVN3CEC19CAQPowerStatusCheckE@Base 2.1.4 - _ZTVN3CEC19CCECRecordingDeviceE@Base 2.1.4 - _ZTVN3CEC21CCECStandbyProtectionE@Base 2.1.4 - _ZTVN3CEC21IAdapterCommunicationE@Base 2.1.4 - _ZTVN3CEC23CCECAdapterMessageQueueE@Base 2.1.4 - _ZTVN3CEC25CAdapterEepromWriteThreadE@Base 2.1.4 - _ZTVN3CEC26CCECAllocateLogicalAddressE@Base 2.1.4 - _ZTVN3CEC27CUSBCECAdapterCommunicationE@Base 2.1.4 - _ZTVN3CEC28CCECAdapterMessageQueueEntryE@Base 2.1.4 - _ZTVN3CEC6CCECTVE@Base 2.1.4 - _ZTVN3CEC7CLibCECE@Base 2.1.4 - _ZTVN3CEC9CCECTunerE@Base 2.1.4 - (arch=armel)_ZTVSt15_Sp_counted_ptrIPN3CEC10CCECClientELN9__gnu_cxx12_Lock_policyE1EE@Base 3.1.0 - (arch=!armel)_ZTVSt15_Sp_counted_ptrIPN3CEC10CCECClientELN9__gnu_cxx12_Lock_policyE2EE@Base 3.1.0 - _ZZN10P8PLATFORM26GetDetachedThreadAttributeEvE12g_threadAttr@Base 3.1.0 - _ZZN10P8PLATFORM26GetDetachedThreadAttributeEvE21bAttributeInitialised@Base 3.1.0 - _ZZN10P8PLATFORM26GetRecursiveMutexAttributeEvE11g_mutexAttr@Base 3.1.0 - _ZZN10P8PLATFORM26GetRecursiveMutexAttributeEvE21bAttributeInitialised@Base 3.1.0 - libcec_adapter_type_to_string@Base 3.0.1 - libcec_audio_get_status@Base 3.0.1 - libcec_audio_mute@Base 3.0.1 - libcec_audio_status_to_string@Base 3.0.1 - libcec_audio_toggle_mute@Base 3.0.1 - libcec_audio_unmute@Base 3.0.1 - libcec_can_persist_configuration@Base 3.0.1 - libcec_cec_version_to_string@Base 3.0.1 - libcec_clear_configuration@Base 3.0.1 - libcec_close@Base 3.0.1 - libcec_deck_control_mode_to_string@Base 3.0.1 - libcec_deck_status_to_string@Base 3.0.1 - libcec_destroy@Base 3.0.1 - libcec_detect_adapters@Base 3.0.1 - libcec_enable_callbacks@Base 3.0.1 - libcec_find_adapters@Base 3.0.1 - libcec_get_active_devices@Base 3.0.1 - libcec_get_active_source@Base 3.0.1 - libcec_get_adapter_product_id@Base 3.0.1 - libcec_get_adapter_vendor_id@Base 3.0.1 - libcec_get_current_configuration@Base 3.0.1 - libcec_get_device_cec_version@Base 3.0.1 - libcec_get_device_information@Base 3.0.1 - libcec_get_device_menu_language@Base 3.0.1 - libcec_get_device_osd_name@Base 3.0.1 - libcec_get_device_physical_address@Base 3.0.1 - libcec_get_device_power_status@Base 3.0.1 - libcec_get_device_vendor_id@Base 3.0.1 - libcec_get_lib_info@Base 3.0.1 - libcec_get_logical_addresses@Base 3.0.1 - libcec_init_video_standalone@Base 3.0.1 - libcec_initialise@Base 3.0.1 - libcec_is_active_device@Base 3.0.1 - libcec_is_active_device_type@Base 3.0.1 - libcec_is_active_source@Base 3.0.1 - libcec_is_libcec_active_source@Base 3.0.1 - libcec_logical_address_to_string@Base 3.0.1 - libcec_menu_state_to_string@Base 3.0.1 - libcec_mute_audio@Base 3.0.1 - libcec_opcode_to_string@Base 3.0.1 - libcec_open@Base 3.0.1 - libcec_persist_configuration@Base 3.0.1 - libcec_ping_adapters@Base 3.0.1 - libcec_poll_device@Base 3.0.1 - libcec_power_on_devices@Base 3.0.1 - libcec_power_status_to_string@Base 3.0.1 - libcec_rescan_devices@Base 3.0.1 - libcec_send_key_release@Base 3.0.1 - libcec_send_keypress@Base 3.0.1 - libcec_set_active_source@Base 3.0.1 - libcec_set_configuration@Base 3.0.1 - libcec_set_deck_control_mode@Base 3.0.1 - libcec_set_deck_info@Base 3.0.1 - libcec_set_hdmi_port@Base 3.0.1 - libcec_set_inactive_view@Base 3.0.1 - libcec_set_logical_address@Base 3.0.1 - libcec_set_menu_state@Base 3.0.1 - libcec_set_osd_string@Base 3.0.1 - libcec_set_physical_address@Base 3.0.1 - libcec_set_stream_path_logical@Base 3.0.1 - libcec_set_stream_path_physical@Base 3.0.1 - libcec_standby_devices@Base 3.0.1 - libcec_start_bootloader@Base 3.0.1 - libcec_switch_monitoring@Base 3.0.1 - libcec_system_audio_status_to_string@Base 3.0.1 - libcec_transmit@Base 3.0.1 - libcec_user_control_key_to_string@Base 3.0.1 - libcec_vendor_id_to_string@Base 3.0.1 - libcec_version_to_string@Base 3.0.1 - libcec_volume_down@Base 3.0.1 - libcec_volume_up@Base 3.0.1 - (c++)"non-virtual thunk to CEC::CCECProcessor::GetLib() const@Base" 2.1.4 - (c++)"non-virtual thunk to CEC::CCECProcessor::HandleLogicalAddressLost(CEC::cec_logical_address)@Base" 2.1.4 - (c++)"non-virtual thunk to CEC::CCECProcessor::HandlePhysicalAddressChanged(unsigned short)@Base" 2.1.4 - (c++)"non-virtual thunk to CEC::CCECProcessor::HandlePoll(CEC::cec_logical_address, CEC::cec_logical_address)@Base" 2.1.4 - (c++)"non-virtual thunk to CEC::CCECProcessor::HandleReceiveFailed(CEC::cec_logical_address)@Base" 2.1.4 - (c++)"non-virtual thunk to CEC::CCECProcessor::OnCommandReceived(CEC::cec_command const&)@Base" 2.1.4 - (c++)"non-virtual thunk to CEC::CCECProcessor::~CCECProcessor()@Base" 2.1.4 - (c++)"non-virtual thunk to CEC::CUSBCECAdapterCommunication::Process()@Base" 2.1.4 - (c++)"non-virtual thunk to CEC::CUSBCECAdapterCommunication::~CUSBCECAdapterCommunication()@Base" 2.1.4 diff -Nru libcec-4.0.1+dfsg1/debian/libcec-dev.install libcec-4.0.2.1~artful/debian/libcec-dev.install --- libcec-4.0.1+dfsg1/debian/libcec-dev.install 2017-01-18 08:16:30.000000000 +0000 +++ libcec-4.0.2.1~artful/debian/libcec-dev.install 1970-01-01 00:00:00.000000000 +0000 @@ -1,3 +0,0 @@ -usr/include -usr/lib/*/pkgconfig -usr/lib/*/libcec.so diff -Nru libcec-4.0.1+dfsg1/debian/libcec-get-orig-source libcec-4.0.2.1~artful/debian/libcec-get-orig-source --- libcec-4.0.1+dfsg1/debian/libcec-get-orig-source 2017-01-18 08:16:30.000000000 +0000 +++ libcec-4.0.2.1~artful/debian/libcec-get-orig-source 2017-01-28 22:54:36.000000000 +0000 @@ -3,13 +3,13 @@ # Script used to generate the orig source tarball for libcec. LIBCEC_GIT_URL="git://github.com/Pulse-Eight/libcec.git" -LIBCEC_GIT_TAG="libcec-2.2.0" +LIBCEC_GIT_BRANCH="release" LIBCEC_VERSION="2.2.0" rm -rf "libcec-${LIBCEC_VERSION}" git clone "$LIBCEC_GIT_URL" "libcec-${LIBCEC_VERSION}" cd "libcec-${LIBCEC_VERSION}" -git checkout "$LIBCEC_GIT_TAG" +git checkout -b "$LIBCEC_GIT_BRANCH" origin/"$LIBCEC_GIT_BRANCH" autoreconf -vif cd .. @@ -33,5 +33,5 @@ echo "Removing empty directories" find libcec-${LIBCEC_VERSION} -type d -empty -delete -tar --exclude-vcs -cJf "libcec_${LIBCEC_VERSION}+dfsg1.orig.tar.xz" \ +tar --exclude-vcs -czf "libcec_${LIBCEC_VERSION}.orig.tar.gz" \ "libcec-${LIBCEC_VERSION}/" diff -Nru libcec-4.0.1+dfsg1/debian/patches/03_reproducible_build.patch libcec-4.0.2.1~artful/debian/patches/03_reproducible_build.patch --- libcec-4.0.1+dfsg1/debian/patches/03_reproducible_build.patch 2017-01-18 08:16:30.000000000 +0000 +++ libcec-4.0.2.1~artful/debian/patches/03_reproducible_build.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,15 +0,0 @@ -Description: Remove non-determinism from build process - . -Author: Balint Reczey -Forwarded: not-needed ---- a/src/libcec/CMakeLists.txt -+++ b/src/libcec/CMakeLists.txt -@@ -128,7 +128,7 @@ - source_group("Header Files" FILES ${CEC_HEADERS}) - - # platform and device specific --include(cmake/SetBuildInfo.cmake) -+set(LIB_INFO "compiled on ${CMAKE_SYSTEM} ... ") - include(cmake/CheckPlatformSupport.cmake) - - ## create project groups diff -Nru libcec-4.0.1+dfsg1/debian/patches/04_fix_pkgconfig_libdir.patch libcec-4.0.2.1~artful/debian/patches/04_fix_pkgconfig_libdir.patch --- libcec-4.0.1+dfsg1/debian/patches/04_fix_pkgconfig_libdir.patch 2017-01-18 08:16:30.000000000 +0000 +++ libcec-4.0.2.1~artful/debian/patches/04_fix_pkgconfig_libdir.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,15 +0,0 @@ -Description: Fix libdir in pkgconfig file - . -Author: Balint Reczey -Forwarded: not-needed ---- a/src/libcec/CMakeLists.txt -+++ b/src/libcec/CMakeLists.txt -@@ -160,7 +160,7 @@ - configure_pc_file(cec ${CMAKE_CURRENT_SOURCE_DIR}/libcec.pc.in - ${CMAKE_CURRENT_SOURCE_DIR}/libcec.pc - ${CMAKE_INSTALL_PREFIX} -- ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR} -+ ${CMAKE_INSTALL_LIBDIR} - ${CMAKE_INSTALL_PREFIX}/include) - - install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/libcec.pc diff -Nru libcec-4.0.1+dfsg1/debian/patches/series libcec-4.0.2.1~artful/debian/patches/series --- libcec-4.0.1+dfsg1/debian/patches/series 2017-01-18 08:16:30.000000000 +0000 +++ libcec-4.0.2.1~artful/debian/patches/series 1970-01-01 00:00:00.000000000 +0000 @@ -1,2 +0,0 @@ -03_reproducible_build.patch -04_fix_pkgconfig_libdir.patch diff -Nru libcec-4.0.1+dfsg1/debian/pulse-eight-usb-cec.udev libcec-4.0.2.1~artful/debian/pulse-eight-usb-cec.udev --- libcec-4.0.1+dfsg1/debian/pulse-eight-usb-cec.udev 1970-01-01 00:00:00.000000000 +0000 +++ libcec-4.0.2.1~artful/debian/pulse-eight-usb-cec.udev 2017-01-28 22:54:36.000000000 +0000 @@ -0,0 +1,3 @@ +# ModemManager and mtp probe should ignore USB-CEC adapters +ACTION=="add", SUBSYSTEM=="usb", ATTRS{idVendor}=="2548", ATTRS{idProduct}=="1001", ENV{ID_MM_DEVICE_INORE}="1", ENV{MTP_NO_PROBE}="1" +ACTION=="add", SUBSYSTEM=="usb", ATTRS{idVendor}=="2548", ATTRS{idProduct}=="1002", ENV{ID_MM_DEVICE_INORE}="1", ENV{MTP_NO_PROBE}="1" diff -Nru libcec-4.0.1+dfsg1/debian/python-libcec.examples libcec-4.0.2.1~artful/debian/python-libcec.examples --- libcec-4.0.1+dfsg1/debian/python-libcec.examples 2017-01-18 08:16:30.000000000 +0000 +++ libcec-4.0.2.1~artful/debian/python-libcec.examples 1970-01-01 00:00:00.000000000 +0000 @@ -1 +0,0 @@ -src/pyCecClient/pyCecClient.py \ No newline at end of file diff -Nru libcec-4.0.1+dfsg1/debian/python-libcec.install libcec-4.0.2.1~artful/debian/python-libcec.install --- libcec-4.0.1+dfsg1/debian/python-libcec.install 2017-01-18 08:16:30.000000000 +0000 +++ libcec-4.0.2.1~artful/debian/python-libcec.install 2017-01-28 22:54:36.000000000 +0000 @@ -1 +1,2 @@ usr/lib/python*/dist-packages/cec/* +usr/bin/pyCecClient diff -Nru libcec-4.0.1+dfsg1/debian/rules libcec-4.0.2.1~artful/debian/rules --- libcec-4.0.1+dfsg1/debian/rules 2017-01-18 08:16:30.000000000 +0000 +++ libcec-4.0.2.1~artful/debian/rules 2017-01-28 22:54:36.000000000 +0000 @@ -1,18 +1,11 @@ #!/usr/bin/make -f -export DEB_BUILD_MAINT_OPTIONS = hardening=+all - -DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH) +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 %: - dh $@ --with python2 + dh $@ -override_dh_auto_configure: - ln -s /usr/include/cec-platform include/platform && \ - dh_auto_configure -- -DCMAKE_BUILD_TYPE=Release -DBUILD_SHARED_LIBS=1 -DCMAKE_INSTALL_LIBDIR=/usr/lib/$(DEB_HOST_MULTIARCH) -override_dh_auto_install: - dh_auto_install - mv debian/tmp/usr/lib/pkgconfig debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/ - rm debian/tmp/usr/bin/cec-client - mv debian/tmp/usr/bin/cec-client-* debian/tmp/usr/bin/cec-client +override_dh_auto_configure: + cmake -DCMAKE_BUILD_TYPE=Release -DBUILD_SHARED_LIBS=1 -DCMAKE_INSTALL_PREFIX=/usr diff -Nru libcec-4.0.1+dfsg1/debian/source/format libcec-4.0.2.1~artful/debian/source/format --- libcec-4.0.1+dfsg1/debian/source/format 2017-01-18 08:16:30.000000000 +0000 +++ libcec-4.0.2.1~artful/debian/source/format 2017-01-28 22:54:36.000000000 +0000 @@ -1 +1 @@ -3.0 (quilt) +3.0 (native) diff -Nru libcec-4.0.1+dfsg1/debian/source/lintian-overrides libcec-4.0.2.1~artful/debian/source/lintian-overrides --- libcec-4.0.1+dfsg1/debian/source/lintian-overrides 1970-01-01 00:00:00.000000000 +0000 +++ libcec-4.0.2.1~artful/debian/source/lintian-overrides 2017-01-28 22:54:36.000000000 +0000 @@ -0,0 +1,2 @@ +# Only Build-Depends on debhelper (>= 8.1.3~) is needed, so ignore this. +libcec source: package-needs-versioned-debhelper-build-depends 9 diff -Nru libcec-4.0.1+dfsg1/debian/watch libcec-4.0.2.1~artful/debian/watch --- libcec-4.0.1+dfsg1/debian/watch 2017-01-18 08:16:30.000000000 +0000 +++ libcec-4.0.2.1~artful/debian/watch 2017-01-28 22:54:36.000000000 +0000 @@ -1,3 +1,2 @@ -version=3 -opts=repacksuffix=+dfsg1,uversionmangle=s/_/./g,dversionmangle=s/.dfsg[0-9]*// \ -https://github.com/Pulse-Eight/libcec/tags .*/libcec-(\d[\d\.]+)\.tar\.gz +# There is currently no upstream source tarball. This package is generated +# from upstream's git vcs. diff -Nru libcec-4.0.1+dfsg1/docs/README.osx.md libcec-4.0.2.1~artful/docs/README.osx.md --- libcec-4.0.1+dfsg1/docs/README.osx.md 2017-01-03 18:12:57.000000000 +0000 +++ libcec-4.0.2.1~artful/docs/README.osx.md 2017-01-28 22:54:36.000000000 +0000 @@ -1,11 +1,17 @@ ## Apple OS X +### MacPorts + +libCEC is available through [MacPorts] (https://www.macports.org/) and has been tested on OS X 10.9 through 10.12 + ### Prerequisites To compile libCEC on OS X, you'll need the following dependencies: * [p8-platform] (https://github.com/Pulse-Eight/platform) 2.0 or later * [cmake 2.6 or better] (http://www.cmake.org/) -* a supported C++ 11 compiler +* a supported C++ 11 compiler. Support for C++11 was added in OS X 10.9 * xcode 3.2.6 or later +* optional: [Python 3.4 or later] (https://www.python.org/) and [Swig] (http://www.swig.org/) to generate Python bindings +* optional: libX11 and xrandr to read the sink's EDID, used to determine the PC's HDMI physical address ### Compilation To compile, execute the following command: diff -Nru libcec-4.0.1+dfsg1/.gitignore libcec-4.0.2.1~artful/.gitignore --- libcec-4.0.1+dfsg1/.gitignore 2017-01-03 18:12:57.000000000 +0000 +++ libcec-4.0.2.1~artful/.gitignore 1970-01-01 00:00:00.000000000 +0000 @@ -1,106 +0,0 @@ -/build -/cmake-build -/.cproject -/.project -/.settings -/compile -*.dll -*.exe -*.exp -*.ilk -*.lib -*.manifest -*.metagen -*.ncb -*.opensdf -*.pdb -*.suo -*.user -*.aps -env.h -version.h - -*.rc -AssemblyInfo.cs -AssemblyInfo.cpp - -*~ - -/support/private - -/driver/p8usb-cec.cat -/bootloader-driver/p8_usb_dfu.cat - -aclocal.m4 -autom4te.cache -config.guess -config.log -config.status -config.sub -depcomp -configure -install-sh -INSTALL -libtool -ltmain.sh -Makefile -Makefile.in -missing -config.h -config.h.in -config.h.in~ -stamp-h1 - -/debian/*.log -/debian/*.substvars -/debian/*.debhelper -/debian/files -/debian/cec-utils -/debian/libcec-dev -/debian/libcec -/debian/libcec2 -/debian/tmp - -include/boost - -project/bin -project/Debug/ -project/*.exe -project/Release/ -project/ipch/ -project/libcec.sdf -project/obj -project/Properties -project/_* -project/x64 -project/LibCecSharp/x64 -project/LibCecSharp/Debug -project/LibCecSharp/Release -project/libcec/x64 -project/libcec/Debug -project/libcec/Release -project/testclient/x64 -project/testclient/Debug -project/testclient/Release - -project/RPi/toolchain -project/RPi/firmware -project/RPi/deps - -src/libcec/libcec.pc - -src/CecSharpTester/bin -src/CecSharpTester/obj - -src/cec-config-gui/obj -src/cec-config/cec-config -src/cec-config/*.o -src/cec-config/.deps - -src/libcec-wmc/bin -src/libcec-wmc/obj - -/dpinst-x86.exe -/dpinst-amd64.exe - -/documentation diff -Nru libcec-4.0.1+dfsg1/.gitmodules libcec-4.0.2.1~artful/.gitmodules --- libcec-4.0.1+dfsg1/.gitmodules 2017-01-03 18:12:57.000000000 +0000 +++ libcec-4.0.2.1~artful/.gitmodules 1970-01-01 00:00:00.000000000 +0000 @@ -1,6 +0,0 @@ -[submodule "src/platform"] - path = src/platform - url = https://github.com/Pulse-Eight/platform -[submodule "support"] - path = support - url = https://github.com/Pulse-Eight/libcec-support.git diff -Nru libcec-4.0.1+dfsg1/project/libCEC.nsi libcec-4.0.2.1~artful/project/libCEC.nsi --- libcec-4.0.1+dfsg1/project/libCEC.nsi 2017-01-03 18:12:57.000000000 +0000 +++ libcec-4.0.2.1~artful/project/libCEC.nsi 2017-01-28 22:54:36.000000000 +0000 @@ -141,9 +141,11 @@ ; Copy to the installation directory SetOutPath "$INSTDIR" - File "..\build\x86\*.exe" + File "..\build\x86\cec-client.exe" + File "..\build\x86\cecc-client.exe" SetOutPath "$INSTDIR\x64" - File /nonfatal "..\build\amd64\*.exe" + File /nonfatal "..\build\amd64\cec-client.exe" + File /nonfatal "..\build\amd64\cecc-client.exe" !insertmacro MUI_STARTMENU_WRITE_BEGIN Application SetOutPath "$INSTDIR" @@ -162,6 +164,35 @@ SectionEnd +Section "libCEC Tray" SecDotNet + SetShellVarContext current + SectionIn 1 3 + + ; Copy to the installation directory + SetOutPath "$INSTDIR" + File "..\build\x86\CecSharpTester.exe" + File "..\build\x86\cec-tray.exe" + SetOutPath "$INSTDIR\x64" + File /nonfatal "..\build\amd64\CecSharpTester.exe" + File /nonfatal "..\build\amd64\cec-tray.exe" + + !insertmacro MUI_STARTMENU_WRITE_BEGIN Application + SetOutPath "$INSTDIR" + + CreateDirectory "$SMPROGRAMS\$StartMenuFolder" + ${If} ${RunningX64} + CreateShortCut "$SMPROGRAMS\$StartMenuFolder\cec-tray.lnk" "$INSTDIR\x64\cec-tray.exe" \ + "" "$INSTDIR\x64\cec-tray.exe" 0 SW_SHOWNORMAL \ + "" "Start libCEC Tray (x64)." + ${Else} + CreateShortCut "$SMPROGRAMS\$StartMenuFolder\cec-tray.lnk" "$INSTDIR\cec-tray.exe" \ + "" "$INSTDIR\cec-tray.exe" 0 SW_SHOWNORMAL \ + "" "Start libCEC Tray." + ${EndIf} + !insertmacro MUI_STARTMENU_WRITE_END + +SectionEnd + Section "Python bindings" SecPythonCec SetShellVarContext current SectionIn 1 3 @@ -319,6 +350,7 @@ ${If} ${RunningX64} Delete "$SMPROGRAMS\$StartMenuFolder\libCEC Tray (x64).lnk" ${EndIf} + Delete "$SMPROGRAMS\$StartMenuFolder\cec-tray.lnk" Delete "$SMPROGRAMS\$StartMenuFolder\CEC Test client.lnk" ${If} ${RunningX64} Delete "$SMPROGRAMS\$StartMenuFolder\CEC Test client (x64).lnk" diff -Nru libcec-4.0.1+dfsg1/src/libcec/adapter/Pulse-Eight/USBCECAdapterCommunication.cpp libcec-4.0.2.1~artful/src/libcec/adapter/Pulse-Eight/USBCECAdapterCommunication.cpp --- libcec-4.0.1+dfsg1/src/libcec/adapter/Pulse-Eight/USBCECAdapterCommunication.cpp 2017-01-03 18:12:57.000000000 +0000 +++ libcec-4.0.2.1~artful/src/libcec/adapter/Pulse-Eight/USBCECAdapterCommunication.cpp 2017-01-28 22:54:36.000000000 +0000 @@ -668,7 +668,7 @@ uint16_t iPA(0); // try to get the PA from ADL -#if defined(HAS_ADL_EDID_PARSER) +#if defined(HAVE_ADL_EDID_PARSER) { LIB_CEC->AddLog(CEC_LOG_DEBUG, "%s - trying to get the physical address via ADL", __FUNCTION__); CADLEdidParser adl; @@ -678,7 +678,7 @@ #endif // try to get the PA from the nvidia driver -#if defined(HAS_NVIDIA_EDID_PARSER) +#if defined(HAVE_NVIDIA_EDID_PARSER) if (iPA == 0) { LIB_CEC->AddLog(CEC_LOG_DEBUG, "%s - trying to get the physical address via nvidia driver", __FUNCTION__); @@ -689,7 +689,7 @@ #endif // try to get the PA from the intel driver -#if defined(HAS_DRM_EDID_PARSER) +#if defined(HAVE_DRM_EDID_PARSER) if (iPA == 0) { LIB_CEC->AddLog(CEC_LOG_DEBUG, "%s - trying to get the physical address via drm files", __FUNCTION__); diff -Nru libcec-4.0.1+dfsg1/src/libcec/adapter/Pulse-Eight/USBCECAdapterDetection.cpp libcec-4.0.2.1~artful/src/libcec/adapter/Pulse-Eight/USBCECAdapterDetection.cpp --- libcec-4.0.1+dfsg1/src/libcec/adapter/Pulse-Eight/USBCECAdapterDetection.cpp 2017-01-03 18:12:57.000000000 +0000 +++ libcec-4.0.2.1~artful/src/libcec/adapter/Pulse-Eight/USBCECAdapterDetection.cpp 2017-01-28 22:54:36.000000000 +0000 @@ -174,13 +174,15 @@ static bool GetPidVidFromDeviceName(const std::string strDevName, int* vid, int* pid) { - size_t iPidPos = strDevName.find("PID_"); - size_t iVidPos = strDevName.find("VID_"); - if (iPidPos == std::string::npos || iVidPos == std::string::npos || (strDevName.find("&MI_") != std::string::npos && strDevName.find("&MI_00") == std::string::npos)) + std::string strDevNameUpper(strDevName); + StringUtils::ToUpper(strDevNameUpper); + size_t iPidPos = strDevNameUpper.find("PID_"); + size_t iVidPos = strDevNameUpper.find("VID_"); + if (iPidPos == std::string::npos || iVidPos == std::string::npos || (strDevNameUpper.find("&MI_") != std::string::npos && strDevNameUpper.find("&MI_00") == std::string::npos)) return false; - std::string strVendorId(strDevName.substr(iVidPos + 4, 4)); - std::string strProductId(strDevName.substr(iPidPos + 4, 4)); + std::string strVendorId(strDevNameUpper.substr(iVidPos + 4, 4)); + std::string strProductId(strDevNameUpper.substr(iPidPos + 4, 4)); sscanf(strVendorId.c_str(), "%x", vid); sscanf(strProductId.c_str(), "%x", pid); diff -Nru libcec-4.0.1+dfsg1/src/libcec/cmake/CheckPlatformSupport.cmake libcec-4.0.2.1~artful/src/libcec/cmake/CheckPlatformSupport.cmake --- libcec-4.0.1+dfsg1/src/libcec/cmake/CheckPlatformSupport.cmake 2017-01-03 18:12:57.000000000 +0000 +++ libcec-4.0.2.1~artful/src/libcec/cmake/CheckPlatformSupport.cmake 2017-01-28 22:54:36.000000000 +0000 @@ -168,7 +168,7 @@ # Swig find_package(SWIG) if (PYTHONLIBS_FOUND AND SWIG_FOUND) - set(CMAKE_SWIG_FLAGS "") + set(CMAKE_SWIG_FLAGS "-threads") set(HAVE_PYTHON 1) if ("${PYTHONLIBS_VERSION_STRING}" STREQUAL "") message(STATUS "Python version not found, defaulting to 2.7") @@ -194,10 +194,15 @@ DESTINATION python/cec RENAME __init__.py) else() + if(EXISTS "/etc/lsb-release") + SET(PYTHON_PKG_DIR "dist-packages") + else() + SET(PYTHON_PKG_DIR "site-packages") + endif() install(TARGETS ${SWIG_MODULE_cec_REAL_NAME} - DESTINATION lib/python${PYTHON_VERSION}/dist-packages/cec) + DESTINATION lib/python${PYTHON_VERSION}/${PYTHON_PKG_DIR}/cec) install(FILES ${CMAKE_BINARY_DIR}/src/libcec/cec.py - DESTINATION lib/python${PYTHON_VERSION}/dist-packages/cec + DESTINATION lib/python${PYTHON_VERSION}/${PYTHON_PKG_DIR}/cec RENAME __init__.py) endif() endif() diff -Nru libcec-4.0.1+dfsg1/src/libcec/cmake/DisplayPlatformSupport.cmake libcec-4.0.2.1~artful/src/libcec/cmake/DisplayPlatformSupport.cmake --- libcec-4.0.1+dfsg1/src/libcec/cmake/DisplayPlatformSupport.cmake 2017-01-03 18:12:57.000000000 +0000 +++ libcec-4.0.2.1~artful/src/libcec/cmake/DisplayPlatformSupport.cmake 2017-01-28 22:54:36.000000000 +0000 @@ -45,9 +45,9 @@ endif() if (HAVE_AOCEC_API) - message(STATUS "AOCEC support: yes") + message(STATUS "AOCEC support: yes") else() - message(STATUS "AOCEC support: no") + message(STATUS "AOCEC support: no") endif() if (HAVE_PYTHON) diff -Nru libcec-4.0.1+dfsg1/src/libcec/CMakeLists.txt libcec-4.0.2.1~artful/src/libcec/CMakeLists.txt --- libcec-4.0.1+dfsg1/src/libcec/CMakeLists.txt 2017-01-03 18:12:57.000000000 +0000 +++ libcec-4.0.2.1~artful/src/libcec/CMakeLists.txt 2017-01-28 22:54:36.000000000 +0000 @@ -68,7 +68,8 @@ # /platform/* set(CEC_SOURCES_PLATFORM platform/adl/adl-edid.cpp - platform/nvidia/nv-edid.cpp) + platform/nvidia/nv-edid.cpp + platform/drm/drm-edid.cpp) # headers set(CEC_EXT_HEADERS ${PROJECT_SOURCE_DIR}/../../include/cec.h @@ -164,7 +165,7 @@ ${CMAKE_INSTALL_PREFIX}/include) install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/libcec.pc - DESTINATION ${CMAKE_INSTALL_LIBDIR_NOARCH}/pkgconfig) + DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig) endif() # install headers diff -Nru libcec-4.0.1+dfsg1/src/libcec/implementations/CECCommandHandler.cpp libcec-4.0.2.1~artful/src/libcec/implementations/CECCommandHandler.cpp --- libcec-4.0.1+dfsg1/src/libcec/implementations/CECCommandHandler.cpp 2017-01-03 18:12:57.000000000 +0000 +++ libcec-4.0.2.1~artful/src/libcec/implementations/CECCommandHandler.cpp 2017-01-28 22:54:36.000000000 +0000 @@ -783,7 +783,7 @@ else if (command.parameters[0] != CEC_USER_CONTROL_CODE_POWER_OFF_FUNCTION) { // we're not marked as active source, but the tv sends keypresses to us, so assume it forgot to activate us - if (!device->IsActiveSource() && command.initiator == CECDEVICE_TV) + if (!device->IsActiveSource() && command.initiator == CECDEVICE_TV && command.destination != CECDEVICE_AUDIOSYSTEM) device->MarkAsActiveSource(); } diff -Nru libcec-4.0.1+dfsg1/src/libcec/implementations/VLCommandHandler.cpp libcec-4.0.2.1~artful/src/libcec/implementations/VLCommandHandler.cpp --- libcec-4.0.1+dfsg1/src/libcec/implementations/VLCommandHandler.cpp 2017-01-03 18:12:57.000000000 +0000 +++ libcec-4.0.2.1~artful/src/libcec/implementations/VLCommandHandler.cpp 2017-01-28 22:54:36.000000000 +0000 @@ -75,7 +75,8 @@ /* use the VL commandhandler for the primary device that is handled by libCEC */ if (m_busDevice->GetLogicalAddress() == CECDEVICE_TV) { - if (primary && m_busDevice->GetLogicalAddress() != primary->GetLogicalAddress()) + if (primary && m_busDevice->GetLogicalAddress() != primary->GetLogicalAddress() && + primary->GetLogicalAddress() != CECDEVICE_AUDIOSYSTEM) { libcec_configuration config; m_processor->GetPrimaryClient()->GetCurrentConfiguration(config); diff -Nru libcec-4.0.1+dfsg1/src/libcec/platform/adl/adl-edid.cpp libcec-4.0.2.1~artful/src/libcec/platform/adl/adl-edid.cpp --- libcec-4.0.1+dfsg1/src/libcec/platform/adl/adl-edid.cpp 2017-01-03 18:12:57.000000000 +0000 +++ libcec-4.0.2.1~artful/src/libcec/platform/adl/adl-edid.cpp 2017-01-28 22:54:36.000000000 +0000 @@ -34,6 +34,8 @@ #include "env.h" #include "adl-edid.h" +#if defined(HAVE_ADL_EDID_PARSER) + // for dlsym and friends #if defined(__WINDOWS__) #include @@ -203,3 +205,5 @@ return iPA; } + +#endif diff -Nru libcec-4.0.1+dfsg1/src/libcec/platform/adl/adl-edid.h libcec-4.0.2.1~artful/src/libcec/platform/adl/adl-edid.h --- libcec-4.0.1+dfsg1/src/libcec/platform/adl/adl-edid.h 2017-01-03 18:12:57.000000000 +0000 +++ libcec-4.0.2.1~artful/src/libcec/platform/adl/adl-edid.h 2017-01-28 22:54:36.000000000 +0000 @@ -33,7 +33,7 @@ */ #include "env.h" -#define HAS_ADL_EDID_PARSER +#define HAVE_ADL_EDID_PARSER #include "platform/util/edid.h" diff -Nru libcec-4.0.1+dfsg1/src/libcec/platform/nvidia/nv-edid.cpp libcec-4.0.2.1~artful/src/libcec/platform/nvidia/nv-edid.cpp --- libcec-4.0.1+dfsg1/src/libcec/platform/nvidia/nv-edid.cpp 2017-01-03 18:12:57.000000000 +0000 +++ libcec-4.0.2.1~artful/src/libcec/platform/nvidia/nv-edid.cpp 2017-01-28 22:54:36.000000000 +0000 @@ -32,9 +32,11 @@ */ #include "env.h" +#include "nv-edid.h" + +#if defined(HAVE_NVIDIA_EDID_PARSER) #include -#include "nv-edid.h" #include using namespace P8PLATFORM; @@ -66,3 +68,5 @@ return iPA; } + +#endif diff -Nru libcec-4.0.1+dfsg1/src/libcec/platform/nvidia/nv-edid.h libcec-4.0.2.1~artful/src/libcec/platform/nvidia/nv-edid.h --- libcec-4.0.1+dfsg1/src/libcec/platform/nvidia/nv-edid.h 2017-01-03 18:12:57.000000000 +0000 +++ libcec-4.0.2.1~artful/src/libcec/platform/nvidia/nv-edid.h 2017-01-28 22:54:36.000000000 +0000 @@ -33,7 +33,7 @@ */ #include "env.h" -#define HAS_NVIDIA_EDID_PARSER +#define HAVE_NVIDIA_EDID_PARSER #include "platform/util/edid.h" diff -Nru libcec-4.0.1+dfsg1/src/libcec/SwigHelper.h libcec-4.0.2.1~artful/src/libcec/SwigHelper.h --- libcec-4.0.1+dfsg1/src/libcec/SwigHelper.h 2017-01-03 18:12:57.000000000 +0000 +++ libcec-4.0.2.1~artful/src/libcec/SwigHelper.h 2017-01-28 22:54:36.000000000 +0000 @@ -33,6 +33,8 @@ */ #define SWIG_FILE_WITH_INIT +#define SWIG_PYTHON_THREADS +#define SWIG_PYTHON_USE_GIL #define LIBCEC_SWIG_EXPORTS #include "cectypes.h" @@ -99,29 +101,33 @@ * Call a python callback (if set) * @param callback the callback to call * @param arglist the arguments to pass to the callback - * @return 1 when processed, 0 otherwise + * @return 0 if the callback failed, the result returned by python otherwise */ int CallPythonCallback(enum libcecSwigCallback callback, PyObject* arglist) { - assert(callback < NB_PYTHON_CB); - assert(arglist); + int retval = 0; - if (!m_callbacks[callback]) - return 0; + if (callback >= NB_PYTHON_CB || !m_callbacks[callback]) + return retval; PyObject* result = NULL; - if (m_callbacks[callback] && arglist) + if (m_callbacks[callback]) { /** call the callback */ result = PyEval_CallObject(m_callbacks[callback], arglist); /** unref the argument and result */ - Py_DECREF(arglist); - if (result) + if (!!arglist) + Py_DECREF(arglist); + if (!!result) + { + if (PyInt_Check(result)) + retval = (int)PyInt_AsLong(result); Py_XDECREF(result); + } } - return 1; + return retval; } /** @@ -180,7 +186,7 @@ { PyGILState_STATE gstate = PyGILState_Ensure(); int retval = CallPythonCallback(param, PYTHON_CB_MENU_STATE, - Py_BuildValue("(i)", state)); + Py_BuildValue("(I)", state)); PyGILState_Release(gstate); return retval; } @@ -189,7 +195,7 @@ { PyGILState_STATE gstate = PyGILState_Ensure(); CallPythonCallback(param, PYTHON_CB_SOURCE_ACTIVATED, - Py_BuildValue("(I,i)", logicalAddress, activated ? 1 : 0)); + Py_BuildValue("(I,I)", logicalAddress, activated)); PyGILState_Release(gstate); } diff -Nru libcec-4.0.1+dfsg1/src/pyCecClient/CMakeLists.txt libcec-4.0.2.1~artful/src/pyCecClient/CMakeLists.txt --- libcec-4.0.1+dfsg1/src/pyCecClient/CMakeLists.txt 2017-01-03 18:12:57.000000000 +0000 +++ libcec-4.0.2.1~artful/src/pyCecClient/CMakeLists.txt 2017-01-28 22:54:36.000000000 +0000 @@ -7,10 +7,11 @@ if (PYTHONLIBS_FOUND) if (WIN32) - install(FILES pyCecClient.py + install(PROGRAMS pyCecClient.py DESTINATION python/.) else() - install(FILES pyCecClient.py - DESTINATION bin/.) + install(PROGRAMS pyCecClient.py + DESTINATION bin/. + RENAME pyCecClient) endif() endif() diff -Nru libcec-4.0.1+dfsg1/windows/create-installer.cmd libcec-4.0.2.1~artful/windows/create-installer.cmd --- libcec-4.0.1+dfsg1/windows/create-installer.cmd 2017-01-03 18:12:57.000000000 +0000 +++ libcec-4.0.2.1~artful/windows/create-installer.cmd 2017-01-28 22:54:36.000000000 +0000 @@ -43,14 +43,26 @@ echo. Compiling libCEC (x64) %COMPILER12% libcec.sln /Build "Release|x64" /Project LibCecSharp %COMPILER12% libcec.sln /Build "Release|x64" +echo. Compiling .Net applications +cd "%MYDIR%..\src\dotnet\project" +%COMPILER12% cec-dotnet.sln /Build "Release|x64" +copy ..\build\x64\CecSharpTester.exe %MYDIR%..\build\amd64\CecSharpTester.exe +copy ..\build\x64\cec-tray.exe %MYDIR%..\build\amd64\cec-tray.exe :libcecx86 rem Compile libCEC and cec-client Win32 +cd "%MYDIR%..\project" echo. Cleaning libCEC (x86) %COMPILER12% libcec.sln /Clean "Release|x86" echo. Compiling libCEC (x86) %COMPILER12% libcec.sln /Build "Release|x86" /Project LibCecSharp %COMPILER12% libcec.sln /Build "Release|x86" +echo. Compiling .Net applications +cd "%MYDIR%..\src\dotnet\project" +%COMPILER12% cec-dotnet.sln /Build "Release|x86" +copy ..\build\x86\CecSharpTester.exe %MYDIR%..\build\x86\CecSharpTester.exe +copy ..\build\x86\cec-tray.exe %MYDIR%..\build\x86\cec-tray.exe +cd "%MYDIR%..\project" rem Clean things up before creating the installer del /q /f %MYDIR%..\build\x86\LibCecSharp.pdb @@ -64,10 +76,14 @@ CALL ..\support\private\sign-binary.cmd %MYDIR%..\build\x86\LibCecSharp.dll CALL ..\support\private\sign-binary.cmd %MYDIR%..\build\x86\cec-client.exe CALL ..\support\private\sign-binary.cmd %MYDIR%..\build\x86\cecc-client.exe +CALL ..\support\private\sign-binary.cmd %MYDIR%..\build\x86\cec-tray.exe +CALL ..\support\private\sign-binary.cmd %MYDIR%..\build\x86\CecSharpTester.exe CALL ..\support\private\sign-binary.cmd %MYDIR%..\build\amd64\cec.dll CALL ..\support\private\sign-binary.cmd %MYDIR%..\build\amd64\LibCecSharp.dll CALL ..\support\private\sign-binary.cmd %MYDIR%..\build\amd64\cec-client.exe CALL ..\support\private\sign-binary.cmd %MYDIR%..\build\amd64\cecc-client.exe +CALL ..\support\private\sign-binary.cmd %MYDIR%..\build\amd64\cec-tray.exe +CALL ..\support\private\sign-binary.cmd %MYDIR%..\build\amd64\CecSharpTester.exe :CREATEINSTALLER echo. Creating the installer