I would like to overlay some information from HomeSeer, specifically device values plus text.
Here is the output from HomeSeer:
Here is the output from HomeSeer:
If I understand the question correctly, my solution would be to add a ‘Write to a file’ action to the ‘On alert’ Action set like the screenshot below.Hi @JNDATHP , I am trying to find an example of &MEMO macro. My use case is that I want to add text to the alert image title when triggered. Exactly what Codeproject ALPR does when detects the plate. I looked everywhere and could not find a functional solution. I did look through BI manual and it lists '&MEMO' macro, but I am not sure how to apply it in my case. I think it may work. Can you help with this? Thanks.
Thank you @jaydeel . I will try this tonight and update the thread. The end game plan is to have custom label attached to the alert image in the list so later I can use search box to look for it. I tried using exiftool for which I can create a script to run on trigger and rename the saved alert JPG image title. It does it ,but does not reflect it in the database hence I am investigating &MEMO. I attached the example of what I am looking for to happen upon trigger.If I understand the question correctly, my solution would be to add a ‘Write to a file’ action to the ‘On alert’ Action set like the screenshot below.
View attachment 202854
Then I’d assign that file to a Blue Iris macro, like %301, and add that macro as an overlay.
To create the macros (you’ll need one for each camera to be labeled)
1. Edit the registry directly -- or perhaps safer, use your browser and the URLs below -- to create numbered macros higher than %10.
Replace my webserver address with yours.
http://192.168.1.3:8600/admin?macro=301&text=
http://192.168.1.3:8600/admin?macro=302&text=
http://192.168.1.3:8600/admin?macro=303&text=
etc.
2. Open 'regedit.exe'.
3. Navigate to registry key Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Perspective Software\Blue Iris\Macros.
4. Double-click reg key %301 and type file:/c:\path\memo_cam1.txt (no quotes)
5. Double-click reg key %302 and type “file:/c:\path\memo_cam2.txt”
6. Double-click reg key %303 and type “file:/c:\path\memo_cam3.txt”
7. etc.
Learn more here
Is there a way to create dynamic overlay text based on a text file or similar?
I'm a dev and I wanted to output text on the overlay display of the camera... to simplify as an example, i want the overlay text to show "FRONT DOOR SECURED" when it is locked, and FRONT DOOR UNSECURED when not. I have the smart door lock and awareness all figured out, I just need a way to tell...ipcamtalk.com
I suspect you might run into a race condition where the alert image is captured before the overlay is updated. Good luck.Thank you @jaydeel . I will try this tonight and update the thread. The end game plan is to have custom label attached to the alert image in the list so later I can use search box to look for it. I tried using exiftool for which I can create a script to run on trigger and rename the saved alert JPG image title. It does it ,but does not reflect it in the database hence I am investigating &MEMO. I attached the example of what I am looking for to happen upon trigger.
update
command. It's a bit fussy to use. For example the alert's flags will be reset if the JSON command does not include the flags
parameter with the current value.&MEMO
macro) is stored in the Exif 'Title' and 'Subject' tags.@jaydeel , I wish I was a coderIt just dawned on me that you might not be aware that Blue Iris automatically stores the AI memo and license tag info in the Alert JPG's Exif metadata.
Reminder: to create Alert JPGs, you must configure the camera to save Hi-Res JPGs, or enable AI image markups.
To easily inspect the Exif data In Windows File Explorer, right-click the JPG file, then click Properties > Details tab
View attachment 202877
The AI memo string (=&MEMO
macro) is stored in the Exif 'Title' and 'Subject' tags.
Ken replied with the following when I asked for an explanation of what is in the 'Comments' tag...
(Caveat: this was October 2023... it's always possible that he has changed something since then)
PropertyTagExifUserCommente.g., 1.1366323.6149-65.(plate.)23195.28236.jpg1 ... the version of this code ... should be 11366323 ... the time offset into the clip6149 .. the "high order" of flags (bits 16-31 shifted left 16)65 ... the zonesplate ... (LPR plate would go here optionally)23195 ... the trigger duration (msec)28236 ... this time includes the pre-trigger time for playbackBTW, I don't use LPR, so I cannot confirm that the license plate info is actually included in the 'Comments' tag.
[EDIT} Blue Iris uses this Exif metadata in Alert folder JPG files to recover alert database entries during database rebuilds. I use this feature as the basis for my bi_alert_protect.ps1 utility.
&MEMO
macro) is stored in the Exif 'Title' and 'Subject' tags.' ? It seems like I have to come up with the action that will add the dynamic text to the alert image before saving it to the specified folder. Thnaks for your help with this.Just so I understand...@jaydeel , I wish I was a coder. I am not a coder ,but know a couple of tricks when it comes to scripting/python/ps. I did try the first option you provided (thank you for the detailed writeup!)and ended up simply re-writing the txt file the trigger alert was creating. Most likely I am doing something wrong
. the 2nd solution you mentioned I am not entirely comprehending. I used exiftool to add 'title/label' to the saved JPG alert , but it is not reflected in the list and doing regular rebuild is not an option for me. So, where should I add this string 'The AI memo string (=
&MEMO
macro) is stored in the Exif 'Title' and 'Subject' tags.' ? It seems like I have to come up with the action that will add the dynamic text to the alert image before saving it to the specified folder. Thnaks for your help with this.
I tried the use of /admin?camera command, but again fruitlessly. I am thinking of a different approach. The best would be to use code project AI OCR module, but I don't think BI has this capability or will integrate. What I am looking for at the end is to be able to dynamically assign labels to jpgs. This is needed for my specific use case where I can later use the 'search box' in BI interface to look for the text in the memo which will get me straight to the event. Say on trigger camera records part number 'A-1234' and adds it as a label(memo) to the alert jpg image. The function of BI that does it flawlessly is the ALPR, but it won't read regular text. I have displays at the facility displaying the part number codes. I integrated the scanner to send API to the camera with the scanned part code and now need to make this same code added to the jpg trigger image. The other option as i mentioned above is to have camera read the code off of the display and add it after OCR processing to saved JPG.Just so I understand...
1. The 'Write to a file' action is working, saving the alert's memo in the text file?
2. And you are subsequently rewriting the memo text to the action's output file?
If so, may I ask why are you doing #2?
Are you also saying the Blue Iris is not automatically adding the Exif metadata tags to the Alert JPG?
BTW, here's a method for creating a JPG with the memo overlay...
1. Add a new 'Do command' action to the 'On alert' action set to take a snapshot (see screenshot). KEY POINT: it must follow the 'Write to a file' action.
2. Maybe precede it with a 'Wait' action if necessary. EDIT: I just tested this and it worked without a 'Wait' action
View attachment 202929
If you do this, you will definitely need to programmatically add the Exif 'Title' and 'Subject' tags.
Also, keep in mind that Blue Iris creates snapshots in the 'New' folder, not the 'Alerts' folder.
@Tony, I did. No change. Also, did try with 'pre-alert trigger' and 'on alert'. Also tried /admin?trigger=Cam1&memo=text still not working. I need to see a working example of the use of /admin?xxxx. Thanks.In the box for "/admin? args" have you tried NOT leading with "/admin?" but omit it and lead instead with "camera=" plus the rest ?
attached is snapshot of the correct output to look for if the command went in successfully and during the test.Good afternoon All,
I am happy to report that after testing a few approaches I finally got it to do what I want! @jaydeel , big thanks for pointing me in the right direction with your 'snapshot' option. I did not use it, but it opened up another path for me. So I read the manual and found '/admin?trigger' option which I experimented with and got it to work. Below is the string yo need to use in order to 'bake' a memo to an alert image which can be searched later if typed into the search box. I experimented with the web browser window, but the options are limitless it is now can be made into a script, etc.
http://<server's IP>:<port>/admin?trigger&camera=<CAMERA SHORT NAME>&memo=<TEXT>&user=<USER>&pw=<PASSWORD>
Hope this helps others who are looking to inject a memo text to an alert image. And thanks for everyone's help with htis.
well aware of that. Thank you.Just FYI...
If the string used in&memo=<TEXT>
ever contains space characters, you'll need to replace them with%20
.
Ditto for other special characters that cannot used in URIs