cec: don't forward the standby opcode more than once every 10 seconds
[deb_libcec.git] / debian / changelog
CommitLineData
347f7adb
LOK
1libcec (1.7.2-1) unstable; urgency=low
2
3 * changed/added:
4 * display a warning message if libCEC was not compiled with adapter
5 detection for the target platform
6 * panasonic: added a vendor command for panasonic that will enable routing
7 of some more buttons on the remote (guide, text, ...)
8 * cec-client: don't display debug output by default in 'cec-client -l'
9
10 * interface changes:
9d0dd77c
LOK
11 * added a callback for clients that is called when a source is
12 (de)activated, so the client can respond to this action
347f7adb
LOK
13 * added cec_command::PushArray()
14
15 * fixed:
16 * missing virtual keyword in CCECCommandHandler::
17 GetReplacementDeviceType()
18 * replace the handler (if needed) in GetHandler()
19 * reply with abort reason 'invalid operand' to vendor commands that we
20 don't understand
21 * changed all Handle...() commands to return a cec_abort_reason and send
22 the correct abort reason to the initiator as a response to directly
23 addressed messages
24 * changed 'couldn't change the ackmask: the connection is closed' into a
25 debug message
26 * don't send active source commands when the physical address is invalid or
27 unknown
28 * set the power status of a device to 'powered on' after it sends a stream
29 path change. can save an unneeded power state update request
30 * removed dupe code around delayed activate source commands. check for
31 delayed active source commands every 5 seconds instead of 15 seconds.
32 * panasonic: reset m_bPowerUpEventReceived in CVLCommandHandler when the
33 device lets us know it went into standby mode. fixes possibly failed
34 active source switches after it succeeded once
35 * panasonic: fixed delayed source switch for panasonic
9d0dd77c
LOK
36 * set the physical address of each device controlled by a CCECClient if
37 it's valid
38 * Windows could get stuck in a loop in case there an error occured while
39 reading registry entries
347f7adb
LOK
40 * cec-client: wrong client version
41 * Makefile cleanups. don't link cec-client and cec-config against libudev
42 and liblockdev
9d0dd77c
LOK
43 * pin libcec to the same version as libcec1
44 * LibCecSharp: update the local configuration after connecting
45 * LibCecSharp: better handling of callbacks
347f7adb 46
9d0dd77c 47 -- Pulse-Eight Packaging <packaging@pulse-eight.com> Sun, 24 Jun 2012 09:57:00 +0100
347f7adb 48
0a61dc24 49libcec (1.7.1-1) unstable; urgency=low
071f7a5c 50
0a61dc24
LOK
51 * changed/added:
52 * added physical address detection via ADL for AMD graphics cards
53 * attempt to get the edid from nvidia's graphics card driver on linux via
54 /proc/acpi/video/NGFX/HDMI/EDID
55 * attempt to get the PA from the registry on windows if we fail to get the
56 physical address from the display driver
57 * changed the order in CCECClient::SetPhysicalAddress() so it first checks
58 whether a PA override is set in libcec_configuration.iPhysicalAddress,
59 then checks whether the address can be detected, and if both failed it'll
60 use the HDMI port + base device setting
61 * cec-client: only active the source when reconnecting if libcec was the
62 active source before closing the connection
63 * platform: added tcp server sockets for posix
071f7a5c 64
0a61dc24
LOK
65 * interface changes:
66 * libcec_configuration.bAutodetectAddress is now read-only, and will be set
67 to 1 by libCEC if the PA was autodetected
68 * LibCecSharp: don't use an int but a CecUserControlCode in a CecKeypress
69
70 * fixed:
71 * don't unregister clients in CLibCEC when disconnecting, but only in
72 CCECProcessor. fixes reconnect after close
73 * MSGCODE_TIMEOUT_ERROR is a response to a transmission
74 * retry 'activate source' every 10 seconds if it failed
75 * don't respond with a poll from the broadcast address when receiving
76 in CSLCommandHandler::HandleDeviceVendorId(), but use the primary LA of
77 the client as source instead
78 * hold a lock when changing the ackmask in
79 CUSBCECAdapterCommunication::Open
75060af4
LOK
80 * don't respond with a feature abort to opcode play messages. bugzid: 873
81 * get the vendor id of the TV before allocating logical addresses, so we
82 can determine if the TV supports the requested device type directly
83 * TransmitImageViewOn() and TransmitActiveSource() always returned true,
84 even if sending the command failed, so the retry for failed source
85 activations was never triggered
e3209cf7
LOK
86 * open libcec.so.1 instead of libcec.so in cecloader.h. credits @coling.
87 github issue #30.
88 * fixed missing firmware version and build date in cec-client -l /
89 GetDeviceInformation()
0a61dc24 90
e3209cf7 91 -- Pulse-Eight Packaging <packaging@pulse-eight.com> Sun, 10 Jun 2012 13:39:00 +0100
071f7a5c 92
c605d339 93libcec (1.6.1-5) unstable; urgency=low
d3b96c62 94
142d1b01 95 * synced /debian directory with the one in precise (with a couple of changes)
d3b96c62
LOK
96 * changed/added:
97 * serial port locking on linux
98 * cec-client: added -m/--monitor startup options, which will start a
99 monitor-only client. use 'mon 0' to switch to a normal client
100 * display an alert message when the firmware of the adapter can be upgraded
101 * added CEC 1.4 opcodes
102 * send a feature abort again for all unhandled commands
103 * refactored CLibCEC so a client registers itself within CCECProcessor,
104 which then allocates one or more logical addresses for it.
105
106 * interface changes:
107 * added a new setting, bMonitorOnly, which will start a monitor-only client
108
109 * fixed:
110 * ensure that we don't crash out when trying to stop a thread that hasn't
111 been started yet
112 * don't send a 'disconnected' alert when the close method is called
113 * use the correct source when transmitting an abort message as a reposonse
114 to a vendor command with id
115 * removed statics
116 * check the client version, not the server version in
117 libcec_configuration::operator==()
118 * cec-config: fix physical address detection
119 * LibCecSharp: fixed buffer overrun when copying libcec_configuration.
120 fixes crash when trying to save the configuration in the config gui.
121
122 -- Pulse-Eight Packaging <packaging@pulse-eight.com> Mon, 14 May 2012 22:39:00 +0100
123
142d1b01
LOK
124libcec (1.6.1-2) unstable; urgency=low
125
126 * Build depends on pkg-config. (Closes: #669919)
127 * libudev-dev only optionally needed for Linux.
128
129 -- Andres Mejia <amejia@debian.org> Sat, 21 Apr 2012 19:03:19 -0400
130
131libcec (1.6.1-1) unstable; urgency=low
132
133 [ Mario Limonciello ]
134 * New upstream version (LP: #982272)
135
136 [ Andres Mejia ]
137 * New release fixes build failure with GCC-4.7. (Closes: #667241)
138 * Bump to Standards-Version 3.9.3.
139
140 -- Andres Mejia <amejia@debian.org> Sat, 21 Apr 2012 00:02:08 -0400
141
142libcec (1.3.2-3) unstable; urgency=low
143
144 * Make dpkg-source options default for packaging.
145
146 -- Andres Mejia <amejia@debian.org> Tue, 10 Jan 2012 18:12:57 -0500
147
148libcec (1.3.2-2) unstable; urgency=low
149
150 * Add options to pass to dpkg-source.
151
152 -- Andres Mejia <amejia@debian.org> Sun, 08 Jan 2012 22:59:34 -0500
153
154libcec (1.3.2-1) unstable; urgency=low
155
156 * Initial release. (Closes: #655143)
157
158 -- Andres Mejia <amejia@debian.org> Sun, 08 Jan 2012 15:36:49 -0500
159
e736e6be
LOK
160libcec (1.6-3) unstable; urgency=low
161
162 * changed/added:
163 * cec-client: show the firmware build date if available in cec-client -l
164 * cec-client: don't activate the source when starting
165 * cec-client: group up the output of the 'scan' command, and add the
166 currently active source to the output
167 * log the libCEC version in the 'connected to the CEC adapter' log entry,
168 and add the firmware build date to the line if it's available, so all
169 relevant version info is available in 1 log line.
170 * async writes for CUSBCECAdapterCommunication. less locks and polls, more
171 speed
172 * added 'make docs' target, that updates the doxygen documentation
173
174 * interface changes:
175 * added operator == and != for libcec_configuration
176 * added GetResponseOpcode(cec_opcode opcode) to cec_command
177 * added the firmware build date to libcec_configuration, so it can be
178 displayed by the client too.
179 * added static CLibCEC::Alert() method and CEC_ALERT_CONNECTION_LOST value
180 * added a callback to handle menu state changes. if the callback method
181 returns 1, then the change is processed by the CCECBusDevice too. if 0,
182 then the CCECBusDevice will always have menu state 'activated', so
183 keypresses are routed. bugzid: 724
184 * added a default menu language to libcec_configuration and set this
185 language for devices controlled by libcec. bugzid: 69
186
187 * fixed
188 * CCECProcessor::IsActiveSource() - TV was never checked
189 * don't call the deprecated SetActiveView() method in cec-client
190 * request the active source if unknown in CCECProcessor::GetActiveSource()
191 * don't try to match a device with PA 0xFFFF.
192 * don't change the power status of a device when changing the stream path
193 * don't set the power status to 'powered off' when marking the source
194 managed by libcec as inactive, or the tv will might send a power control
195 keycode when making it active again, potentially shutting down the system
196 * potential segfault in CCECProcessor::GetDeviceByPhysicalAddress()
197 * stream path changes when changed to the TV source (PA 0)
198 * clear the unsupported features list in CCECBusDevice::ResetDeviceStatus()
199 * never mark vendor commands as unsupported (only some may be unsupported),
200 as well as some others that should never be marked unsupported
201 * don't retry in CCECCommandHandler if the command has been marked as
202 unsupported
203 * don't request the PA of devices when handling an incoming CEC command, or
204 it'll block things while waiting for a response. if that response never
205 comes, or comes late, then other incoming commands will be timed out
206 before they are handled
207 * optimisation - strip unneeded virtual keywords from top level
208 implementations
209 * use the vlcommandhandler for the primary device that is handled by libCEC
210 when a panasonic tv is detected, so delayed activate source commands are
211 using the correct handler. bugzid: 723
212 * set the power status of device controlled by libCEC to
213 CEC_POWER_STATUS_ON
214 instead of IN_TRANSITION_STANDBY_TO_ON. reset the device status of a
215 device if it was detected as removed. bugzid: 755
216 * potentially uninitialised values in cec_command
217 * delay the 'active source' command for panasonic, until the vendor command
218 that reports that the TV is powered on has been received. bugzid: 723
219 * only respond to Give Physical Address with Report Physical Address.
220 bugzid: 592
221 This fixes several reports of the TV improperly switching to the libcec
222 device after it has previously switched to another source. Fix confirmed
223 with Panasonic and also reported to be an issue with Samsung and
224 Philips.
225 * check whether callback methods are set to a valid ptr
226 * number of retries for polls
227 * win32: fix build in paths with spaces. bugzid: 730
228 * LibCecSharp: free the alert GC callback when cleaning up
229 * the wrong setting was being read when powering on devices
230 * close the connection when a comm error was detected, and notify the
231 client via an alert
232 * don't segfault when calling ThreadsWait() without a valid thread
233 * lib/platform: fixed memleak
234 * leak in CCECAdapterMessageQueue::Write
235 * don't send commands if we know them to be unsupported. bugzid: 725
236
237 -- Pulse-Eight Packaging <packaging@pulse-eight.com> Wed, 18 Apr 2012 11:30:00 +0100
238
e4a7396c
LOK
239libcec (1.6-2) unstable; urgency=low
240
241 * fixed:
242 * fixed typo in CUSBCECAdapterCommands::RequestSettings() that prevented
243 the settings from being read. the settings were still written, but never
244 read when bGetSettingsFromROM = 1.
245
246 -- Pulse-Eight Packaging <packaging@pulse-eight.com> Wed, 18 Apr 2012 11:30:00 +0100
247
c65aa417
LOK
248libcec (1.6-1) unstable; urgency=medium
249
250 * changed/added:
251 * full firmware V2 support
252 * -o/--osdname argument for cec-client to set a custom osd name
253 * added the firmware version to cec-client's -l / --list-devices command.
254 bugzid: 631
255 * added power on command for Samsung AVR devices. bugzid: 361
256 * added buttoncode for 'channels list' on Samsung (0x96)
257 * don't check for the windows ddk when a prebuilt driver installer is
258 present
259 * respond to Get Menu Language. bugzid: 547. In the event that the menu
260 language is undefined in libcec (currently the default), the response
261 will be a feature abort.
262
263 * interface changes:
264 * added the firmware version to libcec_configuration (read-only). bumped
265 server version to 1.6.0. fixed 'unknown server version' message on
266 startup. bugzid: 631
267 * added a new setting to control whether to put the TV in standby when the
268 player is put in standby. added some missing bits (version numbers,
269 config) to LibCecSharp. bugzid: 558
270 * added an alert callback. bugzid: 462
271 * added bShutdownOnStandby to libcec_configuration. bugzid: 660. This
272 setting tells the client to shutdown when the TV switches off and is
273 complimentary to bPowerOffOnStandby, which tells the PC to suspend.
274 They are kept separate to maintain backwards compatability.
275
276 * fixed
277 * gcc 4.7 compilation
278 * poll doesn't have an opcode. bugzid: 591
279 * wait for MSGEND when data was received when opening the connection.
280 bugzid: 536
281 * mark the correct device as active source after a stream path change.
282 if the new address is not found, but the old address is, then mark the
283 old address as inactive. fixes TV switching back to the old active source
284 when it scans for devices. bugzid: 592
285 * ensure that the vendor ID is sent before trying to activate any SL device
286 bugzid: 574
287 * fixed possible crash when in CLibCEC::IsLibCECActiveSource() when libCEC
288 doesn't know which device is the active source. bugzid: 479
289 * correct handling CEC_USER_CONTROL_CODE_POWER. This ensures that the power
290 code always operates as a toggle, depending on the current state, and
291 that SetCurrentButton is always called for a valid user control code.
292 bugzid: 570
293 * frequency wasn't checked in GetTimeMs(), leading to incorrect wait times
294 on some windows systems
295 * refactored USB adapter communication. less locks, shorter locks, added
296 documentation, lots of clean ups and no more incoming messages that are
297 skipped
298 * the destructor of CSerialSocket didn't call Close()
299 * added guards in CSerialPort
300 * reset m_socket to INVALID_SERIAL_SOCKET_VALUE after closing the
301 connection
302 * always wait for thread exit in CThread's desctructor
303 * crash on exit after GetDeviceInformation()
304 * check whether the destination is valid before setting anything in
305 m_bWaitingForAck. fixes heap corruption and crash on exit. bugzid: 479
306 * bUseTVMenuLanguage from libcec_configuration wasn't copied in
307 SetConfiguration(), so this setting was reset to the default value
308 (enabled) every time. bugzid: 617
309 * request the vendor id of a device if needed when the device status is
310 changed into 'present'. bugzid: 361
311 * give priority to messages from the TV. removed the global lock in
312 CCECProcessor when sending. this is no longer needed. bugzid: 238
313 * add some bounds checking to the HDMI port number. bugzid: 508
314 * fixed usbser.sys copying in the driver .INF. bugzid: 503
315 * only update the physical address when it has actually changed. bugzid:
316 672
317 * moved the static variables in os-threads from the header to a separate
318 cpp file, or it could lead to problems when included multiple times
319 * don't send an active source command when the physical address couldn't be
320 set, or it might confuse other CEC devices
321 * serial socket timeouts. bugzid: 654
322 * fixed possible crash when trying to request a vendor id of a device when
323 the address of libCEC isn't known yet. bugzid: 654
324 * extra guard so no commands are transmitted without a valid initiator.
325 bugzid: 654
326 * moved the timed ping to a separate thread. bugzid: 654
327 * persist settings directly when they're changed, only persist settings
328 that actually changed, only instruct the device to persist the settings
329 in eeprom when something changed, and don't persist settings on exit.
330 bugzid: 715
331 * cec-config-gui: persist settings both in the eeprom and in the settings
332 xml file
333 * validate the input in CCECProcessor::IsActiveSource(). fixes potential
334 crash when the active source isn't known. bugzid: 671
335
336 -- Pulse-Eight Packaging <packaging@pulse-eight.com> Mon, 16 Apr 2012 18:03:00 +0100
337
fe462cdd
LOK
338libcec (1.5-4) unstable; urgency=low
339
340 * changed/added:
341 * OS-X installation requirements and pointer
342 * full v2 firmware support:
343 * ping the adapter every 15 seconds. bugzid: 541
344 * added v2 msgcodes. bugzid: 543
345 * implemented the write methods for the v2 configuration. bugzid: 543
346 * included the logical addresses in the persisted configuration for v2.
347 bugzid: 543
348 * persist the configuration before closing the connection. only try to
349 persist the configuration when talking to a v2 firmware. bugzid: 543
350 * added GetSetting() to CUSBCECAdapterCommunication. bugzid: 543
351 * read the persisted settings from the ROM, and update it in
352 libcec_configuration if found. bugzid: 543
353 * cec-client: set bGetSettingsFromROM to 1 in cec-client. bugzid: 543
354 * cec-client: only read persisted EEPROM settings when -r or --rom is
355 provided as cmdline arg. bugzid: 543
356 * call SetControlledMode(false) as last command when closing the
357 connection in v2. bugzid: 542
c65aa417 358 * initial FreeBSD support: simply try to use ttyU*
fe462cdd
LOK
359
360 * fixed:
361 * set controlled mode and retry to send the previous command if it failed
362 with MSGCODE_COMMAND_REJECTED
363 * m_iLineTimeout was never initialised and used. fixes MSGCODE_REJECTED
364 when transmitting a message and incorrect line timeouts being used
365 * mac configure compile bugzid: 157
366 * cec-config-gui: fixed application exit when the user clicked 'no' when
367 asked to reconnect. bugzid: 556
368 * only wait for multiple 'command accepted' response when sending a
369 transmit command, and only to 1 in other cases. bugzid: 543
370 * set the correct logical address mask before switching to autonomous mode.
371 bugzid: 543
372 * re-added SetLineTimeout(). bugzid: 543
373 * CUSBCECAdapterCommunication::SetControlledMode checked for the wrong sent
374 state
375 * os-x: don't add 0.5 before dividing in GetTimeMs()
376 * os-x: struct timespec now values weren't set correctly
377
378 -- Pulse-Eight Packaging <packaging@pulse-eight.com> Fri, 16 Mar 2012 10:12:00 +0100
379
2e82cff0
LOK
380libcec (1.5-3) unstable; urgency=low
381
382 * fixed:
383 * OS-X compilation
384 * default to firmware version 1 after 3 tries. some versions didn't send a
385 version.
386 * fixed cec-config win32 compilation
387
388 -- Pulse-Eight Packaging <packaging@pulse-eight.com> Sat, 03 Mar 2012 15:21:00 +0100
389
c3c13157
LOK
390libcec (1.5-2) unstable; urgency=low
391
392 * changed/added:
393 * added Toshiba's vendor id, and set the device ID of the primary device to
394 Toshiba's and transmit it when starting
395 * lock in SyncedBuffer
396 * added a timeout to StopThread()
397 * also add commands to unsupported features when receiving
398 CEC_ABORT_REASON_REFUSED
399 * cec-config-gui: set cbPortNumber enabled when the physical address
400 override isn't checked instead
401 * cec-config-gui: added support for the new 'send inactive source' setting
402
403 * interface changes:
404 * added an 'send inactive source' option to libcec_configuration, only
405 supported by client/server 1.5.1 and up. bugzid: 439
406 * added a command to the interface to start the bootloader directly,
407 without going through all checks. bugzid: 218
408 * LibCecSharp: implemented support for the new 'send inactive source'
409 setting
0fabd366 410
c3c13157
LOK
411 * fixed:
412 * don't send an updated configuration when libCEC hasn't been initialised
413 fully. bugzid: 459
414 * don't send an updated configuration back when initialising. let the
415 client call the GetCurrentConfiguration() method. bugzid: 459
416 * configuration updates from libCEC. bugzid: 459
417 * fixed accidental double deref. the method parameter already does that.
418 github #24
419 * use CLOCK_MONOTONIC for timing info, since gettimeofday is affected by
420 ntp and by manually adjusting the system time
421 * the timeout value of pthread_cond_timedwait has to be referenced to
422 CLOCK_REALTIME
423 * don't add data to the input buffer in CUSBCECAdapterCommunication before
424 it's fully initialised
425 * fixed return value of CUSBCECAdapterCommunication::ParseMessage(). fixes
426 messages not being parsed in certain occasions
427 * don't try to transmit when the processor is being stopped
428 * set the server version in the LibCEC's constructor, since this is
429 checked by clients. fixes 'invalid libCEC version' popup when inserting
430 the adapter
431 * don't wait for the full timeout to pass in CCECProcessor::
432 OpenConnection(), but retry to connect 2 times. fixes 'port busy' errors
433 when initialising libCEC. bugzid: 436
434 * use the correct Sleep() method in CCECProcessor::OpenConnection(). the
435 thread hasn't been started there yet, so the sleep wasn't working. fixes
436 'device or resource busy' when plugging in the adapter. bugzid: 436
437 * check the adapter ping and firmware before starting the reader thread, so
438 we really leave the com port alone for a second when it fails because of
439 a busy error. bugzid: 436
440 * ensure that the connection is really closed before retrying to connect.
441 bugzid: 436
442 * LibCecSharp: recreate the delegates properly when (re)connecting to
443 LibCecSharp
444
445 -- Pulse-Eight Packaging <packaging@pulse-eight.com> Tue, 28 Feb 2012 21:19:00 +0100
446
099a04fb
LOK
447libcec (1.5-1) unstable; urgency=low
448
449 * changed/added:
450 * a new libcec_configuration structs, which allows the client app to pass
fbaa8dd5
LOK
451 a number of new options, like waking multiple devices on startup,
452 overriding the vendor id, etc.
453 * a new configuration GUI for Windows (.NET). this allows you to set
454 libCEC's configuration for XBMC in a convenient GUI.
455 * a CLI configuration tool (unfinished) for other platforms. will be
456 finished in an update.
099a04fb 457 * implemented power up for LG devices other than a TV
fbaa8dd5
LOK
458 * win32: don't install libcec to the system directory by default, and
459 delete previous (testing) copies if present
460 * wait for multiple responses, not just for one at a time
461 * set the ackmask to 0 when closing the connection
462 * don't send 'image view on' when calling SetActiveSource()
463 * don't send power on, acitve source and standby commands by default in
464 cec-client
465 * platform: added CTryLockObject
466 * platform: added an Init() method in CTimeout, so it can be reset
467
099a04fb
LOK
468 * interface changes:
469 * added a new initialiser method: CecInitialise()/cec_initialise(), that
fbaa8dd5
LOK
470 accepts a "libc_configuration" struct as parameter. this way, the
471 signature of the init method can stay the same when adding new options.
472 in LibCecSharp, the new method appears as a new constructor.
473 * added CanPersistConfiguration()/cec_can_persist_configuration()
474 * added PersistConfiguration()/cec_persist_configuration()
099a04fb 475 * added GetCurrentConfiguration()/cec_get_current_configuration()
fbaa8dd5 476 * added SetConfiguration()/cec_set_configuration()
099a04fb 477 * added GetLogicalAddresses()/cec_get_logical_addresses(): returns the list
fbaa8dd5 478 of addresses controlled by libCEC
099a04fb 479 * added RescanDevices()/cec_rescan_devices(): lets libCEC force polls to
fbaa8dd5
LOK
480 all logical addresses.
481 * added a callback that is called when libCEC's configuration changed.
482 * moved the autodetect address api call to libcec_configuration. only send
483 power up commands to non-tv devices when the power state is not
484 on/transition->on. let players call the power up/power down command.
485 * return the anynet return keycode directly instead of translating it to
486 'return' for v1.5.0+ clients
487 * extracted CecSharpTypes.h in LibCecSharp. LibCecSharp is now in the
488 CecSharp namespace
099a04fb 489 * include the local cectypes.h in cec.h and cecc.h instead of system wide
fbaa8dd5
LOK
490 * deprecated GetLibVersion() methods. use libcec_configuration instead
491 * removed deprecated CECCreate() method
099a04fb
LOK
492
493 * fixed:
494 * fixed a lot of LG specific issues
fbaa8dd5 495 * fixed OS-X compilation. credits: Dustin Cooper
099a04fb 496 * fixed a couple of possible deadlocks, e.g. when closing the connection
fbaa8dd5
LOK
497 while receiving data
498 * cleaned up existing code
099a04fb 499 * libCEC no longer puts incoming data in a fifo buffer, but tries to
fbaa8dd5
LOK
500 process it directly, which fixes issues like libCEC blocking processing
501 new commands while waiting for transmission acks.
502 * 'unsupported command' marking in CCECBusDevice
503 * ensure that the ackmask is always set to 0 when closing the connection
504 and that the call doesn't block the Close() call
505 * don't try to read or write in CUSBCECAdapterCommunication when the
506 connection has been closed
507 * LibCecSharp: added quotes to the linker statement for libcec.lib. fixes
508 compilation in paths with spaces. closes #20
509 * LibCecSharp: set the callback methods in libcec to NULL before closing
510 the connection, since these might already have been destroyed in .NET
511 * LibCecSharp: delete the internal callback struct when closing the
512 connection
513 * LibCecSharp: pass correctly formatted logical address lists
514 * ensure that the vendor id is requested first when requesting info from a
515 device, so we are using the correct handler
516 * keep the 'busy state' of the command handler in CCECBusDevice
517 * poll the next device when the current is handled by libCEC.
518 * check the vendor id of a device before sending a power on command
519 * ensure that there always is at least one device type set
520 * transmit a keypress and key release as power on command when the target
521 device isn't the TV
522 * don't do a full reinit when not needed
523 * fix active source switches for the standard CEC implementation
524 * ensure that we don't send data to ourself
525 * check whether the port is open, not whether libCEC is initialised in
526 Transmit()
527 * platform: fixed return value from CCondition::Wait()
528 * platform: don't broadcast but wake one thread in
529 CProtectedSocket::MarkReady()
530 * platform: include stdint.h in windows/os-types.h instead of typedef'ing
531 ints
532 * platform: fixed tcp socket error handling and return value.
533 * platform: fixed return values of socket operations in lib/platform
099a04fb 534 * platform: added predicate in CCondition
fbaa8dd5
LOK
535 * deleted the signed driver from the tree, since that doesn't work. let the
536 installer create a new signed driver on the production build system
099a04fb
LOK
537
538 -- Pulse-Eight Packaging <packaging@pulse-eight.com> Mon, 19 Feb 2012 01:04:00 +0100
539
c75f7f45
LOK
540libcec (1.4-4) unstable; urgency=low
541
542 * changed/added:
543 * added tcp client sockets to lib/platform (WIP)
544 * clean up lib/platform
545 * added: set controlled mode on after opening a connection to the adapter
546 (for firmware v2)
547 * added an IAdapterCommunicationCallback interface an use a callback method
548 to pass newly received cec_commands to CCECProcessor
549 * added "driver only" and "driver + libcec" sections to the installer
550 * added a signed driver
551 * created a separate driver installer, which is included in the libCEC
552 installer. uninstalls the old unsigned version of libCEC and the driver
553 when it's found and installs the new one in C:\Program Files(x86)\
554 Pulse Eight\USB-CEC Adapter.
555 * don't sign development binaries with a temporary key. devs can do that
556 themselves when they want LibCecSharp in the GAC
557 * interface changes:
558 * added SetStreamPath()/cec_set_stream_path_logical()/
559 cec_set_stream_path_physical() to the interface, to send a
560 "set stream path" command over the CEC bus, used to activate another
561 source.
562 * fixed:
563 * transmit 'menu state activated' after the stream path has been set to a
564 device that is handled by libCEC. should fix remote commands not working
565 properly on Panasonic TVs and after another source has been active.
566 bugzid: 233
567 * set the ackmask to 0x0 when trying to find a free logical address
568 * keep trying to reconnect to the com port until the timeout runs out.
569 bugzid: 230
570 * wait 500 ms before trying to retransmit a command. always wait for the
571 result of a transmission in CCECCommandHandler::Transmit()
572 * receive and send full cec_commands, not CCECAdapterMessages in
573 CAdapterCommunication. extract an IAdapterCommunication interface. fixed
574 potentially missed data in CAdapterCommunication
575 * close and delete the connection when the processor thread ends. fixes
576 reconnect after standby (access denied / connection already opened)
577 * don't replace handlers when not initialised, or the primary device's
578 logical addres isn't known yet, which can lead to crashes. don't call
579 handlers directly in CCECProcessor without holding a lock on them
580 * fixed possible crash when command handler were switched while it was
581 being used
582 * keep the mutex locked when calling ReplaceHandlers() in CCECProcessor
583 * win32: also timeout when data is received in SocketRead()
584 * win32: fixed < vista runtime and compilation
585 * win32: ping the adapter and request the firmware version in
586 CUSBCECAdapterCommunication instead of CCECProcesssor. fixes failed
587 libCEC inits
588 * win32: fixed crash on exit in LibCecSharp
589
590 -- Pulse-Eight Packaging <packaging@pulse-eight.com> Mon, 6 Feb 2012 14:26:00 +0100
591
1858a00e
LOK
592libcec (1.4-3) unstable; urgency=low
593
594 * fixed:
595 * try to ping the device and grab the firmware version until the connect
596 timeout runs out. fixes failed reconnect after standby, when the adapter
597 is still being initialised
598
599 -- Pulse-Eight Packaging <packaging@pulse-eight.com> Thu, 27 Jan 2012 13:05:00 +0100
600
2819463f
LOK
601libcec (1.4-2) unstable; urgency=low
602
603 * changed/added:
604 * added a firmware flash script for linux.
605 usage: ./support/cec-flash-device.sh /path/to/firware.hex
606 * refactored threading/locking - added windows native instead of
607 pthread-win32, so we can compile native x64 too
608 * check whether the adapter responds when connecting to it and report the
1858a00e 609 firmware version of the adapter after connecting
2819463f
LOK
610 * moved create-installer.cmd to support/
611 * completely removed AM_SILENT_RULES
612 * interface changes:
613 * compile LibCecSharp against .NET framework 2.0 and sign the assembly
614 * fixed:
615 * only the key release events were sent, not keypresses, which appeared in
616 clients as laggy keypresses
617 * fixed reconnect after standby
618 * wait for active tranmission to finish when opening a connection to the
619 adapter. fixes initialisation errors
620 * set the default transmit timeout properly instead of using 0
621 * fixed possible deadlock because of a negative timeout in
622 CAdapterCommunication::WaitForTransmitSucceeded()
623 * fixed error message in cec-client (unable to open the device on port ...)
b9aae0cd 624 * exit cec-client after entering bootloader mode
2819463f
LOK
625 * MSGCODE_START_BOOTLOADER doesn't respond with MSGCODE_COMMAND_ACCEPTED
626
627 -- Pulse-Eight Packaging <packaging@pulse-eight.com> Thu, 25 Jan 2012 23:28:00 +0100
628
e6b4a29e
LOK
629libcec (1.4-1) unstable; urgency=low
630
631 * changed/added:
632 * added the vendor id for Sony
633 * always refresh the power state of a device when it hasn't been updated
634 for 30 seconds
635 * do silent builds by default
636 * interface changes:
637 * added optional callback methods to libCEC. enable them by calling
638 EnableCallbacks(ICECCallbacks *callbacks) /
639 cec_enable_callbacks(ICECCallbacks *callbacks). after this method is
640 called, the GetNext...() methods will not return any data
641 * added the same callbacks to LibCecSharp. implement CecCallbackMethods
642 and override the methods in there
643 * fixed:
644 * use the given timeout when trying to open a connection to the CEC
645 adapter
646 * resolved difference between method name in LibCECC.cpp and cecc.h.
647 credits: Doug Johnson
648 * don't transmit physical addresses while holding a lock in CCECProcessor
649 * don't hold a lock when sending an active source message.
650 * unload libCEC when the lib version is invalid
651 * "unused" warnings suppressed
652
653 -- Pulse-Eight Packaging <packaging@pulse-eight.com> Thu, 12 Jan 2012 19:06:00 +0100
654
d0d8b3c0 655libcec (1.3-3) unstable; urgency=low
f962137e
LOK
656
657 * changed/added:
658 * place in libudev include in an extern C block. fixes compilations on
659 older libudev versions (e.g. on Hardy). closes #2. credits @fbuenemann
660 * added pkg-config to the dependencies list. issue #15
661 * updated README. closes #14
662 * added a script that tests some basic functions of the CEC adapter:
663 /support/cec-test-device.sh
664 * fixed:
665 * don't make libCEC the active source when changing the physical address.
666 don't send active source messages on startup, when not the active source
667 fixes unwanted device power ups
668 * replace the command handler directly after receiving a changed vendor
669 id. change the primary type from recording device to playback device
670 for panasonic TVs
671 * don't send a deck status update when sending an active source message
672 for panasonic TVs
673 * only switch handlers once when using the generic handler
674 * don't switch handlers when not needed
675 * hold a lock in CCECProcessor::SetHDMIPort()
676 * don't send deck status updates when sending an active source message by
677 default
678
679 -- Pulse-Eight Packaging <packaging@pulse-eight.com> Thu, 3 Jan 2012 22:48:00 +0100
680
188d35cf
LOK
681libcec (1.3-2) unstable; urgency=low
682
683 * changed/added:
684 * copy libcec.dll to the XBMC installation dir when XBMC is found
685 * disable background polling. let the client request this info when needed
686 * update the power status of a device when it's set to
687 CEC_POWER_STATUS_IN_TRANSITION_STANDBY_TO_ON
688 * wait for the correct response when requesting something, not just any
689 response
690 * don't keep trying the same command/request after receiving a feature
691 abort message
692 * interface changes:
693 * change the previously unused boolean parameter in volume control methods
694 to bSendRelease, and only send a key release when it's true. default to
695 true
696 * fixed:
697 * don't send the power up/down keypress to listeners when in the initial
698 device state (powered off). fixes unexpected shutdown in XBMC when
699 connecting to the CEC adapter.
700 * send a 'menu state activated' command when starting up. bugzid: 113
701 * don't wait for a response when not needed
702 * don't hold a lock while waiting for a response. fixes failed libCEC
703 inits and slow responses
704 * don't replace a command handler when it's being used. fixes possible
705 crash on startup
706 * don't try to do anything before the processor thread has started
707 * don't transmit active source messages when the physical address is
708 still 0xFFFF
709 * don't init the default handler before the physical address is known
710
711 -- Pulse-Eight Packaging <packaging@pulse-eight.com> Thu, 29 Dec 2011 03:05:00 +0100
712
2c7c8c4b 713libcec (1.3-1) unstable; urgency=low
19330705
LOK
714
715 * changed/added:
716 * make libudev optional. if libudev is not available on linux, adapter
717 autodetection will also not be available. fixes compilation on Hardy/ATV1
718 * added a C++ CLR wrapper for libCEC, so libCEC can be used by any .NET
719 language
720 * added vendor support for LG
721 * added vendor support for Philips
722 * added vendor support for Yamaha
723 * added vendor support for Onkyo
724 * added 'scan' command to cec-client, that displays info about devices on
725 the bus. made all ToString() methods available on the interface.
726 * added '-s' or '--single-command' to cec-client. starting cec-client with
727 this parameter executes a single command in cec-client and does not power
728 on devices on startup and power them off on exit. this way, you can use
729 cec-client in a shell script. since there's some handshaking involved at
730 startup, this is not very fast. to execute a command and only display the
731 result and any error/warning, execute it with
732 RESULT=`echo command | cec-client -s -d 3` (on linux/osx, win32 batch
733 files are a bit different)
734 * added HDMI port ('-p' or '--port') and base device ('-b' or '--base') to
735 cec-client's parameters
736 * handle image view on and text view on
737 * handle routing information and report physical address opcodes
738 * handle audio status updates
739 * send ping and bootloader commands via the output queue
740 * scan the CEC bus for devices when starting libcec
741 * pass all commands that are directed at libcec to listeners
742 * interface changes:
743 * added GetActiveSource()/cec_get_active_source()
744 * added IsActiveSource()/cec_is_active_source()
745 * added GetDevicePhysicalAddress()/cec_get_device_physical_address()
746 * added GetDeviceOSDName()/cec_get_osd_name()
747 * added SendKeypress()/cec_send_keypress() and SendKeyRelease()/
748 cec_send_key_release()
749 * added VolumeUp()/cec_volume_up(), VolumeDown()/cec_volume_down(),
750 MuteAudio()/cec_mute_audio()
751 * added GetActiveDevices()/cec_get_active_devices(), IsActiveDevice()/
752 cec_is_active_device(), IsActiveDeviceType()/cec_is_active_device_type().
753 * added SetHDMIPort()/cec_set_hdmi_port(). devices are now detected on load
754 and when a device with the same physical address is detected, libcec will
755 use the selected hdmi port on that device. should fix source selection on
756 other devices, like an amplifier
757 * added a hook in libcec for physical address autodetection
758 * fixed:
759 * don't request the physical address from the tv (it's always 0x0000)
760 * set the proper ackmask before doing anything else
761 * don't unlock the transmit mutex in CCECProcessor while waiting for an
762 answer
763 * fix device polling
764 * refactor CEC read/write. keep a single lock for all writes, not one per
765 device
766 * ignore other data while waiting for a response
767 * retry failed tranmissions
768 * don't delete a message before it's been sent when starting the bootloader
769 * or when sending a ping
770 * fixed possible segfault when switching the command handler after a vendor
771 * id changed
772 * handle audio opcodes correctly
773 * inactive source should be directly addressed at the TV
774 * don't report a changed physical address when it hasn't changed
775 * routing information sets the stream path, not the physical address
776 * don't scan the whole bus in CCECProcessor::IsActiveDeviceType()
777 * don't request the vendor id from devices that are handled by libcec
778 * mark device status as present when a command was received from a device
779 * always send a power on command in CCECBusDevice::PowerOn()
780 * don't request updates statusses unless needed
781 * report physical address sends 3 parameters, not 2. check whether the
782 device type is correct
783 * devices can send vendor commands from other vendors, so don't assume the
784 device is of a certain vendor when it sends commands with a vendor id
785 * thread safety fixes. bugzid: 19
786 * clear any previous input when opening a connection to the adapter.
787 bugzid: 54
788 * use the correct source address in CSLCommandHandler::HandleVendorCommand()
789 * uncorrected CEC_OPCODE_DEVICE_VENDOR_ID. closes #5
790 * renamed enum methods. fixes potential macro collision with isset().
791 thanks davilla
792 * don't change the active device when receiving stream path changed
793 messages. fixes wrong source selection when powering after the TV.
794
795 -- Pulse-Eight Packaging <packaging@pulse-eight.com> Fri, 09 Dec 2011 12:16:00 +0100
796
94d98b71
LOK
797libcec (1.2-1) unstable; urgency=low
798
799 * bugfixes:
800 * pass the deck_control command to libcec listeners
801 * check whether the initiator is valid in CCECProcessor::ParseCommand().
802 fixes possible segfault when parsing invalid data
803
804 -- Pulse-Eight Packaging <packaging@pulse-eight.com> Sat, 12 Nov 2011 13:36:00 +0100
805
c3da3073
LOK
806libcec (1.1-3) unstable; urgency=low
807
808 * fixed return value in CCECProcessor::SetStreamPath(), which prevented
809 active source and menu state from being sent
810
811 -- Pulse-Eight Packaging <packaging@pulse-eight.com> Fri, 11 Nov 2011 23:36:00 +0100
812
f0197d4f
LOK
813libcec (1.1-2) unstable; urgency=low
814
815 * forgot to update the headers to v1.1
816
817 -- Pulse-Eight Packaging <packaging@pulse-eight.com> Fri, 11 Nov 2011 18:56:00 +0100
818
4f8dcef2
LOK
819libcec (1.1-1) unstable; urgency=low
820
821 * interface changes:
822 * added logical address autodetection and let libcec handle multiple types
823 simultaniously. for logical address autodetection, you have to use
824 CECInit()/cec_init_typed() instead of CECCreate()/cec_init()
825 * added SetActiveSource()/cec_set_active_source() to the interface.
826 deprecated SetActiveView()/cec_set_active_view()
827 * added SetMenuState()
828 * added PollDevice()/cec_poll_device()
829 * removed duplicate method SetActiveSource() / SetActiveView()
830 * added SetDeckControlMode() and SetDeckInfo()
831 * fixed:
832 * added vendor detection for panasonic and broadcast active view and set
833 menu state when a panasonic device sets the stream path. thanks for the
834 pointer cptcoconut.
835 * added vendor code for pioneer
836 * osd string is 13 chars max. don't send more
837 * send the correct cec version for each device
838 * switch to panasonic specific cec implementation if a panasonic device was
839 detected
840 * send the correct device type in TransmitPhysicalAddress()
841 * send a reply from the correct device when the stream path is requested
842 * opcode 0x80 means the stream path changed, not the physical address
843 * don't poll for a vendor ID in monitoring mode
844 * fixed parameter parsing in SetVendorId()
845 * buffer up commands that are received while waiting for an ack. only send
846 'active source' message for the actual active source
847 * win32: prepend the com port path with '\\.\', so com ports > 9 can be
848 accessed. thanks smolesen
849 * audio systems cannot be an active source, so don't transmit active
850 source message from this device
851 * only send 'active source' when powered on
852 * only set the osd name for the primary device. use default values for
853 others
854 * increase physical address with 0x100 per device
855 * win32: removed unneeded afxres.h include in the resource files, which
856 is not present when using studio express. thanks Ghuron
857 * fixed C headers
858 * mark the active source as active and other devices as inactive
859 * set the power status to 'on' when receiving CEC_USER_CONTROL_CODE_POWER
c6b7b98b 860 * transmit the menu state as (active) when the stream path is set
4f8dcef2
LOK
861 * changed:
862 * changed copyright of boblight files with permission of the original
863 author
864 * partial handling of audio related opcodes
865 * more consistent log messages
866 * set a device type and name for each CCECBusDevice
867 * keep a power and menu state per device
868 * renamed all Broadcast...() and Report...() methods to Transmit...()
869 * renamed SetOSDString() to TransmitOSDString()
870 * changed debug level of 'did not receive ack' from error to debug
871 * only set the power status to 'on' for the primary device
872 * moved method decriptions from cecc.h to cec.h
873 * only send a power on command when a device isn't on already and set
874 the power state to CEC_POWER_STATUS_IN_TRANSITION_STANDBY_TO_ON while
875 powering on
876 * handle CEC_OPCODE_STANDBY
877 * handle CEC_OPCODE_ACTIVE_SOURCE
878 * always start in standby mode and let the tv (or other device) send the
879 power on command
880 * renamed the last few enums
881 * handle deck related opcodes.
882 * added TransmitVendorId(), but only transmit the id if it's not set to 'unknown'
883
884 -- Pulse-Eight Packaging <packaging@pulse-eight.com> Fri, 11 Nov 2011 17:42:00 +0100
885
84c27c41 886libcec (1.0-1) unstable; urgency=low
5984d274
LOK
887
888 * interface changes:
889 * set lib interface version back to 1.0 and rename GetLibVersion() to
890 GetLibVersionMajor() and GetMinVersion() to GetMinLibVersion()
891 * added GetLibVersionMinor()/cec_get_lib_version_minor() and set the minor
892 version number to 1
893 * fixed:
894 * samsung's vendor specific remote keypresses don't send key releases. added
895 call to AddKey() directly after the keypress
896 * always reset the button press time in CLibCEC::AddKey()
897 * always wait for a signal in CCECProcessor::Transmit()
898 * changed:
899 * drop shared_ptr and use a normal pointer. removed boost dependency
900
901 -- Pulse-Eight Packaging <packaging@pulse-eight.com> Fri, 04 Nov 2011 00:14:00 +0100
902
b3efc8f2
LOK
903libcec (0.8-2) unstable; urgency=low
904
905 * added 'libboost-dev' to build deps
906
907 -- Pulse-Eight Packaging <packaging@pulse-eight.com> Tue, 01 Nov 2011 23:31:00 +0100
908
971d0e9e
LOK
909libcec (0.8-1) unstable; urgency=low
910
911 * interface changes:
912 * added GetDevicePowerStatus()/cec_get_device_power_status()
913 * added GetDeviceVendorId()/cec_get_device_vendor_id()
914 * added GetDeviceMenuLanguage()/cec_get_device_menu_language()
915 * added GetDeviceCecVersion()/cec_get_device_cec_version()
916 * added SwitchMonitoring()/cec_switch_monitoring() to the interface. when
b3efc8f2
LOK
917 monitoring is enabled, the device will only log the data it received,
918 but will not respond to any message
971d0e9e 919 * removed timeout parameter in Transmit() and included the ack timeout in
b3efc8f2 920 the cec_command struct
971d0e9e
LOK
921 * made the vendor id -> vendor name translation available
922 * made CEC_LOG levels powers of 2
923 * introduced CEC_LOG_TRAFFIC log level
924 * fixed:
925 * set the correct ackmask on startup
926 * wait for ack while keeping a lock
927 * wait for the processor thread to start before continueing on startup
928 * wait for messages to be transmitted before continueing in
b3efc8f2 929 CCECProcessor::Transmit()
971d0e9e
LOK
930 * only set the logical address once when it has changed
931 * correct source for broadcast messages
932 * win32: create Release type installer
933 * changed:
934 * make all reads and write in CAdapterCommunication go through buffers.
935 * poll for a vendor ID of connected devices and switch to a non-standard
b3efc8f2 936 CEC implementation if needed.
971d0e9e
LOK
937 * added vendor detection of Samsung and LG devices
938 * handle samsung remote command 'return'
939 * cec-client:
940 * added -la and --logical-address to the command line params
941 * added -d and --log-level params to cec-client
942 * added -sf and --short-log-file, which only log the actual messages, not
b3efc8f2 943 the level and timestamp
971d0e9e
LOK
944 * added -f and --log-file parameters to cec-client
945 * added option to change the log level to cec-client
946
b3efc8f2 947 -- Pulse-Eight Packaging <packaging@pulse-eight.com> Tue, 01 Nov 2011 22:58:00 +0100
971d0e9e 948
8f084f00
LOK
949libcec (0.7-1) unstable; urgency=low
950
951 * send a keypress with 0 duration when a key is pressed and with a duration
952 set when it's released
953 * added SetOSDString() to the interface (not supported by all tvs)
954 * fixed: 'routing change' is a broadcast message. log routing changes, but
955 don't send a 'set active view' message, so the active input won't be
956 changed
957 * log keypresses in the debug log
958 * added 'pa' command to cec-client, to change the physical address
959 * added SetPhysicalAddress()/cec_set_physical_address() to the interface, so
960 the HDMI port number to use can be changed
961 * fixed: put the message processing code from WaitForAck() in ParseMessage().
962 fixes missing incoming message logging of non-data messages when not
963 waiting for an ACK
964 * added 'txn' command to cec-client. same as 'tx', but doesn't wait for ACK
965 before returning
966 * fixed: set initiator and destination first in cec_command::push_back().
967 fixes 'tx' command in cec-client
968 * fixed: keep trying to connect while iTimeout isn't reached (default 10
969 seconds). fixes exit with a 'permission denied' error when the device isn't
970 ready yet. remove CEC_SETTLE_DOWN_TIME
971 * fixed: don't call SetActiveView() when reporting the power status. fixes
972 loop which causes some TVs to report failed connections
973 * fixed: eom was not being parsed when receiving MSGCODE_FRAME_DATA. fixed.
974 * fixed: add the device type as parameter when sending the physical address.
975 thanks bobo1on1
976 * fixed: typo in libcec.pc.in
977 * added optional strLib parameter to LoadLibCec(), so the location of the
978 shared library can be specified
979 * only link cec-client against ld. use AC_SEARCH_LIBS instead of AC_CHECK_LIB
980 * use int instead of bool on the public C interface and remove stdbool.h include
981 * renamed: CECExports.h => cec.h, CECExportsC.h => cecc.h, CECLoader.h =>
982 cecloader.h, CECTypes.h => cectypes.h
983 * updated debian package. split up libcec and libcec-dev
984 * fixed: changed to use dlopen instead of static linkage. shuffled headers a
985 bit. bumped interface to version 7
986 * removed 'rt' from libraries. it's not needed (anymore)
987 * fixed: reset the active view after a routing change. issue #1
988 * fixed: changed attached license to be GPLv2 instead of GPLv3 this was an
989 error as libCEC is licensed GPLv2 not GPLv3 thanks @garbear
990 * added contributors link
991
992 -- Pulse-Eight Packaging <packaging@pulse-eight.com> Fri, 14 Oct 2011 17:34:00 +0200
993
11d0a2d6
LOK
994libcec (0.6-1) unstable; urgency=low
995
996 * bumped interface version to 6
997 * fixed packet output (reporting the OSD name correctly now)
998 * refactored packet structs: split up in cec commands and adapter messages
999 * fixed i/o timings
1000 * added Darwin support (thanks Davilla!)
1001 * fixed WaitForAck()
1002 * fixed possible deadlock when starting a new thread
1003 * implemented vendor id and device class parsing. full detection will follow
1004 * added "on" and "standby" commands to the test client
1005 * retransmit packets if needed
1006 * fix GetTimeMs() on linux
1007 * added timestamp to log messages
1008
1009 -- Pulse-Eight Packaging <packaging@pulse-eight.com> Sun, 09 Oct 2011 15:15:00 +0200
1010
9519c249 1011libcec (0.5-1) unstable; urgency=low
25701fa6
LOK
1012
1013 * bumped interface version to 5
1014 * don't pass std::string and std::vector accross the interface
1015 * fixed heap corruption crashes on windows
1016 * fixed some memory leaks
1017 * reset all structs to default values before doing with them
1018
11d0a2d6 1019 -- Pulse-Eight Packaging <packaging@pulse-eight.com> Fri, 07 Oct 2011 22:00:00 +0200
25701fa6 1020
262f3b05
LOK
1021libcec (0.4-3) unstable; urgency=low
1022
1023 * fixed reconnect
1024 * fixed some threading related bugs
1025 * fixed deadlock on exit
1026 * fixed wrongly reported physical address
1027
1028 -- Pulse-Eight Packaging <packaging@pulse-eight.com> Thu, 06 Oct 2011 00:19:00 +0200
1029
4463fb80
LOK
1030libcec (0.4-2) unstable; urgency=low
1031
1032 * fixed int parameter sizes and some signed/unsigned warnings
1033 * check whether m_port isn't NULL in ReadFromDevice
1034 * stop the processor thread and delete the CSerialPort instance on exit
1035 * added mutex in CSerialPort
1036 * fix segfault on exit
1037 * renamed libPlatform -> platform.
1038 * stuck everything from libCEC in the CEC namespace to avoid namespace
1039 polution
1040
1041 -- Pulse-Eight Packaging <packaging@pulse-eight.com> Tue, 04 Oct 2011 23:45:00 +0200
1042
88c5a743
LOK
1043libcec (0.4-1) unstable; urgency=low
1044
1045 * bumped interface version to 4
1046 * timeout parameter removed from Close()/cec_close(). return type changed to
1047 void
1048 * added cec_destroy() method
1049 * removed timeout parameter from Transmit()
1050 * change the default argument of PowerOnDevices() to CECDEVICE_TV
1051 * removed PowerOffDevices(). use StandbyDevices() instead
1052 * removed obsolete methods from the interface
1053 * fixed bug: pthread_cond_wait was called without the mutex locked
1054 * fixed possible deadlock: don't send messages and wait for an ack with the
1055 mutex locked in CCECParser
1056 * created a separate reader thread and fixed the 'lock timeout' bug
1057 * testclient: use CECDEVICE_TV instead of the default argument
1058 (CECDEVICE_BROADCAST) for PowerOnDevices() and PowerOffDevices()
1059
1060 -- Pulse-Eight Packaging <packaging@pulse-eight.com> Tue, 04 Oct 2011 00:48:00 +0200
1061
a9bb5b56
LOK
1062libcec (0.3-1) unstable; urgency=low
1063
1064 * added device detection support for Windows
1065
1066 -- Pulse-Eight Packaging <packaging@pulse-eight.com> Sun, 02 Oct 2011 12:09:33 +0200
1067
c3f9951c
LOK
1068libcec (0.2-1) unstable; urgency=low
1069
1070 * added a Close() method to the interface
1071 * Added CEC command that were received by the adapter in a buffer that can be
1072 read by a client with GetNextCommand()/cec_get_next_command(). added a
1073 'help' command to the test client, that displays all available commands
1074 * Fixed setting the ackmask. deprecated SetAckMask()/cec_set_ack_mask(). use
1075 SetLogicalAddress()/cec_set_logical_address() instead. add 'la' command to
1076 the testclient to set the logical address of the cec adapter
1077 * Added optional logical and physical address parameters to
1078 LoadLibCec()/cec_init() on the interface. fixed wrongly placed namespace
1079 close tag in CECExports.h. updated interface documentation. bumped
1080 interface version to 2.
1081 * fixed hardcoded ackmask in SetAckMast(). set a shorter display name in the
1082 test client. the previous one was too long and being rejected
1083
1084 -- Pulse-Eight Packaging <packaging@pulse-eight.com> Fri, 28 Sep 2011 01:33:00 +0200
1085
abbca718
LOK
1086libcec (0.1-1) unstable; urgency=low
1087
1088 * Initial release v0.1
1089
1090 -- Pulse-Eight Packaging <packaging@pulse-eight.com> Wed, 28 Sep 2011 23:55:48 +0200