mylisabox / flutter_mjpeg

Flutter widget to show mjpeg stream from URL
BSD 2-Clause "Simplified" License
30 stars 23 forks source link

Exception every 2 frames (startIndex = -1) #1

Closed thbkrshw closed 4 years ago

thbkrshw commented 5 years ago

Trying to see a motion stream and I get this error about every 2 frames:


E/flutter ( 4738): #0      RangeError.checkValidRange (dart:core/errors.dart:328:7)
E/flutter ( 4738): #1      __Uint8ArrayView&_TypedListView&_IntListMixin&_TypedIntListMixin.sublist (dart:typed_data-patch/typed_data_patch.dart:460:22)
E/flutter ( 4738): #2      _StreamManager.updateStream.<anonymous closure> (package:flutter_mjpeg/src/mjpeg.dart:102:37)
E/flutter ( 4738): <asynchronous suspension>
E/flutter ( 4738): #3      _rootRunUnary (dart:async/zone.dart:1132:38)
E/flutter ( 4738): #4      _CustomZone.runUnary (dart:async/zone.dart:1029:19)
E/flutter ( 4738): #5      _CustomZone.runUnaryGuarded (dart:async/zone.dart:931:7)
E/flutter ( 4738): #6      _BufferingStreamSubscription._sendData (dart:async/stream_impl.dart:336:11)
E/flutter ( 4738): #7      _BufferingStreamSubscription._add (dart:async/stream_impl.dart:263:7)
E/flutter ( 4738): #8      _ForwardingStreamSubscription._add (dart:async/stream_pipe.dart:132:11)
E/flutter ( 4738): #9      _ForwardingStream._handleData (dart:async/stream_pipe.dart:98:10)
E/flutter ( 4738): #10     _ForwardingStreamSubscription._handleData (dart:async/stream_pipe.dart:164:13)
E/flutter ( 4738): #11     _rootRunUnary (dart:async/zone.dart:1132:38)
E/flutter ( 4738): #12     _CustomZone.runUnary (dart:async/zone.dart:1029:19)
E/flutter ( 4738): #13     _CustomZone.runUnaryGuarded (dart:async/zone.dart:931:7)
E/flutter ( 4738): #14     _BufferingStreamSubscription._sendData (dart:async/stream_impl.dart:336:11)
E/flutter ( 4738): #15     _BufferingStreamSubscription._add (dart:async/stream_impl.dart:263:7)
E/flutter ( 4738): #16     _SyncStreamController._sendData (dart:async/stream_controller.dart:764:19)
E/flutter ( 4738): #17     _StreamController._add (dart:async/stream_controller.dart:640:7)
E/flutter ( 4738): #18     _StreamController.add (dart:async/stream_controller.dart:586:5)
E/flutter ( 4738): #19     _HttpParser._doParse (dart:_http/http_parser.dart:767:27)
E/flutter ( 4738): #20     _HttpParser._parse (dart:_http/http_parser.dart:318:7)
E/flutter ( 4738): #21     _HttpParser._onData (dart:_http/http_parser.dart:810:5)
E/flutter ( 4738): #22     _rootRunUnary (dart:async/zone.dart:1132:38)
E/flutter ( 4738): #23     _CustomZone.runUnary (dart:async/zone.dart:1029:19)
E/flutter ( 4738): #24     _CustomZone.runUnaryGuarded (dart:async/zone.dart:931:7)
E/flutter ( 4738): #25     _BufferingStreamSubscription._sendData (dart:async/stream_impl.dart:336:11)
E/flutter ( 4738): #26     _BufferingStreamSubscription._add (dart:async/stream_impl.dart:263:7)
E/flutter ( 4738): #27     _SyncStreamController._sendData (dart:async/stream_controller.dart:764:19)
E/flutter ( 4738): #28     _StreamController._add (dart:async/stream_controller.dart:640:7)
E/flutter ( 4738): #29     _StreamController.add (dart:async/stream_controller.dart:586:5)
E/flutter ( 4738): #30     _Socket._onData (dart:io-patch/socket_patch.dart:1789:41)
E/flutter ( 4738): #31     _rootRunUnary (dart:async/zone.dart:1132:38)
E/flutter ( 4738): #32     _CustomZone.runUnary (dart:async/zone.dart:1029:19)
E/flutter ( 4738): #33     _CustomZone.runUnaryGuarded (dart:async/zone.dart:931:7)
E/flutter ( 4738): #34     _BufferingStreamSubscription._sendData (dart:async/stream_impl.dart:336:11)
E/flutter ( 4738): #35     _BufferingStreamSubscription._add (dart:async/stream_impl.dart:263:7)
E/flutter ( 4738): #36     _SyncStreamController._sendData (dart:async/stream_controller.dart:764:19)
E/flutter ( 4738): #37     _StreamController._add (dart:async/stream_controller.dart:640:7)
E/flutter ( 4738): #38     _StreamController.add (dart:async/stream_controller.dart:586:5)
E/flutter ( 4738): #39     _RawSecureSocket._sendReadEvent (dart:io/secure_socket.dart:1004:19)
E/flutter ( 4738): #40     _rootRun (dart:async/zone.dart:1120:38)
E/flutter ( 4738): #41     _CustomZone.run (dart:async/zone.dart:1021:19)
E/flutter ( 4738): #42     _CustomZone.runGuarded (dart:async/zone.dart:923:7)
E/flutter ( 4738): #43     _CustomZone.bindCallbackGuarded.<anonymous closure> (dart:async/zone.dart:963:23)
E/flutter ( 4738): #44     _rootRun (dart:async/zone.dart:1124:13)
E/flutter ( 4738): #45     _CustomZone.run (dart:async/zone.dart:1021:19)
E/flutter ( 4738): #46     _CustomZone.bindCallback.<anonymous closure> (dart:async/zone.dart:947:23)
E/flutter ( 4738): #47     Timer._createTimer.<anonymous closure> (dart:async-patch/timer_patch.dart:21:15)
E/flutter ( 4738): #48     _Timer._runTimers (dart:isolate-patch/timer_impl.dart:382:19)
E/flutter ( 4738): #49     _Timer._handleMessage (dart:isolate-patch/timer_impl.dart:416:5)
E/flutter ( 4738): #50     _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:172:12)
E/flutter ( 4738): ```
jaumard commented 4 years ago

Totally sorry @thbkrshw! I forget about your issue ! Look like you manage to fix it ? If you don't mind doing a PR I'll gladly merge it :)

Thanks

thbkrshw commented 4 years ago

Hello @jaumard, it's ok :) I submitted a PR with the issue: https://github.com/mylisabox/flutter_mjpeg/pull/2

jaumard commented 4 years ago

Thanks! I'll look at this over the weekend and publish a new version

jaumard commented 4 years ago

It's merged and published in 1.2.2 :)