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