| 1 | libcec (1.5-4) unstable; urgency=low |
| 2 | |
| 3 | * changed/added: |
| 4 | * OS-X installation requirements and pointer |
| 5 | * full v2 firmware support: |
| 6 | * ping the adapter every 15 seconds. bugzid: 541 |
| 7 | * added v2 msgcodes. bugzid: 543 |
| 8 | * implemented the write methods for the v2 configuration. bugzid: 543 |
| 9 | * included the logical addresses in the persisted configuration for v2. |
| 10 | bugzid: 543 |
| 11 | * persist the configuration before closing the connection. only try to |
| 12 | persist the configuration when talking to a v2 firmware. bugzid: 543 |
| 13 | * added GetSetting() to CUSBCECAdapterCommunication. bugzid: 543 |
| 14 | * read the persisted settings from the ROM, and update it in |
| 15 | libcec_configuration if found. bugzid: 543 |
| 16 | * cec-client: set bGetSettingsFromROM to 1 in cec-client. bugzid: 543 |
| 17 | * cec-client: only read persisted EEPROM settings when -r or --rom is |
| 18 | provided as cmdline arg. bugzid: 543 |
| 19 | * call SetControlledMode(false) as last command when closing the |
| 20 | connection in v2. bugzid: 542 |
| 21 | * initial FreeBSD support: simply try to use ttyU* |
| 22 | |
| 23 | * fixed: |
| 24 | * set controlled mode and retry to send the previous command if it failed |
| 25 | with MSGCODE_COMMAND_REJECTED |
| 26 | * m_iLineTimeout was never initialised and used. fixes MSGCODE_REJECTED |
| 27 | when transmitting a message and incorrect line timeouts being used |
| 28 | * mac configure compile bugzid: 157 |
| 29 | * cec-config-gui: fixed application exit when the user clicked 'no' when |
| 30 | asked to reconnect. bugzid: 556 |
| 31 | * only wait for multiple 'command accepted' response when sending a |
| 32 | transmit command, and only to 1 in other cases. bugzid: 543 |
| 33 | * set the correct logical address mask before switching to autonomous mode. |
| 34 | bugzid: 543 |
| 35 | * re-added SetLineTimeout(). bugzid: 543 |
| 36 | * CUSBCECAdapterCommunication::SetControlledMode checked for the wrong sent |
| 37 | state |
| 38 | * os-x: don't add 0.5 before dividing in GetTimeMs() |
| 39 | * os-x: struct timespec now values weren't set correctly |
| 40 | |
| 41 | -- Pulse-Eight Packaging <packaging@pulse-eight.com> Fri, 16 Mar 2012 10:12:00 +0100 |
| 42 | |
| 43 | libcec (1.5-3) unstable; urgency=low |
| 44 | |
| 45 | * fixed: |
| 46 | * OS-X compilation |
| 47 | * default to firmware version 1 after 3 tries. some versions didn't send a |
| 48 | version. |
| 49 | * fixed cec-config win32 compilation |
| 50 | |
| 51 | -- Pulse-Eight Packaging <packaging@pulse-eight.com> Sat, 03 Mar 2012 15:21:00 +0100 |
| 52 | |
| 53 | libcec (1.5-2) unstable; urgency=low |
| 54 | |
| 55 | * changed/added: |
| 56 | * added Toshiba's vendor id, and set the device ID of the primary device to |
| 57 | Toshiba's and transmit it when starting |
| 58 | * lock in SyncedBuffer |
| 59 | * added a timeout to StopThread() |
| 60 | * also add commands to unsupported features when receiving |
| 61 | CEC_ABORT_REASON_REFUSED |
| 62 | * cec-config-gui: set cbPortNumber enabled when the physical address |
| 63 | override isn't checked instead |
| 64 | * cec-config-gui: added support for the new 'send inactive source' setting |
| 65 | |
| 66 | * interface changes: |
| 67 | * added an 'send inactive source' option to libcec_configuration, only |
| 68 | supported by client/server 1.5.1 and up. bugzid: 439 |
| 69 | * added a command to the interface to start the bootloader directly, |
| 70 | without going through all checks. bugzid: 218 |
| 71 | * LibCecSharp: implemented support for the new 'send inactive source' |
| 72 | setting |
| 73 | |
| 74 | * fixed: |
| 75 | * don't send an updated configuration when libCEC hasn't been initialised |
| 76 | fully. bugzid: 459 |
| 77 | * don't send an updated configuration back when initialising. let the |
| 78 | client call the GetCurrentConfiguration() method. bugzid: 459 |
| 79 | * configuration updates from libCEC. bugzid: 459 |
| 80 | * fixed accidental double deref. the method parameter already does that. |
| 81 | github #24 |
| 82 | * use CLOCK_MONOTONIC for timing info, since gettimeofday is affected by |
| 83 | ntp and by manually adjusting the system time |
| 84 | * the timeout value of pthread_cond_timedwait has to be referenced to |
| 85 | CLOCK_REALTIME |
| 86 | * don't add data to the input buffer in CUSBCECAdapterCommunication before |
| 87 | it's fully initialised |
| 88 | * fixed return value of CUSBCECAdapterCommunication::ParseMessage(). fixes |
| 89 | messages not being parsed in certain occasions |
| 90 | * don't try to transmit when the processor is being stopped |
| 91 | * set the server version in the LibCEC's constructor, since this is |
| 92 | checked by clients. fixes 'invalid libCEC version' popup when inserting |
| 93 | the adapter |
| 94 | * don't wait for the full timeout to pass in CCECProcessor:: |
| 95 | OpenConnection(), but retry to connect 2 times. fixes 'port busy' errors |
| 96 | when initialising libCEC. bugzid: 436 |
| 97 | * use the correct Sleep() method in CCECProcessor::OpenConnection(). the |
| 98 | thread hasn't been started there yet, so the sleep wasn't working. fixes |
| 99 | 'device or resource busy' when plugging in the adapter. bugzid: 436 |
| 100 | * check the adapter ping and firmware before starting the reader thread, so |
| 101 | we really leave the com port alone for a second when it fails because of |
| 102 | a busy error. bugzid: 436 |
| 103 | * ensure that the connection is really closed before retrying to connect. |
| 104 | bugzid: 436 |
| 105 | * LibCecSharp: recreate the delegates properly when (re)connecting to |
| 106 | LibCecSharp |
| 107 | |
| 108 | -- Pulse-Eight Packaging <packaging@pulse-eight.com> Tue, 28 Feb 2012 21:19:00 +0100 |
| 109 | |
| 110 | libcec (1.5-1) unstable; urgency=low |
| 111 | |
| 112 | * changed/added: |
| 113 | * a new libcec_configuration structs, which allows the client app to pass |
| 114 | a number of new options, like waking multiple devices on startup, |
| 115 | overriding the vendor id, etc. |
| 116 | * a new configuration GUI for Windows (.NET). this allows you to set |
| 117 | libCEC's configuration for XBMC in a convenient GUI. |
| 118 | * a CLI configuration tool (unfinished) for other platforms. will be |
| 119 | finished in an update. |
| 120 | * implemented power up for LG devices other than a TV |
| 121 | * win32: don't install libcec to the system directory by default, and |
| 122 | delete previous (testing) copies if present |
| 123 | * wait for multiple responses, not just for one at a time |
| 124 | * set the ackmask to 0 when closing the connection |
| 125 | * don't send 'image view on' when calling SetActiveSource() |
| 126 | * don't send power on, acitve source and standby commands by default in |
| 127 | cec-client |
| 128 | * platform: added CTryLockObject |
| 129 | * platform: added an Init() method in CTimeout, so it can be reset |
| 130 | |
| 131 | * interface changes: |
| 132 | * added a new initialiser method: CecInitialise()/cec_initialise(), that |
| 133 | accepts a "libc_configuration" struct as parameter. this way, the |
| 134 | signature of the init method can stay the same when adding new options. |
| 135 | in LibCecSharp, the new method appears as a new constructor. |
| 136 | * added CanPersistConfiguration()/cec_can_persist_configuration() |
| 137 | * added PersistConfiguration()/cec_persist_configuration() |
| 138 | * added GetCurrentConfiguration()/cec_get_current_configuration() |
| 139 | * added SetConfiguration()/cec_set_configuration() |
| 140 | * added GetLogicalAddresses()/cec_get_logical_addresses(): returns the list |
| 141 | of addresses controlled by libCEC |
| 142 | * added RescanDevices()/cec_rescan_devices(): lets libCEC force polls to |
| 143 | all logical addresses. |
| 144 | * added a callback that is called when libCEC's configuration changed. |
| 145 | * moved the autodetect address api call to libcec_configuration. only send |
| 146 | power up commands to non-tv devices when the power state is not |
| 147 | on/transition->on. let players call the power up/power down command. |
| 148 | * return the anynet return keycode directly instead of translating it to |
| 149 | 'return' for v1.5.0+ clients |
| 150 | * extracted CecSharpTypes.h in LibCecSharp. LibCecSharp is now in the |
| 151 | CecSharp namespace |
| 152 | * include the local cectypes.h in cec.h and cecc.h instead of system wide |
| 153 | * deprecated GetLibVersion() methods. use libcec_configuration instead |
| 154 | * removed deprecated CECCreate() method |
| 155 | |
| 156 | * fixed: |
| 157 | * fixed a lot of LG specific issues |
| 158 | * fixed OS-X compilation. credits: Dustin Cooper |
| 159 | * fixed a couple of possible deadlocks, e.g. when closing the connection |
| 160 | while receiving data |
| 161 | * cleaned up existing code |
| 162 | * libCEC no longer puts incoming data in a fifo buffer, but tries to |
| 163 | process it directly, which fixes issues like libCEC blocking processing |
| 164 | new commands while waiting for transmission acks. |
| 165 | * 'unsupported command' marking in CCECBusDevice |
| 166 | * ensure that the ackmask is always set to 0 when closing the connection |
| 167 | and that the call doesn't block the Close() call |
| 168 | * don't try to read or write in CUSBCECAdapterCommunication when the |
| 169 | connection has been closed |
| 170 | * LibCecSharp: added quotes to the linker statement for libcec.lib. fixes |
| 171 | compilation in paths with spaces. closes #20 |
| 172 | * LibCecSharp: set the callback methods in libcec to NULL before closing |
| 173 | the connection, since these might already have been destroyed in .NET |
| 174 | * LibCecSharp: delete the internal callback struct when closing the |
| 175 | connection |
| 176 | * LibCecSharp: pass correctly formatted logical address lists |
| 177 | * ensure that the vendor id is requested first when requesting info from a |
| 178 | device, so we are using the correct handler |
| 179 | * keep the 'busy state' of the command handler in CCECBusDevice |
| 180 | * poll the next device when the current is handled by libCEC. |
| 181 | * check the vendor id of a device before sending a power on command |
| 182 | * ensure that there always is at least one device type set |
| 183 | * transmit a keypress and key release as power on command when the target |
| 184 | device isn't the TV |
| 185 | * don't do a full reinit when not needed |
| 186 | * fix active source switches for the standard CEC implementation |
| 187 | * ensure that we don't send data to ourself |
| 188 | * check whether the port is open, not whether libCEC is initialised in |
| 189 | Transmit() |
| 190 | * platform: fixed return value from CCondition::Wait() |
| 191 | * platform: don't broadcast but wake one thread in |
| 192 | CProtectedSocket::MarkReady() |
| 193 | * platform: include stdint.h in windows/os-types.h instead of typedef'ing |
| 194 | ints |
| 195 | * platform: fixed tcp socket error handling and return value. |
| 196 | * platform: fixed return values of socket operations in lib/platform |
| 197 | * platform: added predicate in CCondition |
| 198 | * deleted the signed driver from the tree, since that doesn't work. let the |
| 199 | installer create a new signed driver on the production build system |
| 200 | |
| 201 | -- Pulse-Eight Packaging <packaging@pulse-eight.com> Mon, 19 Feb 2012 01:04:00 +0100 |
| 202 | |
| 203 | libcec (1.4-4) unstable; urgency=low |
| 204 | |
| 205 | * changed/added: |
| 206 | * added tcp client sockets to lib/platform (WIP) |
| 207 | * clean up lib/platform |
| 208 | * added: set controlled mode on after opening a connection to the adapter |
| 209 | (for firmware v2) |
| 210 | * added an IAdapterCommunicationCallback interface an use a callback method |
| 211 | to pass newly received cec_commands to CCECProcessor |
| 212 | * added "driver only" and "driver + libcec" sections to the installer |
| 213 | * added a signed driver |
| 214 | * created a separate driver installer, which is included in the libCEC |
| 215 | installer. uninstalls the old unsigned version of libCEC and the driver |
| 216 | when it's found and installs the new one in C:\Program Files(x86)\ |
| 217 | Pulse Eight\USB-CEC Adapter. |
| 218 | * don't sign development binaries with a temporary key. devs can do that |
| 219 | themselves when they want LibCecSharp in the GAC |
| 220 | * interface changes: |
| 221 | * added SetStreamPath()/cec_set_stream_path_logical()/ |
| 222 | cec_set_stream_path_physical() to the interface, to send a |
| 223 | "set stream path" command over the CEC bus, used to activate another |
| 224 | source. |
| 225 | * fixed: |
| 226 | * transmit 'menu state activated' after the stream path has been set to a |
| 227 | device that is handled by libCEC. should fix remote commands not working |
| 228 | properly on Panasonic TVs and after another source has been active. |
| 229 | bugzid: 233 |
| 230 | * set the ackmask to 0x0 when trying to find a free logical address |
| 231 | * keep trying to reconnect to the com port until the timeout runs out. |
| 232 | bugzid: 230 |
| 233 | * wait 500 ms before trying to retransmit a command. always wait for the |
| 234 | result of a transmission in CCECCommandHandler::Transmit() |
| 235 | * receive and send full cec_commands, not CCECAdapterMessages in |
| 236 | CAdapterCommunication. extract an IAdapterCommunication interface. fixed |
| 237 | potentially missed data in CAdapterCommunication |
| 238 | * close and delete the connection when the processor thread ends. fixes |
| 239 | reconnect after standby (access denied / connection already opened) |
| 240 | * don't replace handlers when not initialised, or the primary device's |
| 241 | logical addres isn't known yet, which can lead to crashes. don't call |
| 242 | handlers directly in CCECProcessor without holding a lock on them |
| 243 | * fixed possible crash when command handler were switched while it was |
| 244 | being used |
| 245 | * keep the mutex locked when calling ReplaceHandlers() in CCECProcessor |
| 246 | * win32: also timeout when data is received in SocketRead() |
| 247 | * win32: fixed < vista runtime and compilation |
| 248 | * win32: ping the adapter and request the firmware version in |
| 249 | CUSBCECAdapterCommunication instead of CCECProcesssor. fixes failed |
| 250 | libCEC inits |
| 251 | * win32: fixed crash on exit in LibCecSharp |
| 252 | |
| 253 | -- Pulse-Eight Packaging <packaging@pulse-eight.com> Mon, 6 Feb 2012 14:26:00 +0100 |
| 254 | |
| 255 | libcec (1.4-3) unstable; urgency=low |
| 256 | |
| 257 | * fixed: |
| 258 | * try to ping the device and grab the firmware version until the connect |
| 259 | timeout runs out. fixes failed reconnect after standby, when the adapter |
| 260 | is still being initialised |
| 261 | |
| 262 | -- Pulse-Eight Packaging <packaging@pulse-eight.com> Thu, 27 Jan 2012 13:05:00 +0100 |
| 263 | |
| 264 | libcec (1.4-2) unstable; urgency=low |
| 265 | |
| 266 | * changed/added: |
| 267 | * added a firmware flash script for linux. |
| 268 | usage: ./support/cec-flash-device.sh /path/to/firware.hex |
| 269 | * refactored threading/locking - added windows native instead of |
| 270 | pthread-win32, so we can compile native x64 too |
| 271 | * check whether the adapter responds when connecting to it and report the |
| 272 | firmware version of the adapter after connecting |
| 273 | * moved create-installer.cmd to support/ |
| 274 | * completely removed AM_SILENT_RULES |
| 275 | * interface changes: |
| 276 | * compile LibCecSharp against .NET framework 2.0 and sign the assembly |
| 277 | * fixed: |
| 278 | * only the key release events were sent, not keypresses, which appeared in |
| 279 | clients as laggy keypresses |
| 280 | * fixed reconnect after standby |
| 281 | * wait for active tranmission to finish when opening a connection to the |
| 282 | adapter. fixes initialisation errors |
| 283 | * set the default transmit timeout properly instead of using 0 |
| 284 | * fixed possible deadlock because of a negative timeout in |
| 285 | CAdapterCommunication::WaitForTransmitSucceeded() |
| 286 | * fixed error message in cec-client (unable to open the device on port ...) |
| 287 | * exit cec-client after entering bootloader mode |
| 288 | * MSGCODE_START_BOOTLOADER doesn't respond with MSGCODE_COMMAND_ACCEPTED |
| 289 | |
| 290 | -- Pulse-Eight Packaging <packaging@pulse-eight.com> Thu, 25 Jan 2012 23:28:00 +0100 |
| 291 | |
| 292 | libcec (1.4-1) unstable; urgency=low |
| 293 | |
| 294 | * changed/added: |
| 295 | * added the vendor id for Sony |
| 296 | * always refresh the power state of a device when it hasn't been updated |
| 297 | for 30 seconds |
| 298 | * do silent builds by default |
| 299 | * interface changes: |
| 300 | * added optional callback methods to libCEC. enable them by calling |
| 301 | EnableCallbacks(ICECCallbacks *callbacks) / |
| 302 | cec_enable_callbacks(ICECCallbacks *callbacks). after this method is |
| 303 | called, the GetNext...() methods will not return any data |
| 304 | * added the same callbacks to LibCecSharp. implement CecCallbackMethods |
| 305 | and override the methods in there |
| 306 | * fixed: |
| 307 | * use the given timeout when trying to open a connection to the CEC |
| 308 | adapter |
| 309 | * resolved difference between method name in LibCECC.cpp and cecc.h. |
| 310 | credits: Doug Johnson |
| 311 | * don't transmit physical addresses while holding a lock in CCECProcessor |
| 312 | * don't hold a lock when sending an active source message. |
| 313 | * unload libCEC when the lib version is invalid |
| 314 | * "unused" warnings suppressed |
| 315 | |
| 316 | -- Pulse-Eight Packaging <packaging@pulse-eight.com> Thu, 12 Jan 2012 19:06:00 +0100 |
| 317 | |
| 318 | libcec (1.3-3) unstable; urgency=low |
| 319 | |
| 320 | * changed/added: |
| 321 | * place in libudev include in an extern C block. fixes compilations on |
| 322 | older libudev versions (e.g. on Hardy). closes #2. credits @fbuenemann |
| 323 | * added pkg-config to the dependencies list. issue #15 |
| 324 | * updated README. closes #14 |
| 325 | * added a script that tests some basic functions of the CEC adapter: |
| 326 | /support/cec-test-device.sh |
| 327 | * fixed: |
| 328 | * don't make libCEC the active source when changing the physical address. |
| 329 | don't send active source messages on startup, when not the active source |
| 330 | fixes unwanted device power ups |
| 331 | * replace the command handler directly after receiving a changed vendor |
| 332 | id. change the primary type from recording device to playback device |
| 333 | for panasonic TVs |
| 334 | * don't send a deck status update when sending an active source message |
| 335 | for panasonic TVs |
| 336 | * only switch handlers once when using the generic handler |
| 337 | * don't switch handlers when not needed |
| 338 | * hold a lock in CCECProcessor::SetHDMIPort() |
| 339 | * don't send deck status updates when sending an active source message by |
| 340 | default |
| 341 | |
| 342 | -- Pulse-Eight Packaging <packaging@pulse-eight.com> Thu, 3 Jan 2012 22:48:00 +0100 |
| 343 | |
| 344 | libcec (1.3-2) unstable; urgency=low |
| 345 | |
| 346 | * changed/added: |
| 347 | * copy libcec.dll to the XBMC installation dir when XBMC is found |
| 348 | * disable background polling. let the client request this info when needed |
| 349 | * update the power status of a device when it's set to |
| 350 | CEC_POWER_STATUS_IN_TRANSITION_STANDBY_TO_ON |
| 351 | * wait for the correct response when requesting something, not just any |
| 352 | response |
| 353 | * don't keep trying the same command/request after receiving a feature |
| 354 | abort message |
| 355 | * interface changes: |
| 356 | * change the previously unused boolean parameter in volume control methods |
| 357 | to bSendRelease, and only send a key release when it's true. default to |
| 358 | true |
| 359 | * fixed: |
| 360 | * don't send the power up/down keypress to listeners when in the initial |
| 361 | device state (powered off). fixes unexpected shutdown in XBMC when |
| 362 | connecting to the CEC adapter. |
| 363 | * send a 'menu state activated' command when starting up. bugzid: 113 |
| 364 | * don't wait for a response when not needed |
| 365 | * don't hold a lock while waiting for a response. fixes failed libCEC |
| 366 | inits and slow responses |
| 367 | * don't replace a command handler when it's being used. fixes possible |
| 368 | crash on startup |
| 369 | * don't try to do anything before the processor thread has started |
| 370 | * don't transmit active source messages when the physical address is |
| 371 | still 0xFFFF |
| 372 | * don't init the default handler before the physical address is known |
| 373 | |
| 374 | -- Pulse-Eight Packaging <packaging@pulse-eight.com> Thu, 29 Dec 2011 03:05:00 +0100 |
| 375 | |
| 376 | libcec (1.3-1) unstable; urgency=low |
| 377 | |
| 378 | * changed/added: |
| 379 | * make libudev optional. if libudev is not available on linux, adapter |
| 380 | autodetection will also not be available. fixes compilation on Hardy/ATV1 |
| 381 | * added a C++ CLR wrapper for libCEC, so libCEC can be used by any .NET |
| 382 | language |
| 383 | * added vendor support for LG |
| 384 | * added vendor support for Philips |
| 385 | * added vendor support for Yamaha |
| 386 | * added vendor support for Onkyo |
| 387 | * added 'scan' command to cec-client, that displays info about devices on |
| 388 | the bus. made all ToString() methods available on the interface. |
| 389 | * added '-s' or '--single-command' to cec-client. starting cec-client with |
| 390 | this parameter executes a single command in cec-client and does not power |
| 391 | on devices on startup and power them off on exit. this way, you can use |
| 392 | cec-client in a shell script. since there's some handshaking involved at |
| 393 | startup, this is not very fast. to execute a command and only display the |
| 394 | result and any error/warning, execute it with |
| 395 | RESULT=`echo command | cec-client -s -d 3` (on linux/osx, win32 batch |
| 396 | files are a bit different) |
| 397 | * added HDMI port ('-p' or '--port') and base device ('-b' or '--base') to |
| 398 | cec-client's parameters |
| 399 | * handle image view on and text view on |
| 400 | * handle routing information and report physical address opcodes |
| 401 | * handle audio status updates |
| 402 | * send ping and bootloader commands via the output queue |
| 403 | * scan the CEC bus for devices when starting libcec |
| 404 | * pass all commands that are directed at libcec to listeners |
| 405 | * interface changes: |
| 406 | * added GetActiveSource()/cec_get_active_source() |
| 407 | * added IsActiveSource()/cec_is_active_source() |
| 408 | * added GetDevicePhysicalAddress()/cec_get_device_physical_address() |
| 409 | * added GetDeviceOSDName()/cec_get_osd_name() |
| 410 | * added SendKeypress()/cec_send_keypress() and SendKeyRelease()/ |
| 411 | cec_send_key_release() |
| 412 | * added VolumeUp()/cec_volume_up(), VolumeDown()/cec_volume_down(), |
| 413 | MuteAudio()/cec_mute_audio() |
| 414 | * added GetActiveDevices()/cec_get_active_devices(), IsActiveDevice()/ |
| 415 | cec_is_active_device(), IsActiveDeviceType()/cec_is_active_device_type(). |
| 416 | * added SetHDMIPort()/cec_set_hdmi_port(). devices are now detected on load |
| 417 | and when a device with the same physical address is detected, libcec will |
| 418 | use the selected hdmi port on that device. should fix source selection on |
| 419 | other devices, like an amplifier |
| 420 | * added a hook in libcec for physical address autodetection |
| 421 | * fixed: |
| 422 | * don't request the physical address from the tv (it's always 0x0000) |
| 423 | * set the proper ackmask before doing anything else |
| 424 | * don't unlock the transmit mutex in CCECProcessor while waiting for an |
| 425 | answer |
| 426 | * fix device polling |
| 427 | * refactor CEC read/write. keep a single lock for all writes, not one per |
| 428 | device |
| 429 | * ignore other data while waiting for a response |
| 430 | * retry failed tranmissions |
| 431 | * don't delete a message before it's been sent when starting the bootloader |
| 432 | * or when sending a ping |
| 433 | * fixed possible segfault when switching the command handler after a vendor |
| 434 | * id changed |
| 435 | * handle audio opcodes correctly |
| 436 | * inactive source should be directly addressed at the TV |
| 437 | * don't report a changed physical address when it hasn't changed |
| 438 | * routing information sets the stream path, not the physical address |
| 439 | * don't scan the whole bus in CCECProcessor::IsActiveDeviceType() |
| 440 | * don't request the vendor id from devices that are handled by libcec |
| 441 | * mark device status as present when a command was received from a device |
| 442 | * always send a power on command in CCECBusDevice::PowerOn() |
| 443 | * don't request updates statusses unless needed |
| 444 | * report physical address sends 3 parameters, not 2. check whether the |
| 445 | device type is correct |
| 446 | * devices can send vendor commands from other vendors, so don't assume the |
| 447 | device is of a certain vendor when it sends commands with a vendor id |
| 448 | * thread safety fixes. bugzid: 19 |
| 449 | * clear any previous input when opening a connection to the adapter. |
| 450 | bugzid: 54 |
| 451 | * use the correct source address in CSLCommandHandler::HandleVendorCommand() |
| 452 | * uncorrected CEC_OPCODE_DEVICE_VENDOR_ID. closes #5 |
| 453 | * renamed enum methods. fixes potential macro collision with isset(). |
| 454 | thanks davilla |
| 455 | * don't change the active device when receiving stream path changed |
| 456 | messages. fixes wrong source selection when powering after the TV. |
| 457 | |
| 458 | -- Pulse-Eight Packaging <packaging@pulse-eight.com> Fri, 09 Dec 2011 12:16:00 +0100 |
| 459 | |
| 460 | libcec (1.2-1) unstable; urgency=low |
| 461 | |
| 462 | * bugfixes: |
| 463 | * pass the deck_control command to libcec listeners |
| 464 | * check whether the initiator is valid in CCECProcessor::ParseCommand(). |
| 465 | fixes possible segfault when parsing invalid data |
| 466 | |
| 467 | -- Pulse-Eight Packaging <packaging@pulse-eight.com> Sat, 12 Nov 2011 13:36:00 +0100 |
| 468 | |
| 469 | libcec (1.1-3) unstable; urgency=low |
| 470 | |
| 471 | * fixed return value in CCECProcessor::SetStreamPath(), which prevented |
| 472 | active source and menu state from being sent |
| 473 | |
| 474 | -- Pulse-Eight Packaging <packaging@pulse-eight.com> Fri, 11 Nov 2011 23:36:00 +0100 |
| 475 | |
| 476 | libcec (1.1-2) unstable; urgency=low |
| 477 | |
| 478 | * forgot to update the headers to v1.1 |
| 479 | |
| 480 | -- Pulse-Eight Packaging <packaging@pulse-eight.com> Fri, 11 Nov 2011 18:56:00 +0100 |
| 481 | |
| 482 | libcec (1.1-1) unstable; urgency=low |
| 483 | |
| 484 | * interface changes: |
| 485 | * added logical address autodetection and let libcec handle multiple types |
| 486 | simultaniously. for logical address autodetection, you have to use |
| 487 | CECInit()/cec_init_typed() instead of CECCreate()/cec_init() |
| 488 | * added SetActiveSource()/cec_set_active_source() to the interface. |
| 489 | deprecated SetActiveView()/cec_set_active_view() |
| 490 | * added SetMenuState() |
| 491 | * added PollDevice()/cec_poll_device() |
| 492 | * removed duplicate method SetActiveSource() / SetActiveView() |
| 493 | * added SetDeckControlMode() and SetDeckInfo() |
| 494 | * fixed: |
| 495 | * added vendor detection for panasonic and broadcast active view and set |
| 496 | menu state when a panasonic device sets the stream path. thanks for the |
| 497 | pointer cptcoconut. |
| 498 | * added vendor code for pioneer |
| 499 | * osd string is 13 chars max. don't send more |
| 500 | * send the correct cec version for each device |
| 501 | * switch to panasonic specific cec implementation if a panasonic device was |
| 502 | detected |
| 503 | * send the correct device type in TransmitPhysicalAddress() |
| 504 | * send a reply from the correct device when the stream path is requested |
| 505 | * opcode 0x80 means the stream path changed, not the physical address |
| 506 | * don't poll for a vendor ID in monitoring mode |
| 507 | * fixed parameter parsing in SetVendorId() |
| 508 | * buffer up commands that are received while waiting for an ack. only send |
| 509 | 'active source' message for the actual active source |
| 510 | * win32: prepend the com port path with '\\.\', so com ports > 9 can be |
| 511 | accessed. thanks smolesen |
| 512 | * audio systems cannot be an active source, so don't transmit active |
| 513 | source message from this device |
| 514 | * only send 'active source' when powered on |
| 515 | * only set the osd name for the primary device. use default values for |
| 516 | others |
| 517 | * increase physical address with 0x100 per device |
| 518 | * win32: removed unneeded afxres.h include in the resource files, which |
| 519 | is not present when using studio express. thanks Ghuron |
| 520 | * fixed C headers |
| 521 | * mark the active source as active and other devices as inactive |
| 522 | * set the power status to 'on' when receiving CEC_USER_CONTROL_CODE_POWER |
| 523 | * transmit the menu state as (active) when the stream path is set |
| 524 | * changed: |
| 525 | * changed copyright of boblight files with permission of the original |
| 526 | author |
| 527 | * partial handling of audio related opcodes |
| 528 | * more consistent log messages |
| 529 | * set a device type and name for each CCECBusDevice |
| 530 | * keep a power and menu state per device |
| 531 | * renamed all Broadcast...() and Report...() methods to Transmit...() |
| 532 | * renamed SetOSDString() to TransmitOSDString() |
| 533 | * changed debug level of 'did not receive ack' from error to debug |
| 534 | * only set the power status to 'on' for the primary device |
| 535 | * moved method decriptions from cecc.h to cec.h |
| 536 | * only send a power on command when a device isn't on already and set |
| 537 | the power state to CEC_POWER_STATUS_IN_TRANSITION_STANDBY_TO_ON while |
| 538 | powering on |
| 539 | * handle CEC_OPCODE_STANDBY |
| 540 | * handle CEC_OPCODE_ACTIVE_SOURCE |
| 541 | * always start in standby mode and let the tv (or other device) send the |
| 542 | power on command |
| 543 | * renamed the last few enums |
| 544 | * handle deck related opcodes. |
| 545 | * added TransmitVendorId(), but only transmit the id if it's not set to 'unknown' |
| 546 | |
| 547 | -- Pulse-Eight Packaging <packaging@pulse-eight.com> Fri, 11 Nov 2011 17:42:00 +0100 |
| 548 | |
| 549 | libcec (1.0-1) unstable; urgency=low |
| 550 | |
| 551 | * interface changes: |
| 552 | * set lib interface version back to 1.0 and rename GetLibVersion() to |
| 553 | GetLibVersionMajor() and GetMinVersion() to GetMinLibVersion() |
| 554 | * added GetLibVersionMinor()/cec_get_lib_version_minor() and set the minor |
| 555 | version number to 1 |
| 556 | * fixed: |
| 557 | * samsung's vendor specific remote keypresses don't send key releases. added |
| 558 | call to AddKey() directly after the keypress |
| 559 | * always reset the button press time in CLibCEC::AddKey() |
| 560 | * always wait for a signal in CCECProcessor::Transmit() |
| 561 | * changed: |
| 562 | * drop shared_ptr and use a normal pointer. removed boost dependency |
| 563 | |
| 564 | -- Pulse-Eight Packaging <packaging@pulse-eight.com> Fri, 04 Nov 2011 00:14:00 +0100 |
| 565 | |
| 566 | libcec (0.8-2) unstable; urgency=low |
| 567 | |
| 568 | * added 'libboost-dev' to build deps |
| 569 | |
| 570 | -- Pulse-Eight Packaging <packaging@pulse-eight.com> Tue, 01 Nov 2011 23:31:00 +0100 |
| 571 | |
| 572 | libcec (0.8-1) unstable; urgency=low |
| 573 | |
| 574 | * interface changes: |
| 575 | * added GetDevicePowerStatus()/cec_get_device_power_status() |
| 576 | * added GetDeviceVendorId()/cec_get_device_vendor_id() |
| 577 | * added GetDeviceMenuLanguage()/cec_get_device_menu_language() |
| 578 | * added GetDeviceCecVersion()/cec_get_device_cec_version() |
| 579 | * added SwitchMonitoring()/cec_switch_monitoring() to the interface. when |
| 580 | monitoring is enabled, the device will only log the data it received, |
| 581 | but will not respond to any message |
| 582 | * removed timeout parameter in Transmit() and included the ack timeout in |
| 583 | the cec_command struct |
| 584 | * made the vendor id -> vendor name translation available |
| 585 | * made CEC_LOG levels powers of 2 |
| 586 | * introduced CEC_LOG_TRAFFIC log level |
| 587 | * fixed: |
| 588 | * set the correct ackmask on startup |
| 589 | * wait for ack while keeping a lock |
| 590 | * wait for the processor thread to start before continueing on startup |
| 591 | * wait for messages to be transmitted before continueing in |
| 592 | CCECProcessor::Transmit() |
| 593 | * only set the logical address once when it has changed |
| 594 | * correct source for broadcast messages |
| 595 | * win32: create Release type installer |
| 596 | * changed: |
| 597 | * make all reads and write in CAdapterCommunication go through buffers. |
| 598 | * poll for a vendor ID of connected devices and switch to a non-standard |
| 599 | CEC implementation if needed. |
| 600 | * added vendor detection of Samsung and LG devices |
| 601 | * handle samsung remote command 'return' |
| 602 | * cec-client: |
| 603 | * added -la and --logical-address to the command line params |
| 604 | * added -d and --log-level params to cec-client |
| 605 | * added -sf and --short-log-file, which only log the actual messages, not |
| 606 | the level and timestamp |
| 607 | * added -f and --log-file parameters to cec-client |
| 608 | * added option to change the log level to cec-client |
| 609 | |
| 610 | -- Pulse-Eight Packaging <packaging@pulse-eight.com> Tue, 01 Nov 2011 22:58:00 +0100 |
| 611 | |
| 612 | libcec (0.7-1) unstable; urgency=low |
| 613 | |
| 614 | * send a keypress with 0 duration when a key is pressed and with a duration |
| 615 | set when it's released |
| 616 | * added SetOSDString() to the interface (not supported by all tvs) |
| 617 | * fixed: 'routing change' is a broadcast message. log routing changes, but |
| 618 | don't send a 'set active view' message, so the active input won't be |
| 619 | changed |
| 620 | * log keypresses in the debug log |
| 621 | * added 'pa' command to cec-client, to change the physical address |
| 622 | * added SetPhysicalAddress()/cec_set_physical_address() to the interface, so |
| 623 | the HDMI port number to use can be changed |
| 624 | * fixed: put the message processing code from WaitForAck() in ParseMessage(). |
| 625 | fixes missing incoming message logging of non-data messages when not |
| 626 | waiting for an ACK |
| 627 | * added 'txn' command to cec-client. same as 'tx', but doesn't wait for ACK |
| 628 | before returning |
| 629 | * fixed: set initiator and destination first in cec_command::push_back(). |
| 630 | fixes 'tx' command in cec-client |
| 631 | * fixed: keep trying to connect while iTimeout isn't reached (default 10 |
| 632 | seconds). fixes exit with a 'permission denied' error when the device isn't |
| 633 | ready yet. remove CEC_SETTLE_DOWN_TIME |
| 634 | * fixed: don't call SetActiveView() when reporting the power status. fixes |
| 635 | loop which causes some TVs to report failed connections |
| 636 | * fixed: eom was not being parsed when receiving MSGCODE_FRAME_DATA. fixed. |
| 637 | * fixed: add the device type as parameter when sending the physical address. |
| 638 | thanks bobo1on1 |
| 639 | * fixed: typo in libcec.pc.in |
| 640 | * added optional strLib parameter to LoadLibCec(), so the location of the |
| 641 | shared library can be specified |
| 642 | * only link cec-client against ld. use AC_SEARCH_LIBS instead of AC_CHECK_LIB |
| 643 | * use int instead of bool on the public C interface and remove stdbool.h include |
| 644 | * renamed: CECExports.h => cec.h, CECExportsC.h => cecc.h, CECLoader.h => |
| 645 | cecloader.h, CECTypes.h => cectypes.h |
| 646 | * updated debian package. split up libcec and libcec-dev |
| 647 | * fixed: changed to use dlopen instead of static linkage. shuffled headers a |
| 648 | bit. bumped interface to version 7 |
| 649 | * removed 'rt' from libraries. it's not needed (anymore) |
| 650 | * fixed: reset the active view after a routing change. issue #1 |
| 651 | * fixed: changed attached license to be GPLv2 instead of GPLv3 this was an |
| 652 | error as libCEC is licensed GPLv2 not GPLv3 thanks @garbear |
| 653 | * added contributors link |
| 654 | |
| 655 | -- Pulse-Eight Packaging <packaging@pulse-eight.com> Fri, 14 Oct 2011 17:34:00 +0200 |
| 656 | |
| 657 | libcec (0.6-1) unstable; urgency=low |
| 658 | |
| 659 | * bumped interface version to 6 |
| 660 | * fixed packet output (reporting the OSD name correctly now) |
| 661 | * refactored packet structs: split up in cec commands and adapter messages |
| 662 | * fixed i/o timings |
| 663 | * added Darwin support (thanks Davilla!) |
| 664 | * fixed WaitForAck() |
| 665 | * fixed possible deadlock when starting a new thread |
| 666 | * implemented vendor id and device class parsing. full detection will follow |
| 667 | * added "on" and "standby" commands to the test client |
| 668 | * retransmit packets if needed |
| 669 | * fix GetTimeMs() on linux |
| 670 | * added timestamp to log messages |
| 671 | |
| 672 | -- Pulse-Eight Packaging <packaging@pulse-eight.com> Sun, 09 Oct 2011 15:15:00 +0200 |
| 673 | |
| 674 | libcec (0.5-1) unstable; urgency=low |
| 675 | |
| 676 | * bumped interface version to 5 |
| 677 | * don't pass std::string and std::vector accross the interface |
| 678 | * fixed heap corruption crashes on windows |
| 679 | * fixed some memory leaks |
| 680 | * reset all structs to default values before doing with them |
| 681 | |
| 682 | -- Pulse-Eight Packaging <packaging@pulse-eight.com> Fri, 07 Oct 2011 22:00:00 +0200 |
| 683 | |
| 684 | libcec (0.4-3) unstable; urgency=low |
| 685 | |
| 686 | * fixed reconnect |
| 687 | * fixed some threading related bugs |
| 688 | * fixed deadlock on exit |
| 689 | * fixed wrongly reported physical address |
| 690 | |
| 691 | -- Pulse-Eight Packaging <packaging@pulse-eight.com> Thu, 06 Oct 2011 00:19:00 +0200 |
| 692 | |
| 693 | libcec (0.4-2) unstable; urgency=low |
| 694 | |
| 695 | * fixed int parameter sizes and some signed/unsigned warnings |
| 696 | * check whether m_port isn't NULL in ReadFromDevice |
| 697 | * stop the processor thread and delete the CSerialPort instance on exit |
| 698 | * added mutex in CSerialPort |
| 699 | * fix segfault on exit |
| 700 | * renamed libPlatform -> platform. |
| 701 | * stuck everything from libCEC in the CEC namespace to avoid namespace |
| 702 | polution |
| 703 | |
| 704 | -- Pulse-Eight Packaging <packaging@pulse-eight.com> Tue, 04 Oct 2011 23:45:00 +0200 |
| 705 | |
| 706 | libcec (0.4-1) unstable; urgency=low |
| 707 | |
| 708 | * bumped interface version to 4 |
| 709 | * timeout parameter removed from Close()/cec_close(). return type changed to |
| 710 | void |
| 711 | * added cec_destroy() method |
| 712 | * removed timeout parameter from Transmit() |
| 713 | * change the default argument of PowerOnDevices() to CECDEVICE_TV |
| 714 | * removed PowerOffDevices(). use StandbyDevices() instead |
| 715 | * removed obsolete methods from the interface |
| 716 | * fixed bug: pthread_cond_wait was called without the mutex locked |
| 717 | * fixed possible deadlock: don't send messages and wait for an ack with the |
| 718 | mutex locked in CCECParser |
| 719 | * created a separate reader thread and fixed the 'lock timeout' bug |
| 720 | * testclient: use CECDEVICE_TV instead of the default argument |
| 721 | (CECDEVICE_BROADCAST) for PowerOnDevices() and PowerOffDevices() |
| 722 | |
| 723 | -- Pulse-Eight Packaging <packaging@pulse-eight.com> Tue, 04 Oct 2011 00:48:00 +0200 |
| 724 | |
| 725 | libcec (0.3-1) unstable; urgency=low |
| 726 | |
| 727 | * added device detection support for Windows |
| 728 | |
| 729 | -- Pulse-Eight Packaging <packaging@pulse-eight.com> Sun, 02 Oct 2011 12:09:33 +0200 |
| 730 | |
| 731 | libcec (0.2-1) unstable; urgency=low |
| 732 | |
| 733 | * added a Close() method to the interface |
| 734 | * Added CEC command that were received by the adapter in a buffer that can be |
| 735 | read by a client with GetNextCommand()/cec_get_next_command(). added a |
| 736 | 'help' command to the test client, that displays all available commands |
| 737 | * Fixed setting the ackmask. deprecated SetAckMask()/cec_set_ack_mask(). use |
| 738 | SetLogicalAddress()/cec_set_logical_address() instead. add 'la' command to |
| 739 | the testclient to set the logical address of the cec adapter |
| 740 | * Added optional logical and physical address parameters to |
| 741 | LoadLibCec()/cec_init() on the interface. fixed wrongly placed namespace |
| 742 | close tag in CECExports.h. updated interface documentation. bumped |
| 743 | interface version to 2. |
| 744 | * fixed hardcoded ackmask in SetAckMast(). set a shorter display name in the |
| 745 | test client. the previous one was too long and being rejected |
| 746 | |
| 747 | -- Pulse-Eight Packaging <packaging@pulse-eight.com> Fri, 28 Sep 2011 01:33:00 +0200 |
| 748 | |
| 749 | libcec (0.1-1) unstable; urgency=low |
| 750 | |
| 751 | * Initial release v0.1 |
| 752 | |
| 753 | -- Pulse-Eight Packaging <packaging@pulse-eight.com> Wed, 28 Sep 2011 23:55:48 +0200 |