[Support] spaceinvaderone - Shinobi Pro


Recommended Posts

Hi there.

 

My Shinobi log keeps filling up with this error

{"f":"trigger","id":"wUEfhAPUd6","ke":"wjDSbcgmOV","name":"ABqYf","details":{"plug":"built-in","name":"ABqYf","reason":"motion","confidence":14},"plates":[],"imgHeight":"480","imgWidth":"640","doObjectDetection":false}{"f":"trigger","id":"wUEfhAPUd6","ke":"wjDSbcgmOV","name":"ABqYf","details":{"plug":"built-in","name":"ABqYf","reason":"motion","confidence":7},"plates":[],"imgHeight":"480","imgWidth":"640","doObjectDetection":false}
SyntaxError: Unexpected token { in JSON at position 218
at JSON.parse (<anonymous>)
at Socket.<anonymous> (/opt/shinobi/libs/monitor.js:1085:39)
at emitOne (events.js:116:13)
at Socket.emit (events.js:211:7)
at addChunk (_stream_readable.js:263:12)
at readableAddChunk (_stream_readable.js:250:11)
at Socket.Readable.push (_stream_readable.js:208:10)
at Pipe.onread (net.js:601:20)
There was an error parsing a detection event

It's the motion detection event that is triggering this. I have tried to delete the motion detection region and made a new one, but with same effect. This only occurs on this one camera. I have another camera, same model, where there is no error from. I have also tried to copy settings within Shinobi, with no effect. What could cause this error?

 

When i leave my Shinobi open, my camera monitors suddenly turns black after 7 minutes, is this normal?

 

---edite---

I am not even sure that my motion detection is working. I get motion records from both cameras outside the red motion detection region. 

Edited by perhansen
Link to comment

Hi All

 

I am running into performance issues. Running an i7 with 24GB RAM, and 8 Hikvision cameras. CPU is mostly pegged at 100%

For the stream i have it set to copy, with no audio, ditto for recording.

 

I have followed SpaceInvaderOne's guide on passing through an nVidia GPU to try and leverage HW acceleration, ditto with QuickSync - still ends up with 100% usage.

 

I'm writing to an unassigned drive, as per the guide (4TB Purple)

Stream Type - Poseidon, via WebSocket

 

I have tried

Video Codec ...

Copy

H.264 NVENC

H.264 QuickSync Video

H.264 VA-API Intel Acceleration

 

I have tried these settings in 'Input' and 'Recording', but now i feel like I am going around in circles. Is there something silly i am missing?

 

Also, when i used any sort of HW acceleration setting, the Monitor windows are all black.

 

I'd like to move to Unraid an Shinobi, but not if 8 cameras are going to peg an i7 and 100% 24/7.

 

Thoughts?

 

EDIT - just set the entire thing up again on an AMD 1600AF and 16GB RAM, CPU usage isnt 100%, but its way too high to leave like this 24/7

And log for one of the cameras trying to use nVidia card - "Unknown encoder 'h264_nvenc' ", and "Unknown decoder 'h264_qsv'" for Quicksync

 

Edited by Oxxy
Added info
  • Like 1
Link to comment
16 minutes ago, Living Legend said:

Has anyone else encountered a problem (this docker or any other) where a manual stop of the docker and then restart clears out specific data within the docker?

 

I'm experiencing an issue on this docker where if I stop the docker and start it, anything that has been stashed in my "recordings" share gets wiped out.

 

My mappings are as follows:

 

/config/   ----->  mnt/user/appdata/shinobiPro
/var/lib/mysql/   ----->  mnt/user/appdata/shinobiPro/database
/opt/shinobi/libs/customAutoLoad/   ----->  mnt/user/appdata/shinobiPro/customautoload
/usr/share/zoneinfo/   ----->  /usr/share/zoneinfo/
/opt/shinobi/videos/   ----->  mnt/user/surveillance/
/unraid/   ----->  mnt/user
/dev/shm/streams/   ----->  mnt/user/surveillance/

 

 

Figured it out, that was silly.  I had the "temp streams" mapped to the same location as the permanent recordings.  I assume upon reset, the temp streams folder gets cleared which was ultimately clearing my recrodings folder.

 

Now on to figuring out how to get recording on motion working.

Link to comment

Has anyone else had trouble setting up motion?

 

I thought I had it figured out, maybe something to do with time stamps where it wasn't making proper comparisons on frames?  Was a a complete guess, but when I removed that timezone docker mapping, my watch-only monitor with trigger-record finally would trigger.

 

Then I decided to shorten the 10 minute recording to 30 seconds.  And now motion no longer triggers it.

 

I even went as drastic as I could, set a specific done by my front door, only leveraged that zone, set indifference to 1, and then wildly swung the door.  It would not trigger the event.

 

Spent too many hours on this so I'll have to shelve it for a while.  I may try to run the program natively rather than use the docker.  Per usual, I'm sure this is user error, but there's typically less potential for user error outside of the docker realm. 

 

image.thumb.png.871b63f9c71687a1f584af89df8a800c.png

 

EDIT: The attached image seems to be the culprit.  If I don't set this for 10, it won't trigger.  When I place it on 1, it doesn't trigger.  Any ideas?

Edited by Living Legend
Link to comment

Hello,

I have a docker (Shinobi) on IP 192.168.x.x and my unraid is on 10.1.x.x  The docker will start but when i open the webui it always fails page not found. This is the last line in the shinobi log: fatal: unable to access 'https://gitlab.com/Shinobi-Systems/Shinobi.git/': Could not resolve host: gitlab.com. If I put shinobi on the 10.1.x.x it works no issues. Do I need to add a route to connect the two or a route to the internet? If so where would i do this in unriad or in my firewall im running Pfsense. 

Link to comment
23 hours ago, Kodiak51103 said:

Hello,

I have a docker (Shinobi) on IP 192.168.x.x and my unraid is on 10.1.x.x  The docker will start but when i open the webui it always fails page not found. This is the last line in the shinobi log: fatal: unable to access 'https://gitlab.com/Shinobi-Systems/Shinobi.git/': Could not resolve host: gitlab.com. If I put shinobi on the 10.1.x.x it works no issues. Do I need to add a route to connect the two or a route to the internet? If so where would i do this in unriad or in my firewall im running Pfsense. 

Did you get this figured out?  I'm having the same problem.

Link to comment
On 3/7/2020 at 4:27 PM, dawhit said:

Hi Everyone, 

I keep getting a cannot resolve host error when I connect Shinobi to the vlan 50 address.

fatal: unable to access 'https://gitlab.com/Shinobi-Systems/Shinobi.git/': Could not resolve host: gitlab.com

When I connect it to the bridge or proxynet networks it is successful and works. I have built my vlan on pfsense and it is giving dhcp leases and connecting to the internet. I have deleted Shinobi and I have followed Spaceinvaderone's directions, many times over, and get the same results.  Many thanks Sir for your awesome videos!  

    Vlans is enabled in eth0 with number 50.

    Docker is configured with br0.50  and address is 192.168.50.0 with 192.168.50.1 set for the gateway

    Shinobi pro  container is configured 192.168.50.10 using port 8080 

    Ping from Unraid terminal to 50.1 successful 

    Ping form Unraid terminal to 50.10 fails

    Ping from Pfsense Lan and cctv interfaces to 50.1 successful

clearly the container is not connecting to the 50.0 network, or it is being blocked, I do not know how to proceed from here. 

Any help resolving this deserves great gratitude.  

Thank you 

Did you get this figured out?  I have the same issue.  When the docker is starting up, it can be pinged until it gets to this error.  Then the pings stop and the docker stops.

Link to comment
On 4/18/2020 at 11:27 AM, Kodiak51103 said:

Hello,

I have a docker (Shinobi) on IP 192.168.x.x and my unraid is on 10.1.x.x  The docker will start but when i open the webui it always fails page not found. This is the last line in the shinobi log: fatal: unable to access 'https://gitlab.com/Shinobi-Systems/Shinobi.git/': Could not resolve host: gitlab.com. If I put shinobi on the 10.1.x.x it works no issues. Do I need to add a route to connect the two or a route to the internet? If so where would i do this in unriad or in my firewall im running Pfsense. 

Yes you need to have a route setup on unraid, but you also need to make sure that your firewall is setup to allow that IP (192.168.x.x) to connect to the internet. Try sending a ping to 8.8.8.8 to make sure it has access to the internet. 

Link to comment
On 4/19/2020 at 12:42 PM, vicki said:

Did you get this figured out?  I have the same issue.  When the docker is starting up, it can be pinged until it gets to this error.  Then the pings stop and the docker stops.

Not yet, I have been really busy and have not had a chance. 

 

Did you get it resolved?

Link to comment
On 4/23/2020 at 8:23 PM, dawhit said:

Not yet, I have been really busy and have not had a chance. 

 

Did you get it resolved?

I was using a dedicated IP by way of "custom: br0" and had the same issue, my routing looked fine from the unRaid side.  Most other containers don't have any issues, but I have ran across a few that insist on running on bridge...  So change your network type to bridge and see if it fixes if for you...

Edit: Got it to work with custom IP by adding the "--dns 1.1.1.1" in the extra parms in the docker config...  

Edited by Code-Id10t
Alt option...
Link to comment

Posting here to hopefully save some people a headache that I chased for too long.  I was running into an issue where my two cameras would show blank black boxes for the monitors but would still somehow still record and the thumbnails on the left were correctly updating. I uninstalled and reinstalled, deleted the monitors and re-added them.  I messed with network settings for an hour trying to troubleshoot what was blocking this.  Stupidly I didn't think to try another browser or computer, because when I finally did, it was all working fine.  My entire issue.....cookies.  The problem started when I duplicated one of the monitors to change the monitor ID.  I don't know if a cookie was corrupted or what.  Attached is what I was seeing.

image.thumb.png.693b1044b05d996b98fd6b092ed6ce1d.png

Link to comment
On 5/3/2020 at 8:55 PM, pabohoney1 said:

Posting here to hopefully save some people a headache that I chased for too long.  I was running into an issue where my two cameras would show blank black boxes for the monitors but would still somehow still record and the thumbnails on the left were correctly updating. I uninstalled and reinstalled, deleted the monitors and re-added them.  I messed with network settings for an hour trying to troubleshoot what was blocking this.  Stupidly I didn't think to try another browser or computer, because when I finally did, it was all working fine.  My entire issue.....cookies.  The problem started when I duplicated one of the monitors to change the monitor ID.  I don't know if a cookie was corrupted or what.  Attached is what I was seeing.

image.thumb.png.693b1044b05d996b98fd6b092ed6ce1d.png

Thanks for that. I ended up also trying on my phone and was having the same issue so I didn't think of deleting my cookies.

 

My problem started in a similar way when I kept deleting and changing monitor settings.

Edited by cyndor1
Link to comment

Hello, This morning I have a problem for start docker.

 

log:

mysqld is alive 

Setting up MySQL database if it does not exist ... 

Create database schema if it does not exist ... 

ERROR 1060 (42S21) at line 127 in file: '/opt/shinobi/sql/framework.sql': Duplicate column name 'time' 

Create database user if it does not exist ... 

ERROR 1396 (HY000) at line 1 in file: '/opt/shinobi/sql/user.sql': Operation CREATE USER failed for 'majesticflame'@'127.0.0.1'

 

You have an idea ? I tried a restore with CA Backup / Restore Appdata that did not change anything ...

 

 

Link to comment
5 hours ago, Sosk91 said:

Hello, This morning I have a problem for start docker.

 

log:


mysqld is alive 

Setting up MySQL database if it does not exist ... 

Create database schema if it does not exist ... 

ERROR 1060 (42S21) at line 127 in file: '/opt/shinobi/sql/framework.sql': Duplicate column name 'time' 

Create database user if it does not exist ... 

ERROR 1396 (HY000) at line 1 in file: '/opt/shinobi/sql/user.sql': Operation CREATE USER failed for 'majesticflame'@'127.0.0.1'

 

You have an idea ? I tried a restore with CA Backup / Restore Appdata that did not change anything ...

 

 

This is not an error unless it's the first time you've started the container. The init script here lines 74-80 doesn't check if the database has been created, it just attempts to recreate and if it fails (which it will if it's not the first install) then it'll error. I suspect everyone sees that error on load - I do

 

