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