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