The docker image spaceinvaderone has in the repo is just the UnRAID definitions for the docker image migoller/shinobidocker:latest with no modifications, it's literally just a straight pull

 

Dave

 

Link to comment
On 4/10/2020 at 6:12 PM, UnraidDuck said:

Got it installed and started. Enabled it for a few monitors, but can't see any frames around objects. Did you or anyone else get any further?

i have the same problem, i folow this tutorial https://hub.shinobi.video/articles/view/JtJiGkdbcpAig40 to install yolo,

i get the yolo connect but on the logs keep seing that       "detectObject handler not set" i dont know what this mien

Link to comment

@Ong Hui Hoong  your template seems very strange it is not the correct one for some reason. it should look like this now

 

949156705_ScreenShot2020-05-13at22_42_45.thumb.png.d26141d821689d18a0d288e0cde69a30.png

 

You will not need to change any settings for your Shinobi to continue working. These are all additional extra settings

mainly only if you want dont want to use the built in mariadb server in the container but would like to use a separate

msql outside of the container.

 

Anyway you will need to delete the template that you have. (just make a note of your video storage location path as after deleting you will need to put  that back in)

please do these steps.

 

1. Stop and delete the container.

 

2. On the docker page goto the bottom and click add container.

1646204648_ScreenShot2020-05-13at19_51_48.thumb.png.04ee419ad4ec63d48874cc7a968494f3.png

 

Then find the shinobi pro template that is stored locally on your server here.

 

762446795_ScreenShot2020-05-13at19_52_30.thumb.png.d1304941d265ed9cc403ef3876d1a148.png

 

Select it now click on the red cross to delete the template.

53508337_ScreenShot2020-05-13at19_52_57.thumb.png.04e2403983cc449d67222a1a9aa4f8f4.png

 

Now you can goto CA and search for shinobipro and redownload the container. Just put back in your video location in the template and pull down the container.

All the appdata will still be there as well as all your recorded footage.

Hope thsi helps :)

 

  • Like 1
Link to comment
On 5/3/2020 at 9:32 AM, thestraycat said:

I'm having the same issue other than i don't even get that far. Download button does nothing for me... Can you paste your config?

Same here. This is what is thrown into the log after I click the download button for exporting a time lapse section:

 

Error: write EPIPE
at WriteWrap.onWriteComplete [as oncomplete] (internal/stream_base_commons.js:87:16) {
errno: 'EPIPE',
code: 'EPIPE',
syscall: 'write'
}
Uncaught Exception occured!
Error: write EPIPE
at WriteWrap.onWriteComplete [as oncomplete] (internal/stream_base_commons.js:87:16)
Error: ENOENT: no such file or directory, stat '/opt/shinobi/fileBin/xxxxxxxxx/FrontOffice/2020-05-14T11-32-06_2020-05-14T23-07-26-30fps.mp4'
at Object.statSync (fs.js:915:3)
at ChildProcess.<anonymous> (/opt/shinobi/libs/videos.js:488:44)
at ChildProcess.emit (events.js:223:5)
at Process.ChildProcess._handle.onexit (internal/child_process.js:272:12) {
errno: -2,
syscall: 'stat',
code: 'ENOENT',
path: '/opt/shinobi/fileBin/xxxxxxx/FrontOffice/2020-05-14T11-32-06_2020-05-14T23-07-26-30fps.mp4'
}
Uncaught Exception occured!
Error: ENOENT: no such file or directory, stat '/opt/shinobi/fileBin/xxxxxxx/FrontOffice/2020-05-14T11-32-06_2020-05-14T23-07-26-30fps.mp4'
at Object.statSync (fs.js:915:3)
at ChildProcess.<anonymous> (/opt/shinobi/libs/videos.js:488:44)
at ChildProcess.emit (events.js:223:5)
at Process.ChildProcess._handle.onexit (internal/child_process.js:272:12)
Error [ERR_STREAM_DESTROYED]: Cannot call write after a stream was destroyed
at doWrite (_stream_writable.js:431:19)
at writeOrBuffer (_stream_writable.js:419:5)
at Socket.Writable.write (_stream_writable.js:309:11)
at /opt/shinobi/libs/videos.js:501:61
at FSReqCallback.readFileAfterClose [as oncomplete] (internal/fs/read_file_context.js:61:3) {
code: 'ERR_STREAM_DESTROYED'
}
Uncaught Exception occured!
Error [ERR_STREAM_DESTROYED]: Cannot call write after a stream was destroyed
at doWrite (_stream_writable.js:431:19)
at writeOrBuffer (_stream_writable.js:419:5)
at Socket.Writable.write (_stream_writable.js:309:11)
at /opt/shinobi/libs/videos.js:501:61
at FSReqCallback.readFileAfterClose [as oncomplete] (internal/fs/read_file_context.js:61:3)

 

