cec: fixed - set power state to powered off when a device handled by libcec is made...
[deb_libcec.git] / debian / changelog
index dcf8ddf10c4c88b48089af1a6c9bc41d4ca01761..ff89b35eba769757ac747e36c87bdcaf40728251 100644 (file)
@@ -1,4 +1,177 @@
-libcec (1.0-2) unstable; urgency=low
+libcec (1.4-1) unstable; urgency=low
+
+  * changed/added:
+    * make libudev optional. if libudev is not available on linux, adapter
+      autodetection will also not be available. fixes compilation on Hardy/ATV1
+    * added a C++ CLR wrapper for libCEC, so libCEC can be used by any .NET
+      language
+    * added vendor support for LG
+    * added vendor support for Philips
+    * added vendor support for Yamaha
+    * added vendor support for Onkyo
+    * added 'scan' command to cec-client, that displays info about devices on
+      the bus. made all ToString() methods available on the interface.
+    * added '-s' or '--single-command' to cec-client. starting cec-client with
+      this parameter executes a single command in cec-client and does not power
+      on devices on startup and power them off on exit. this way, you can use
+      cec-client in a shell script. since there's some handshaking involved at
+      startup, this is not very fast. to execute a command and only display the
+      result and any error/warning, execute it with
+      RESULT=`echo command | cec-client -s -d 3` (on linux/osx, win32 batch
+      files are a bit different)
+    * added HDMI port ('-p' or '--port') and base device ('-b' or '--base') to
+      cec-client's parameters
+    * handle image view on and text view on
+    * handle routing information and report physical address opcodes
+    * handle audio status updates
+    * send ping and bootloader commands via the output queue
+    * scan the CEC bus for devices when starting libcec
+    * pass all commands that are directed at libcec to listeners
+  * interface changes:
+    * added GetActiveSource()/cec_get_active_source()
+    * added IsActiveSource()/cec_is_active_source()
+    * added GetDevicePhysicalAddress()/cec_get_device_physical_address()
+    * added GetDeviceOSDName()/cec_get_osd_name()
+    * added SendKeypress()/cec_send_keypress() and SendKeyRelease()/
+      cec_send_key_release()
+    * added VolumeUp()/cec_volume_up(), VolumeDown()/cec_volume_down(),
+      MuteAudio()/cec_mute_audio()
+    * added GetActiveDevices()/cec_get_active_devices(), IsActiveDevice()/
+      cec_is_active_device(), IsActiveDeviceType()/cec_is_active_device_type().
+    * added SetHDMIPort()/cec_set_hdmi_port(). devices are now detected on load
+      and when a device with the same physical address is detected, libcec will
+      use the selected hdmi port on that device. should fix source selection on
+      other devices, like an amplifier
+    * added a hook in libcec for physical address autodetection
+  * fixed:
+    * don't request the physical address from the tv (it's always 0x0000)
+    * set the proper ackmask before doing anything else
+    * don't unlock the transmit mutex in CCECProcessor while waiting for an
+      answer
+    * fix device polling
+    * refactor CEC read/write. keep a single lock for all writes, not one per
+      device
+    * ignore other data while waiting for a response
+    * retry failed tranmissions
+    * don't delete a message before it's been sent when starting the bootloader
+    * or when sending a ping
+    * fixed possible segfault when switching the command handler after a vendor
+    * id changed
+    * handle audio opcodes correctly
+    * inactive source should be directly addressed at the TV
+    * don't report a changed physical address when it hasn't changed
+    * routing information sets the stream path, not the physical address
+    * don't scan the whole bus in CCECProcessor::IsActiveDeviceType()
+    * don't request the vendor id from devices that are handled by libcec
+    * mark device status as present when a command was received from a device
+    * always send a power on command in CCECBusDevice::PowerOn()
+    * don't request updates statusses unless needed
+    * report physical address sends 3 parameters, not 2. check whether the
+      device type is correct
+    * devices can send vendor commands from other vendors, so don't assume the
+      device is of a certain vendor when it sends commands with a vendor id
+    * thread safety fixes. bugzid: 19
+    * clear any previous input when opening a connection to the adapter.
+      bugzid: 54
+    * use the correct source address in CSLCommandHandler::HandleVendorCommand()
+    * uncorrected CEC_OPCODE_DEVICE_VENDOR_ID. closes #5
+    * renamed enum methods. fixes potential macro collision with isset().
+      thanks davilla
+    * don't change the active device when receiving stream path changed
+      messages. fixes wrong source selection when powering after the TV.
+
+ -- Pulse-Eight Packaging <packaging@pulse-eight.com>  Fri, 09 Dec 2011 12:16:00 +0100
+
+libcec (1.2-1) unstable; urgency=low
+
+  * bugfixes:
+    * pass the deck_control command to libcec listeners
+    * check whether the initiator is valid in CCECProcessor::ParseCommand().
+      fixes possible segfault when parsing invalid data
+
+ -- Pulse-Eight Packaging <packaging@pulse-eight.com>  Sat, 12 Nov 2011 13:36:00 +0100
+
+libcec (1.1-3) unstable; urgency=low
+
+  * fixed return value in CCECProcessor::SetStreamPath(), which prevented
+    active source and menu state from being sent
+
+ -- Pulse-Eight Packaging <packaging@pulse-eight.com>  Fri, 11 Nov 2011 23:36:00 +0100
+
+libcec (1.1-2) unstable; urgency=low
+
+  * forgot to update the headers to v1.1
+
+ -- Pulse-Eight Packaging <packaging@pulse-eight.com>  Fri, 11 Nov 2011 18:56:00 +0100
+
+libcec (1.1-1) unstable; urgency=low
+
+  * interface changes:
+    * added logical address autodetection and let libcec handle multiple types
+      simultaniously. for logical address autodetection, you have to use
+      CECInit()/cec_init_typed() instead of CECCreate()/cec_init()
+    * added SetActiveSource()/cec_set_active_source() to the interface.
+      deprecated SetActiveView()/cec_set_active_view()
+    * added SetMenuState()
+    * added PollDevice()/cec_poll_device()
+    * removed duplicate method SetActiveSource() / SetActiveView()
+    * added SetDeckControlMode() and SetDeckInfo()
+  * fixed:
+    * added vendor detection for panasonic and broadcast active view and set
+      menu state when a panasonic device sets the stream path. thanks for the
+      pointer cptcoconut.
+    * added vendor code for pioneer
+    * osd string is 13 chars max. don't send more
+    * send the correct cec version for each device
+    * switch to panasonic specific cec implementation if a panasonic device was
+      detected
+    * send the correct device type in TransmitPhysicalAddress()
+    * send a reply from the correct device when the stream path is requested
+    * opcode 0x80 means the stream path changed, not the physical address
+    * don't poll for a vendor ID in monitoring mode
+    * fixed parameter parsing in SetVendorId()
+    * buffer up commands that are received while waiting for an ack. only send
+      'active source' message for the actual active source
+    * win32: prepend the com port path with '\\.\', so com ports > 9 can be
+      accessed. thanks smolesen
+    * audio systems cannot be an active source, so don't transmit active
+      source message from this device
+    * only send 'active source' when powered on
+    * only set the osd name for the primary device. use default values for
+      others
+    * increase physical address with 0x100 per device
+    * win32: removed unneeded afxres.h include in the resource files, which
+      is not present when using studio express. thanks Ghuron
+    * fixed C headers
+    * mark the active source as active and other devices as inactive
+    * set the power status to 'on' when receiving CEC_USER_CONTROL_CODE_POWER
+    * transmit the menu state as (active) when the stream path is set
+  * changed:
+    * changed copyright of boblight files with permission of the original
+      author
+    * partial handling of audio related opcodes
+    * more consistent log messages
+    * set a device type and name for each CCECBusDevice
+    * keep a power and menu state per device
+    * renamed all Broadcast...() and Report...() methods to Transmit...()
+    * renamed SetOSDString() to TransmitOSDString()
+    * changed debug level of 'did not receive ack' from error to debug
+    * only set the power status to 'on' for the primary device
+    * moved method decriptions from cecc.h to cec.h
+    * only send a power on command when a device isn't on already and set
+      the power state to CEC_POWER_STATUS_IN_TRANSITION_STANDBY_TO_ON while
+      powering on
+    * handle CEC_OPCODE_STANDBY
+    * handle CEC_OPCODE_ACTIVE_SOURCE
+    * always start in standby mode and let the tv (or other device) send the
+      power on command
+    * renamed the last few enums
+    * handle deck related opcodes.
+    * added TransmitVendorId(), but only transmit the id if it's not set to 'unknown'
+
+ -- Pulse-Eight Packaging <packaging@pulse-eight.com>  Fri, 11 Nov 2011 17:42:00 +0100
+
+libcec (1.0-1) unstable; urgency=low
 
   * interface changes:
     * set lib interface version back to 1.0 and rename GetLibVersion() to