ZMninja - Video is not playable on Events

Discussion topics related to mobile applications for ZoneMinder
User avatar
asker
Posts: 972
Joined: Sun Mar 01, 2015 12:12 pm

Re: ZMninja - Video is not playable on Events

Post by asker » Sun Dec 30, 2018 1:43 pm

If your phone Chrome browser cannot play the video, zmNinja will not be able to either. It is important to check on the phone Chrome browser (not desktop).
--
My collection of ZoneMinder learnings:
https://wiki.zoneminder.com/Various_ZM_thoughts

SkippyDo
Posts: 70
Joined: Mon Nov 20, 2017 6:49 pm

Re: ZMninja - Video is not playable on Events

Post by SkippyDo » Mon Dec 31, 2018 10:39 am

Yes, as noted I tested via Chrome on my phone.

Nothing has been changed on my phone between running ZM 1.30 and 1.32. The video call that ZMninja relies on is broken under ZM 1.32, but apparently only for some Android phones (version supported by ZMninja).

Kind of dropping in a support hole/gap with this one.

I'd be happy to help diagnose if requested to do so (though for only this next week, after which I won't have any time for a while [physically won't be able to, sigh, not that I won't have time]). My phone is rooted, so perhaps a bit more ability to dig into this: I'm a complete novice with Android (and smart phones in general), in which case one has to speak really slowly to me about such things :wink:

User avatar
asker
Posts: 972
Joined: Sun Mar 01, 2015 12:12 pm

Re: ZMninja - Video is not playable on Events

Post by asker » Mon Dec 31, 2018 1:46 pm

I am unfortunately on travel till Jan 2 and then out on travel pretty much all of Jan, starting Jan 6. That being said, I will be able to look at my computer only after Jan 2.

So here are some thoughts:

1. Frankly, if Chrome doesn't support playback for a phone, zmNinja will not, as an overarching statement.
2. It might be useful to see if it really is a logs problem, or something else (for example, is it an SSL certificate problem for that phone - I've seen certain android phones create issues unless you install the ZM certs in the phone).

To get system logs:

1. You will have to install ADB (Android Debug Bridge). It comes along with the Android SDK but if you don't have the SDK (most won't) you can refer to https://www.xda-developers.com/install- ... cos-linux/

2. Once ADB is installed, connect the phone to the browser (make sure you have allowed debugging on the phone menu - it should ask) and type in "adb logcat >result.txt" and try to play a video. A lot of logs will be generated. Please email them to pliablepixels@gmail.com
--
My collection of ZoneMinder learnings:
https://wiki.zoneminder.com/Various_ZM_thoughts

SkippyDo
Posts: 70
Joined: Mon Nov 20, 2017 6:49 pm

Re: ZMninja - Video is not playable on Events

Post by SkippyDo » Tue Jan 01, 2019 10:58 am

I believe that I have captured something meaningful here (starting with what I believe are the relevant log outputs):

