Is it possible to disable evo-mp4writer? When recording a large number of cameras with chunked option enabled evo-mp4writer can be pretty taxing to the storage system when the time period expires. Running evo-mp4writer on demand only when a request to play video has been received would work much better under certain circumstances.
Recording starts when the stream that is passed to the record API call becomes available. Changing to a larger chunk size can help reduce storage activity.
Yes…the normal behavior of EMS record API is understood. What I was asking is there a way to disable EMS from calling evo-mp4writer at the end of the chunk time and just leave the *.mdat, *.track1 and *.info files as is without rolling them up into a mp4? In config.lua there is an option mp4BinPath=”/usr/bin/evo-mp4writer”. Can this be set in a way to prevent EMS from running this? I have experimented with changing the path to a script that simply reads the argument being passed…ie “-path=/path/to/mp4” and just exit without doing anything and this seems to work, however if evo-mp4writer could simply not be called that would be a better solution. Bob
Hello, The way which we can think of so far is the same way as yours, which is to just change the location of the mp4binpath in the config.lua.. or close EMS “improperly”, the mp4 files will not roll up into .mp4, and will start another recording.
The evo-mp4writer is an independent process and so does not have any direct impact on the RTMP stack. Having said that, if you are actively recording, and you have many evo-mp4writer processes running in parallel, causing your disk IO to become saturated, then the RTMP stacks will effectively get blocked as the recording write to disk IS synchronous with the streaming stack. There really is no magic to running the evo-mp4writer, and so if you want to run that as a cron job to spread that out, it should work just fine. There is no config to tell the EMS not to run the evo-mp4writer process, but if you rename the binary, then it wont be successful in doing so. You’ll get an extra log item, but it shouldn’t effect runtime behavior. The syntax for the tool is just: