This blog is dedicated to share experience and plugins around Axis Camera Application Platform.  The blog nor its content is in any way sponsored or supported by Axis Communications.


  1. Great idea to make Acap’s more available. If you have emptied all ideas of things to implement 🙂 I think it would be great if the network tool IPerf could be used as an Acap. This way it would be really easy to do a bandwidth test before signing off an installation or when doing troubleshooting.


    1. The main purpose would be to test the local network, ie let Iperf run as server or deamon on the cameras and then run Iperf as client on VMS-server (or other machine) on the lan. Running a Iperf test against one camera would test the whole link betwen camera and server and if run simultaneously on several cameras a stress test on the network could be performed (can the switches handle it?).


  2. Hi,

    its so nice and kind from you, that you share your work for free here. i am using your daybreak me app with so much pleasure, and it saves a lot of time !

    one question i have, that maybe could be usefull for other users two !

    I am using the Text and Image Overlay function of the axis cameras very often. it is always a big pain to use the image overlay function when it comes to the point to make it “dynamic image overlay” because when you change the image overlay with an http request, after that was successfull the only way that this new set image appears in the active rtsp stream, is to stop and restart the rtsp stream to make the new image overlay image visible.

    my question is, … is there a way to write an acap that makes this a little bit more painless?

    Kind Regards
    Dirk Jensen


    1. I think Axis has added support for what you are requesting and it is called “Axis Dynamic Overlay”. Contact Axis partner program helpdesk for additionell information.


  3. Question: Are you available for doing any custom work? I need an ACAP App that shows me a list of IP Addresses connected to the camera (I know that’s currently available), but then let’s me disconnect any one of them (that part doesn’t exist).


  4. Hi, Iam using Axis p3225-V MKII camera , i need motion detection alarm (Example: In Room no motion for 15 Min then i need alarm from the camera)

    I installed “Aggrevent_Me_1_2_mipsisa32r2el” app in the axis camera, but can you explain how to configure…


  5. Hi, do you think it would be possible to add an audio overlay with waveform utilizing the wavesurfer.js to the video? Especially in the p7214 encoder, the f41&f44 and all the upcomming products.


  6. Finding this page has been a gift for me.

    I am taking the first steps in creating eap applications. I really haven’t even gotten to try anything yet. Well, there is not much information and I only have doubts.

    However, your page gives me reasons to be optimistic, and well, I’m sure I will ask you some questions.

    For now, I have downloaded the virtual machine from AXIS, which has the SDK installed, and everything necessary. I’ll let you know if the first program “Hello World” works. I will do it for an M1124 camera, which has the artpec-5 (I think when I generate the eap file, it will be for mipsisa32r2el.eap)

    Best regards to all

    Sergio Ruiz


  7. Hi: Since Axis is discontinuing their DNS service it would seem like a good idea to provide an ACAP solution to register the camera through third party DNS servers. I imaging this would not be that difficult to do (but then my imagination is sometimes defective!)


    1. I am not sure of your setup or use case. In general, I would not recommend exposing cameras towards Internet and never targeting a public audience directly without a dedicated server in-between, designed and maintained for Internet exposure. So, I do not see the value of DynDNS-registration service on a camera. On a local network I recommend adding your own DNS server. That provides a simple way to do IP reservations with host names. For small networks I can recommend PiHole that provide DNS, DHCP and Add-blocker. As for DynDNS service, I would get my $.99-domain at NameCheap[.]com, DuckDNS (free) or any other public DNS-service.


      1. Many of my customers use-cases are different. They have deployed cameras in far-flung locations where they can only get internet connections that don’t offer static IPs. Only my customers access the camera and, in fact, normally turn on IP filtering to make sure only they have access. But, since the IP address can change they need a Dynamic DNS service to keep track of it. Axis has deprecated their DNS service for Axis cameras and recommend customers install a PC running one of their PC based products – etc. But – all of my customers only put a camera at the remote location. Adding a PC would introduce another level of maintenance headache.
        Having a simple service on the camera that updates a DDNS service would be ideal. Some routers offer this capability (not all). They could update their router – but some ISPs can be funny about that.


        1. OK, adding IP filter does reduce the risks of probing agents searching for exploitable/unpatched services.
          Yes, using the router to update DNS is another option but, as you already mentioned, not available in all brands/models. The third option is to manually update when (if) IP changes. I have had the same external IP for at least 5 years even efter a number of router restarts.
          I know that some DynDNS services provides a HTTP/S API to update DynDNS by including a secret/key in a GET request. If the camera is not critical (uptime), you could create a timer in the camera to trigger a HTTP request e.g. once a day to the DynDNS service API.

          This blog is spare time hobby and I do not take request on ACAP development. I would assist with some pointers if you feel like developining one of your own.


  8. Fair point – as a hobby you do get to pick and choose the most interesting projects. My customers uptime is critical (they use the cameras during their news broadcasts regularly). I think it may be best to recommend a good router to take care of the problem – I just tried it on my LinkSys and it works quite well! Doing an ACAP might be something worth trying at some point – if it proves necessary I will likely go the freelancer route.


  9. I am starting to develop applications for Axis and I have a doubt. Apparently I have to be a root user to be allowed to access to the applications. I consider this inconvenient because an operator should be allowed to control an application but not the camera, and is not possible for an operator to use the application. It must be root. Do you know if there is a way to allow an operator role to run ACAP? Thanks in advance


    1. Yes, the privilige levels are less than perfect. You can configure an ACAP APIs to have different privilige levels but not sure how the HTML pages will work. On the other hand, I do not see that ACAP as applications targeting use, I see ACAP as system services. There are a few examples where an ACAP can be viewed as a user application. That may work fine for non-critical small single-camera sites. Typically when the camera ownr is the only user. In a larger system/environment having multiple users you should provide the user interface on a different sever that will use ACAP APIs. Yes, more work but better solution. One alternative is to install the Node-RED ACAP to integrates with the ACAP API but provides a user dashboard/interface. In many cases you can do all logic in Node-RED so you do not need to have an ACAP. As Node-RED use a different port (1880 instead of 80) and has different authentication than the camera you can separate them. See https://aintegration.team/node-red-acap/


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s