01-01 02:32:15.182 17094 17094 D SystemWebChromeClient: file:///android_asset/www/lib/filelogger/dist/filelogger.min.js: Line 6 : Jan 1, 2019 02:32:15 AM DEBUG neighbors of 200are pre=199 next=
01-01 02:32:15.182 17094 17094 I chromium: [INFO:CONSOLE(6)] "Jan 1, 2019 02:32:15 AM DEBUG neighbors of 200are pre=199 next=", source: file:///android_asset/www/lib/filelogger/dist/filelogger.min.js (6)
01-01 02:32:15.289 17094 17169 D TEST : cdvfile://localhost/files/zmNinjaLog.txt: 60
01-01 02:32:15.672 17094 17094 D SystemWebChromeClient: file:///android_asset/www/lib/filelogger/dist/filelogger.min.js: Line 6 : Jan 1, 2019 02:32:15 AM DEBUG *** Invoking play
01-01 02:32:15.672 17094 17094 I chromium: [INFO:CONSOLE(6)] "Jan 1, 2019 02:32:15 AM DEBUG *** Invoking play", source: file:///android_asset/www/lib/filelogger/dist/filelogger.min.js (6)
01-01 02:32:16.111 1661 14011 I MotoSensors: Sensorhub hal enable: 4 - 0
01-01 02:32:16.114 4992 5005 I art : Background sticky concurrent mark sweep GC freed 88574(3MB) AllocSpace objects, 7(140KB) LOS objects, 11% free, 22MB/24MB, paused 7.368ms total 69.023ms
01-01 02:32:16.251 747 914 I SFPerfTracer: triggers: (rate: 57:3996) (800202 sw vsyncs) (0 skipped) (23:2072096 vsyncs) (25:2998298)
01-01 02:32:16.317 17094 17169 D TEST : cdvfile://localhost/files/zmNinjaLog.txt: 83
01-01 02:32:16.444 4992 5005 I art : Background sticky concurrent mark sweep GC freed 241(454KB) AllocSpace objects, 1(20KB) LOS objects, 0% free, 24MB/24MB, paused 6.059ms total 86.626ms
01-01 02:32:16.463 17094 17094 D SystemWebChromeClient: file:///android_asset/www/lib/filelogger/dist/filelogger.min.js: Line 6 : Jan 1, 2019 02:32:16 AM INFO >>>Starting checkAllEvents interval...
01-01 02:32:16.463 17094 17094 I chromium: [INFO:CONSOLE(6)] "Jan 1, 2019 02:32:16 AM INFO >>>Starting checkAllEvents interval...", source: file:///android_asset/www/lib/filelogger/dist/filelogger.min.js (6)
01-01 02:32:16.529 17094 17169 D TEST : cdvfile://localhost/files/zmNinjaLog.txt: 55
01-01 02:32:16.585 4992 5005 I art : Background partial concurrent mark sweep GC freed 160530(3MB) AllocSpace objects, 4(188KB) LOS objects, 40% free, 21MB/35MB, paused 1.842ms total 140.383ms
01-01 02:32:16.699 17094 17169 D TEST : cdvfile://localhost/files/zmNinjaLog.txt: 121
01-01 02:32:16.854 17094 17169 D TEST : cdvfile://localhost/files/zmNinjaLog.txt: 189
01-01 02:32:16.895 17094 17208 I cr_MediaCodecBridge: create MediaCodec video decoder, mime video/avc
01-01 02:32:16.897 17094 17208 I MediaCodec: name=video/avc isType=true encoder=false
01-01 02:32:16.899 17094 17208 I MediaCodec: (0x82db1fc0) init name(video/avc) isType(1) encoder(0)
01-01 02:32:16.902 821 821 I MediaPlayerService: MediaPlayerService::getOMX
01-01 02:32:16.906 17094 17211 I OMXClient: MuxOMX ctor
01-01 02:32:16.910 8764 8764 I OMXMaster: makeComponentInstance(OMX.qcom.video.decoder.avc) in mediacodec process
01-01 02:32:16.912 8764 8764 I OMX-VDEC-1080P: Video slvp perflock released
01-01 02:32:16.913 8764 8764 I OMX-VDEC-1080P: component_init: OMX.qcom.video.decoder.avc : fd=7
01-01 02:32:16.913 8764 8764 I OMX-VDEC-1080P: Capabilities: driver_name = msm_vidc_driver, card = msm_vdec_8974, bus_info = , version = 1, capabilities = 4003000
01-01 02:32:16.930 8764 8764 I OMX-VDEC-1080P: omx_vdec::component_init() success : fd=7
01-01 02:32:16.931 17094 17210 I MediaCodec: (0x82db1fc0) Component Allocated (OMX.qcom.video.decoder.avc)
01-01 02:32:16.941 17094 17210 I MediaCodec: MediaCodec will operate in async mode
01-01 02:32:16.942 17094 17208 I MediaCodec: (0x82db1fc0) configure surface(0x8a024500) crypto(0x0) flags(0)
01-01 02:32:16.943 17094 17208 D MediaCodec: (0x82db1fc0) configure format: AMessage(what = 0x00000000) = {
01-01 02:32:16.943 17094 17208 D MediaCodec: string mime = "video/avc"
01-01 02:32:16.943 17094 17208 D MediaCodec: Buffer csd-1 = {
01-01 02:32:16.943 17094 17208 D MediaCodec: 00000000: 00 00 00 01 68 ef 8f c8 ....h...
01-01 02:32:16.943 17094 17208 D MediaCodec: }
01-01 02:32:16.943 17094 17208 D MediaCodec: int32_t max-height = 1296
01-01 02:32:16.943 17094 17208 D MediaCodec: int32_t height = 1296
01-01 02:32:16.943 17094 17208 D MediaCodec: int32_t width = 2304
01-01 02:32:16.943 17094 17208 D MediaCodec: int32_t max-input-size = 2239488
01-01 02:32:16.943 17094 17208 D MediaCodec: Buffer csd-0 = {
01-01 02:32:16.943 17094 17208 D MediaCodec: 00000000: 00 00 00 01 67 4d 40 32 e5 28 04 80 14 74 20 00 ....gM@2.(...t .
01-01 02:32:16.943 17094 17208 D MediaCodec: 00000010: 00 03 00 20 00 00 fa 01 e3 06 32 c0 ... ......2.
01-01 02:32:16.943 17094 17208 D MediaCodec: }
01-01 02:32:16.943 17094 17208 D MediaCodec: int32_t max-width = 2304
01-01 02:32:16.943 17094 17208 D MediaCodec: }
01-01 02:32:16.943 17094 17210 I MediaCodec: [OMX.qcom.video.decoder.avc] setting surface generation to 17504257
01-01 02:32:16.945 8764 21527 E OMX-VDEC-1080P: Extension: OMX.google.android.index.storeANWBufferInMetadata not implemented
01-01 02:32:16.945 17094 17211 I ACodec : DRC Mode: Dynamic Buffer Mode
01-01 02:32:16.946 17094 17211 I ExtendedACodec: setupVideoDecoder()
01-01 02:32:16.946 17094 17211 I ACodec : [OMX.qcom.video.decoder.avc] setupVideoDecoder Width Height (2304x1296)
01-01 02:32:16.946 17094 17211 I ACodec : mime (video/avc) compressionFormat (7)
01-01 02:32:16.950 8764 6254 E OMX-VDEC-1080P: Unsupported Width = (2304) greater than max supported Width (1920)
01-01 02:32:16.950 8764 6254 E OMX-VDEC-1080P: set_parameter: Error: 0x80001019, setting param 0x2000001
01-01 02:32:16.950 8764 6254 E OMXNodeInstance: setParameter(223c0265:qcom.decoder.avc, ParamPortDefinition(0x2000001)) ERROR: UnsupportedSetting(0x80001019)
01-01 02:32:16.950 17094 17211 E ACodec : [OMX.qcom.video.decoder.avc] configureCodec returning error -1010
01-01 02:32:16.950 17094 17211 E ACodec : signalError(omxError 0x80001001, internalError -1010)
01-01 02:32:16.950 17094 17210 E MediaCodec: Codec reported err 0xfffffc0e, actionCode 0, while in state 3
01-01 02:32:16.951 17094 17208 E MediaCodec: configure failed with err 0xfffffc0e, resetting...
01-01 02:32:16.951 17094 17208 I MediaCodec: (0x82db1fc0) release
01-01 02:32:16.952 8764 8764 I OMX-VDEC-1080P: omx_vdec::component_deinit() complete
01-01 02:32:16.954 8764 8764 I OMX-VDEC-1080P: Exit OMX vdec Destructor: fd=7
01-01 02:32:16.955 4683 4687 E ANDR-PERF-MPCTL: Invalid profile no. 0, total profiles 0 only
01-01 02:32:16.955 8764 8764 I OMX-VDEC-1080P: Video slvp perflock acquired
01-01 02:32:16.959 17094 17208 I MediaCodec: (0x82db1fc0) init name(video/avc) isType(1) encoder(0)
01-01 02:32:16.961 821 18962 I MediaPlayerService: MediaPlayerService::getOMX
01-01 02:32:16.964 17094 17211 I OMXClient: MuxOMX ctor
01-01 02:32:16.967 8764 21527 I OMXMaster: makeComponentInstance(OMX.qcom.video.decoder.avc) in mediacodec process
01-01 02:32:16.968 8764 21527 I OMX-VDEC-1080P: Video slvp perflock released
01-01 02:32:16.968 8764 21527 I OMX-VDEC-1080P: component_init: OMX.qcom.video.decoder.avc : fd=7
01-01 02:32:16.969 8764 21527 I OMX-VDEC-1080P: Capabilities: driver_name = msm_vidc_driver, card = msm_vdec_8974, bus_info = , version = 1, capabilities = 4003000
01-01 02:32:16.983 8764 21527 I OMX-VDEC-1080P: omx_vdec::component_init() success : fd=7
01-01 02:32:16.984 17094 17210 I MediaCodec: (0x82db1fc0) Component Allocated (OMX.qcom.video.decoder.avc)
01-01 02:32:16.990 17094 17208 E cr_MediaCodecBridge: Cannot configure the video codec
01-01 02:32:16.990 17094 17208 E cr_MediaCodecBridge: android.media.MediaCodec$CodecException: Error 0xfffffc0e
01-01 02:32:16.990 17094 17208 E cr_MediaCodecBridge: at android.media.MediaCodec.native_configure(Native Method)
01-01 02:32:16.990 17094 17208 E cr_MediaCodecBridge: at android.media.MediaCodec.configure(MediaCodec.java:1890)
01-01 02:32:16.990 17094 17208 E cr_MediaCodecBridge: at org.chromium.media.MediaCodecBridge.a(SourceFile:253)
01-01 02:32:16.990 17094 17208 E cr_MediaCodecBridge: at org.chromium.media.MediaCodecBridgeBuilder.createVideoDecoder(SourceFile:22)
01-01 02:32:16.991 17094 17203 E chromium: [ERROR:render_media_log.cc(30)] MediaEvent: MEDIA_ERROR_LOG_ENTRY {"error":"video decoder reinitialization failed"}
01-01 02:32:16.997 17094 17140 E chromium: [ERROR:render_media_log.cc(30)] MediaEvent: PIPELINE_ERROR PIPELINE_ERROR_DECODE
01-01 02:32:17.015 17094 17094 D SystemWebChromeClient: file:///android_asset/www/lib/filelogger/dist/filelogger.min.js: Line 6 : Jan 1, 2019 02:32:17 AM DEBUG player reported a video error:{"isTrusted":true}
01-01 02:32:17.015 17094 17094 I chromium: [INFO:CONSOLE(6)] "Jan 1, 2019 02:32:17 AM DEBUG player reported a video error:{"isTrusted":true}", source: file:///android_asset/www/lib/filelogger/dist/filelogger.min.js (6)
01-01 02:32:17.034 17094 17169 D TEST : cdvfile://localhost/files/zmNinjaLog.txt: 189
01-01 02:32:17.089 17094 17094 D SystemWebChromeClient: file:///android_asset/www/index.html#/app/events/0/false: Line 0 : Uncaught (in promise) AbortError: The play() request was interrupted by a call to pause(). https://goo.gl/LdLk22
01-01 02:32:17.089 17094 17094 I chromium: [INFO:CONSOLE(0)] "Uncaught (in promise) AbortError: The play() request was interrupted by a call to pause(). https://goo.gl/LdLk22", source: file:///android_asset/www/index.html#/app/events/0/false (0)
01-01 02:32:17.281 17094 17169 D TEST : cdvfile://localhost/files/zmNinjaLog.txt: 164
01-01 02:32:17.400 17094 17169 D TEST : cdvfile://localhost/files/zmNinjaLog.txt: 52
01-01 02:32:17.500 17094 17169 D TEST : cdvfile://localhost/files/zmNinjaLog.txt: 46
01-01 02:32:17.580 17094 17169 D TEST : cdvfile://localhost/files/zmNinjaLog.txt: 64
01-01 02:32:17.661 17094 17169 D TEST : cdvfile://localhost/files/zmNinjaLog.txt: 48
01-01 02:32:17.684 1072 1072 I MSM-irqbalance: Decided to move IRQ177 from CPU5 to CPU4
01-01 02:32:17.751 17094 17169 D TEST : cdvfile://localhost/files/zmNinjaLog.txt: 68
01-01 02:32:17.840 17094 17169 D TEST : cdvfile://localhost/files/zmNinjaLog.txt: 79
01-01 02:32:18.425 4683 4687 E ANDR-PERF-MPCTL: Invalid profile no. 0, total profiles 0 only
01-01 02:32:18.489 747 747 I SFPerfTracer: triggers: (rate: 582:62382) (compose: 25:897) (post: 2:80) (render: 1:1168) (56:606764 frames) (57:765564)
01-01 02:32:18.489 747 747 D SFPerfTracer: layers: (3:7) (StatusBar (0xaa88e400): 0:163169) (com.android.systemui.ImageWallpaper (0xaa89a400): 0:73044)* (animation background stackId=1 (0xaa89b800): 0:256)* (DimLayerController/Stack=0 (0xaa88d000): 0:1228)* (Sprite (0xaa890c00): 0:16)* (NavigationBar (0xaa8eb800): 0:243) (com.pliablepixels.zmninja_pro/com.pliablepixels.zmninja_pro.MainActivity (0xaa89cc00): 57:440)
01-01 02:32:18.537 747 914 I SFPerfTracer: triggers: (rate: 57:3996) (800202 sw vsyncs) (0 skipped) (132:2072228 vsyncs) (134:2998433)
01-01 02:32:18.630 1661 15565 I MotoSensors: Sensorhub hal setDelay: 1 - 20
01-01 02:32:18.630 1661 15565 I MotoSensors: Sensorhub hal setdelay: 1 - 20
01-01 02:32:18.630 1661 15565 I MotoSensors: HubSensors::updateAccelRate 200
01-01 02:32:18.630 1661 15565 I MotoSensors: HubSensors::updateGyroRate 200
01-01 02:32:18.630 1661 15565 I MotoSensors: Sensorhub hal enable: 1 - 1
01-01 02:32:18.630 1661 15565 I MotoSensors: HubSensors::updateAccelRate 20
01-01 02:32:19.951 17094 17211 W AMessage: failed to deliver message as target handler 1 is gone.
01-01 02:32:20.051 4699 6068 V ConnectivityManager: isActiveNetworkMetered() returns:false
01-01 02:32:20.884 4699 6068 V ConnectivityManager: isActiveNetworkMetered() returns:false
01-01 02:32:20.924 4699 6068 V ConnectivityManager: isActiveNetworkMetered() returns:false

SkippyDo
Posts: 70
Joined: Mon Nov 20, 2017 6:49 pm

Re: ZMninja - Video is not playable on Events

Post by SkippyDo » Tue Jan 01, 2019 11:21 am

Pretty sure this is a resolution issue.

My cameras were set to 2304x1296. I changed to 1280x720* and am now able to get video to play in both ZMninja and Firefox.

* 1920x1080 works, so I ended up using this resolution.

I have a feeling that under 1.30.4 I might have been using a lower resolution, thus not running into this problem.

It would therefore seem that some phones aren't able to handle higher resolutions: how does one really know? My wife's Moto G5+ handles the 2304x1296.

User avatar
asker
Posts: 972
Joined: Sun Mar 01, 2015 12:12 pm

Re: ZMninja - Video is not playable on Events

Post by asker » Wed Jan 02, 2019 12:57 am

Yup it does seem to be a size issue. The logs are pretty clear and your tests have confirmed it. Thanks for being diligent. I'll add this to the FAQ as well.
I don't really know how one can make sure what is the maximum supported video size for a device. I don't see any specific commentary about size in their media formats document
--
My collection of ZoneMinder learnings:
https://wiki.zoneminder.com/Various_ZM_thoughts

TihsHead
Posts: 5
Joined: Fri Dec 28, 2018 2:47 pm

Re: ZMninja - Video is not playable on Events

Post by TihsHead » Sun Jan 06, 2019 4:25 pm

How can I get an older version of the app? I had an older version on a pad and it worked fine. I upgraded the app to throw newest version from the app store now it is also getting video not playable.

User avatar
asker
Posts: 972
Joined: Sun Mar 01, 2015 12:12 pm

Re: ZMninja - Video is not playable on Events

Post by asker » Mon Jan 07, 2019 1:53 pm

TihsHead wrote:
Sun Jan 06, 2019 4:25 pm
How can I get an older version of the app? I had an older version on a pad and it worked fine. I upgraded the app to throw newest version from the app store now it is also getting video not playable.
The problem with going back to an older version is it will not be supported. There is no direct way to go back to an old version unless you have a backup or tell me exactly which version worked - I can email an apk to you, but after that you'll be on your own as I won't be able to fix issues.

The video handling code has not changed. Have you checked if its a video size issue like above? If that is not your issue, would be good if you collect device logs as explained in viewtopic.php?f=33&t=27840&start=15#p108753

Once you do, please don't message it in this forum. Please email it to pliablepixels@gmail.com
--
My collection of ZoneMinder learnings:
https://wiki.zoneminder.com/Various_ZM_thoughts

Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest