User Tools

Site Tools


current

This is an old revision of the document!


XTension Version 9.4.48

Released 11/5/2022

Download for all Supported OS versions; XTension. v 9.4.48 (build 1055)

Minimum System Version for this release is OSX 10.10 but not all plugins may function properly prior to 10.13. Please start the necessary work to upgrade to at least 10.13 for future builds will no longer be able to support 10.10.

Apart from a few older plugins the entirety of the application and it’s plugins now run natively on both Intel and M1 macs.

NOTE that no database changes are made while updating to this version so if you do have issues with the new plugins you can return to the previous version by just replacing the previous executable. It should not be necessary to replace the Database with the backup version that will be made when running this version for the first time.

9.4.48 Change Log:

  • NEW: An entirely new video subsystem is now in alpha testing. It is not feature complete or caught up with the now ancient Video Pitcher but it will be eventually. There are now 4 plugins (and there will be more before it’s complete) to do with video processing in the new manner.
    • Video Encoder Service in order to keep each video stream from starting up it’s own encoding service and bringing your CPU to it’s knees you need a single instance of the Video Encoder Service plugin running. This receives encoding jobs from any and all of the other video plugins and will convert any recorded videos to h264 video one at a time. If you record a huge amount of video or have a slow machine and lots of cameras just recording all the time it is possible that this will get behind and the recordings will build up. Other modes of recording live are coming but not yet available. I originally built this using ffmpeg to encode the video but it made no use of the GPU on MacOS so I wrote another app that did and it is now launched and run by this server to encode the temporarily saved video data. In my testing it was at least 3x faster than ffmpeg when using the GPU and did not cause the entire machine to hang up if more than one thing was happening at a time. You only need to create a single instance of this plugin and it will handle all the encoding for the moment. Creating more than one only wastes memory as only one can be active at a time. The archives for individual video sources recordings are available to the web remote controls for remote viewing. This entire new video processing system has been a huge amount of effort. I think you’ll find that your framerates as displayed in the program and in the web remotes as well as what gets recorded are significantly better than what they were with the old video pitcher program. As of this moment there is no direct control of manipulating the images or sending commands directly to the cameras but this is coming.
    • RTSP Video connects to an rtsp stream and makes it’s stream available to XTension for display in any of the web remotes or recording via the Video Encoder Service.
    • MJPEG Video This plugin can connect to any of the older devices that still use an mjpeg stream to send video. Otherwise all the same as the RTSP video setup.
    • JPEG Refresh Video There still remain many older cameras that do not support anything that is currently avauilable or some that perhaps you only want a low refresh rate of still images and for those the JPEG refresh plugin is the answer. The framerate of these will be much less than any of the others but will work with anything that has a “show me a snapshot” type link anywhere in their interface.
    • Both web remote plugins have been updated to be able to view video from both the old and the new system at the same time. It is not necessary to completely switch from one to the other. You can move only a single stream to the new system for testing and keep Video Pitcher running normally until we’re sure it’s working properly.
  • NEW: SMTP Passthrough Plugin. This is part of the new video support and is in a very alpha state as well. It is not feature complete indeed it cannot even do as it’s name suggests and pass the connection through to another server. If you have a camera that is old enough to not have any other way to get motion or other alerts from it but via email you can setup this server and point the camera to this. An ON event will be generated in XTension every time the device tries to send an email. This will work with any device that tries to send an email that you simply want an ON event in XTension for not just cameras.
  • FIX: Lots of fixes to the Hue plugin. There remained many issues related to the python version change as well as some related to how they represented sensors. All of the remaining issues have been fixed and the plugin should run more normally now without receiving updates constantly for the various sensor types once their battery level has changed as they did in the past. I am about to start reviewing the 2.0 version of the their API to see if that more easily gets us the data than the original API. If this is something you want to use or if you use one of these hubs at all please let me know so I can prioritize it.
  • FIX: A problem with the Hubitat plugin that would cause it to log errors when receiving door lock pin code updates.
  • FIX: You can now delete items from the web remote interfaces. It was due to a sea change in how the data structures were handled under the hood but I think it’s coming together now.
  • FIX: Several typos and other should have been obvious but weren’t errors in the TCPLink/Kasa plugin are fixed. Thanks to all of you that not only reported the issues but actually fixed them and posted the details!
  • NEW: Debug mode for new style plugins (not any of the legacy plugins) is now preserved across restarts, so if there is a problem during the initial loading it’s a lot easier to get that output without having to run special versions.

Honestly I cannot overstate how much work the new video subsystem was to get working properly. There will definitely be major changes to the interfaces and everything else but it actually works now for recording and to the web remotes. Please give that a try even though there is not yet any more documentation than this document.

  • All plugins that previously used the system install of Python2 have been upgraded to run with the embedded python3 version. This makes the app more easily compatible with the latest MacOS versions that no longer include the older python version by default. This did necessitate many changes to the plugins themselves and while they have been running just fine here and for the beta testers there may still be some gotchas in there. If you experience any issues as your plugins are starting up please copy and paste the log entries of any errors and email them to me.
    • Specific list of plugins that were converted:
      • W8002 (the new API W800 plugin, the original W800 plugin is still included and was not affected.)
      • Arduino
      • Barix
      • APC Status
      • DIY
      • Haiku Fans
      • iTach
      • Max Sonar
      • RadioRA2
      • RFX and RFX New plugins (again not affecting the legacy versions of these which are still included and are unchanged)
      • pigpio
  • FIX: Unrelated to the Python3 conversion several places in the Hue Hub plugin that were throwing errors under some conditions were also fixed.
  • The Alexa Sudo plugin now uses a shared connection to the UPNP port so that it can play nice with other plugins that need this connectivity as well.
  • FIX: the tpLink/Kasa plugin had some code typos in rarely used error handling that could throw additional errors and fail to output anything useful to debug the error. This is now fixed. Additionally a problem was fixed where if Units existed in XTension for devices that were not initially found on the network they would throw errors during regular polling, this is also fixed.
  • NEW: Scheduled Events are now searched from the search window. If you search for a Unit or Script that is referenced in a scheduled event it will show up in the results list now.
  • Changes: Several updates were made to the plugin includes to add some extra error debugging and other convenience functions. This should not affect any of the existing plugins but will help to ease some better error handling in the future.

NOTE: This disk image no longer includes the older legacy plugins that will not be updated for newer OS versions. If you still need to run the CM19, CM15, ZTroller or the various Smarthome X10 interfaces please download the legacy plugins package from here and install the ones you need via the “Install Plugin” menu item of the “Database” menu.

Previous Releases

current.1667671984.txt.gz · Last modified: 2023/02/13 14:51 (external edit)