Here was my Thing config from OH2. The only interesting thing that I can see is that the ONVIF port was actually incorrect (80 instead of 888), yet, as I said, everything seemed to work better.
"ipcamera:foscam:11bc37bb": {
"class": "org.eclipse.smarthome.core.thing.internal.ThingImpl",
"value": {
"label": "Garage FOSCAM 9803 Camera",
"channels": [
....
],
"configuration": {
"properties": {
"mjpegOptions": "-q:v 5 -r 2 -vf scale\u003d640:-2 -update 1",
"ipAddress": "192.168.50.84",
"updateImageWhen": "0",
"onvifPort": 80,
"gifPreroll": 0,
"ffmpegLocation": "/usr/bin/ffmpeg",
"serverPort": 8062,
"ffmpegOutput": "/etc/openhab2/html/camera1/",
"ipWhitelist": "(127.0.0.1)(192.168.50.48)(192.168.50.70)",
"mp4OutOptions": "-c:v copy -c:a copy",
"pollTime": 1000,
"password": "XXXXXX",
"port": 88,
"ptzContinuous": false,
"onvifMediaProfile": 0,
"hlsOutOptions": "-strict -2 -f lavfi -i aevalsrc\u003d0 -acodec aac -vcodec copy -hls_flags delete_segments -hls_time 2 -hls_list_size 4",
"gifOutOptions": "-r 2 -filter_complex scale\u003d-2:360:flags\u003dlanczos,setpts\u003d0.5*PTS,split[o1][o2];[o1]palettegen[p];[o2]fifo[o3];[o3][p]paletteuse",
"username": "XXX"
}
},
"properties": {},
"uid": {
"segments": [
"ipcamera",
"foscam",
"11bc37bb"
]
},
"thingTypeUID": {
"segments": [
"ipcamera",
"foscam"
]
},
"location": "Garage"
}
},