Ommited some details with 'x' but yeh, not sure what all this means but after updating the docker it seems something has broken for exporting time lapse vids.

Link to comment
6 minutes ago, Frankiejk said:

Same here. This is what is thrown into the log after I click the download button for exporting a time lapse section:

 

Error: write EPIPE
at WriteWrap.onWriteComplete [as oncomplete] (internal/stream_base_commons.js:87:16) {
errno: 'EPIPE',
code: 'EPIPE',
syscall: 'write'
}
Uncaught Exception occured!
Error: write EPIPE
at WriteWrap.onWriteComplete [as oncomplete] (internal/stream_base_commons.js:87:16)
Error: ENOENT: no such file or directory, stat '/opt/shinobi/fileBin/xxxxxxxxx/FrontOffice/2020-05-14T11-32-06_2020-05-14T23-07-26-30fps.mp4'
at Object.statSync (fs.js:915:3)
at ChildProcess.<anonymous> (/opt/shinobi/libs/videos.js:488:44)
at ChildProcess.emit (events.js:223:5)
at Process.ChildProcess._handle.onexit (internal/child_process.js:272:12) {
errno: -2,
syscall: 'stat',
code: 'ENOENT',
path: '/opt/shinobi/fileBin/xxxxxxx/FrontOffice/2020-05-14T11-32-06_2020-05-14T23-07-26-30fps.mp4'
}
Uncaught Exception occured!
Error: ENOENT: no such file or directory, stat '/opt/shinobi/fileBin/xxxxxxx/FrontOffice/2020-05-14T11-32-06_2020-05-14T23-07-26-30fps.mp4'
at Object.statSync (fs.js:915:3)
at ChildProcess.<anonymous> (/opt/shinobi/libs/videos.js:488:44)
at ChildProcess.emit (events.js:223:5)
at Process.ChildProcess._handle.onexit (internal/child_process.js:272:12)
Error [ERR_STREAM_DESTROYED]: Cannot call write after a stream was destroyed
at doWrite (_stream_writable.js:431:19)
at writeOrBuffer (_stream_writable.js:419:5)
at Socket.Writable.write (_stream_writable.js:309:11)
at /opt/shinobi/libs/videos.js:501:61
at FSReqCallback.readFileAfterClose [as oncomplete] (internal/fs/read_file_context.js:61:3) {
code: 'ERR_STREAM_DESTROYED'
}
Uncaught Exception occured!
Error [ERR_STREAM_DESTROYED]: Cannot call write after a stream was destroyed
at doWrite (_stream_writable.js:431:19)
at writeOrBuffer (_stream_writable.js:419:5)
at Socket.Writable.write (_stream_writable.js:309:11)
at /opt/shinobi/libs/videos.js:501:61
at FSReqCallback.readFileAfterClose [as oncomplete] (internal/fs/read_file_context.js:61:3)

 

Ommited some details with 'x' but yeh, not sure what all this means but after updating the docker it seems something has broken for exporting time lapse vids.

 

Yup - Same here. Wondering if the timelapse folder needs to be set up as a variable in the docker or template or whether shinobi needs the timelapse destination referenced somewhere in the application. My install dosn't even really attempt to export it, high CPU load, then just gives up after about 5 seconds.

Link to comment

Since the update last night I am getting an error, I tried what @SpaceInvaderOne suggested for another problem a couple of replies before, but it didn't work. I removed the template and reinstalled, same error.

 

2020-05-14 17:06:31 11 [ERROR] mysqld: Incorrect information in file: './ccio/Presets.frm'

Error: ER_NOT_FORM_FILE: Incorrect information in file: './ccio/Presets.frm'

at Query.Sequence._packetToError (/opt/shinobi/node_modules/mysql/lib/protocol/sequences/Sequence.js:47:14)
at Query.ErrorPacket (/opt/shinobi/node_modules/mysql/lib/protocol/sequences/Query.js:79:18)
at Protocol._parsePacket (/opt/shinobi/node_modules/mysql/lib/protocol/Protocol.js:291:23)
at Parser._parsePacket (/opt/shinobi/node_modules/mysql/lib/protocol/Parser.js:433:10)
at Parser.write (/opt/shinobi/node_modules/mysql/lib/protocol/Parser.js:43:10)
at Protocol.write (/opt/shinobi/node_modules/mysql/lib/protocol/Protocol.js:38:16)
at Socket.<anonymous> (/opt/shinobi/node_modules/mysql/lib/Connection.js:88:28)
at Socket.<anonymous> (/opt/shinobi/node_modules/mysql/lib/Connection.js:526:10)
at Socket.emit (events.js:223:5)
at addChunk (_stream_readable.js:309:12)
at readableAddChunk (_stream_readable.js:290:11)
at Socket.Readable.push (_stream_readable.js:224:10)
at TCP.onStreamRead (internal/stream_base_commons.js:181:23)
--------------------
at Protocol._enqueue (/opt/shinobi/node_modules/mysql/lib/protocol/Protocol.js:144:48)
at Connection.query (/opt/shinobi/node_modules/mysql/lib/Connection.js:198:25)
at /opt/shinobi/node_modules/knex/lib/dialects/mysql/index.js:130:18
at Promise._execute (/opt/shinobi/node_modules/bluebird/js/release/debuggability.js:384:9)
at Promise._resolveFromExecutor (/opt/shinobi/node_modules/bluebird/js/release/promise.js:518:18)
at new Promise (/opt/shinobi/node_modules/bluebird/js/release/promise.js:103:10)
at Client_MySQL._query (/opt/shinobi/node_modules/knex/lib/dialects/mysql/index.js:124:12)
at Client_MySQL.query (/opt/shinobi/node_modules/knex/lib/client.js:158:17)
at Runner.query (/opt/shinobi/node_modules/knex/lib/runner.js:135:36)
at /opt/shinobi/node_modules/knex/lib/runner.js:39:23
at tryCatcher (/opt/shinobi/node_modules/bluebird/js/release/util.js:16:23)
at /opt/shinobi/node_modules/bluebird/js/release/using.js:185:26
at tryCatcher (/opt/shinobi/node_modules/bluebird/js/release/util.js:16:23)
at Promise._settlePromiseFromHandler (/opt/shinobi/node_modules/bluebird/js/release/promise.js:547:31)
at Promise._settlePromise (/opt/shinobi/node_modules/bluebird/js/release/promise.js:604:18)
at Promise._settlePromise0 (/opt/shinobi/node_modules/bluebird/js/release/promise.js:649:10) {
code: 'ER_NOT_FORM_FILE',
errno: 1033,
sqlMessage: "Incorrect information in file: './ccio/Presets.frm'",
sqlState: 'HY000',
index: 0,
sql: 'ALTER TABLE `Presets` CHANGE COLUMN `type` `type` VARCHAR(50) NULL DEFAULT NULL AFTER `details`;'
}
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
This Install of Shinobi is NOT Activated
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
2020-05-14T17:06:33-05:00 This Install of Shinobi is NOT Activated

 

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.