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