Open GoogleCodeExporter opened 9 years ago
This is what I have found so far:
On a camera source (mjpeg) I have added a mic source VLC, if the camera/mic is
added, then later (either by closing iSpy, and reopening; or by just
disconnecting the hardware manually - thus simulating a device dc), then the
following occurs:
An unhandled exception of type 'System.NullReferenceException' occurred in
Unknown Module. It is occurring somewhere in the vlc libs and debugger cannot
trace except via assembly.
However, if I "Switch OFF" the source via the iSpy UI before iSpy has a chance
to add the mic, then the crashes never occur.
To further verify I added to the VolumnLevel.cs in the Enable method the
following code just to exclude the camera (10.0.1.25) that is no longer
connected:
case 2: //VLC listener
if (!Micobject.settings.sourcename.Contains("10.0.1.25"))
AudioSource = new VLCStream(Micobject.settings.sourcename) { RecordingFormat = new WaveFormat(sampleRate, bitsPerSample, channels), Arguments = Micobject.settings.vlcargs};
break;
This again resulted in no crashes occurring.
So, at this point, I think I will add a check into the above to make sure that
it can actually connect to that ip/port prior to it attempting to create the
VLCStream. The problem isn't in the VLCStream creation, as you can trace thru
all of VLCStream and even through all of the Enable method and you don't get an
error. More likely is somewhere in all of the events that are added. Given that
the events really don't need to fire if the source isn't valid, no point in
adding them, thus no point in creating the stream.
Also, given the source of the crash, it very well may be the source of
previously noted issues describing random crashes. Given that most audio
sources will be the vlc audio feeds, and you set up "reconnect" refreshes for
vlc sources, I can see that every once in a while that something would cause a
problem connecting and therefore resulting in the app crashing (via the null
reference exception in a vlc lib).
Original comment by wade.ano...@gmail.com
on 2 Jan 2013 at 11:01
Crashes occurring due to System.NullReferenceException are still manifesting.
They are not as frequent, still in an "unknown" module. No further info is
avail at this time. Suspect I need to make similar changes to the iSpyServer
code, but don't know if an error in that process would cause the iSpy process
to crash.
FYI, the opacity settings on the notification bar are nice, but perhaps it
should be a submenu selection ie) Set Opacity -> 10%|30%|50%|70%|90%|100% that
way there are some more options besides 10,30, and 100 In addition, setting the
Opacity only effects the main window and not the PTZ window, which it should.
Would also like to see the PTZ window become a dockable window and not
something outside the main window.
Original comment by wade.ano...@gmail.com
on 3 Jan 2013 at 4:08
Decided to add the connection check directly to the VLCStream classes (audio
and video) and implement the check in the class's Start() method. This should
hopefully catch any possibility that would arise and not just that which I knew
of originating from the VolumeLevel class being enabled. Don't know enough
about the code yet to say if this could be a performance issue though if the
hamster keeps trying to turn the wheel and "start" the VLCStream repeatedly
because it is not started. I would tend to think that this "repeat start"
scenario would only occur in those instances where you have defined a camera,
and it is intentionally left offline, but not put into a state of "switched
off" in the UI. Will let this run throughout the day and see if any further
NullReferenceExceptions are thrown.
Original comment by wade.ano...@gmail.com
on 3 Jan 2013 at 5:27
After moving the connection test to the VLCStream class as stated above, there
have been zero (0) crashes in the last 24yrs of continuous running.
Original comment by wade.ano...@gmail.com
on 4 Jan 2013 at 2:55
1) Added Opacity settings for 50,70,& 90, changing opacity now changes opacity
of the ptztool form.
2) Added Preset buttons to the PTZTool, these buttons are dynamically added
based upon the presets available in the controls the same as they are added to
the dropdown combo box. The ptztool form is then resized according to the
number of rows of buttons added.
The only thing left that is bothering my slightly is the command buttons at the
bottom of the iSpy main form should be all the same size so that when the sizer
is moved, the rows are uniform and the buttons align. Color scheme of the
buttons are a little wrong too, grey/black buttons on a grey background, with
black text...just too darkish.
Original comment by wade.ano...@gmail.com
on 4 Jan 2013 at 8:14
Hey Wade, sorry for the delay in responding - could you share your code changes?
Original comment by ad...@developerinabox.com
on 14 Feb 2013 at 1:27
Original issue reported on code.google.com by
wade.ano...@gmail.com
on 2 Jan 2013 at 5:43