Thad House
db5dfa1746
Adds sliders for all settable properties to the default webpage ( #48 )
...
When the page is loaded, if properties can be found they will
automatically be created on screen. They are currently not auto
updating. Raw values are currently disabled because of this.
2017-01-19 01:02:37 -07:00
Peter Johnson
8f8c4d3d95
HttpUtil: Allow "http" scheme to be mixed case.
2017-01-10 00:15:39 -08:00
Peter Johnson
3c3236c5d5
Fix video mode notifications.
2017-01-05 01:42:19 -08:00
Thad House
5dd8e4dc7f
Adds defs for the C windows functions, and shims the 5 missing ones ( #38 )
2017-01-03 19:09:11 -08:00
Peter Johnson
883fd5b062
For property events, provide property name rather than source name.
...
This is much more useful.
2017-01-02 23:17:00 -08:00
Peter Johnson
7ddbf20108
Create VideoCamera base class and move camera settings functions to it.
...
This makes them available for both UsbCamera and HttpCamera / AxisCamera.
To avoid virtual functions in the public-facing interface, move the
implementation of the camera settings functions to the core library.
2017-01-02 23:17:00 -08:00
Peter Johnson
23135d7a5a
Allow Sink.SetSource() to be given an empty source.
...
In Java, allow source to be null (pointers are not used in C++, so
this isn't necessary).
2017-01-02 23:17:00 -08:00
Thad House
b91ab0b44f
Gets builds working on Windows (VS 2015) ( #37 )
...
Def files will be updated after the latest PR with new definitions gets
added.
2017-01-02 23:16:35 -08:00
Peter Johnson
58931e1d30
Be even more permissive on valid JPEG formats.
2016-12-25 01:45:35 -08:00
Peter Johnson
9016a9e8b8
Start implementing HttpCamera.
...
This is a work in progress that does not yet support camera settings.
2016-12-23 22:26:27 -08:00
Peter Johnson
4c8c41fdc0
CvSink: Support grayscale images.
...
Also support 4-channel BGRx images and provide better error reporting
on bad images passed to PutFrame.
2016-12-23 22:25:11 -08:00
Peter Johnson
205d3b1d04
Some cameras don't provide the JFIF header, so don't require it.
...
This fixes DHT not being inserted on some images.
2016-12-23 22:21:11 -08:00
Peter Johnson
1575fff07a
MjpegServer: Limit the number of simultaneous clients to 10.
...
This prevents client issues from swamping the network.
2016-12-23 22:01:35 -08:00
Peter Johnson
3d28275675
UsbCamera: Simplify the message passing implementation.
2016-12-23 10:58:11 -08:00
Peter Johnson
6f41b3cde7
UsbCamera: Implement LifeCam HD-3000 exposure quirk.
...
On Linux, the V4L exposure setting is logarithmic and only accepts
certain exact values.
2016-12-22 23:44:40 -08:00
Peter Johnson
ced2608afd
Move ExtCtrlIoctl to UsbCameraProperty::DeviceQuery.
2016-12-22 22:44:46 -08:00
Peter Johnson
adbca532c0
Break up UsbCameraImpl::DeviceProcessCommands().
2016-12-22 22:36:07 -08:00
Peter Johnson
5e38d8f28a
Refactor UsbCameraProperty.
2016-12-22 22:11:54 -08:00
Peter Johnson
d6ef2c04a5
Start refactoring source property implementations.
2016-12-22 21:19:50 -08:00
Peter Johnson
ce69783871
UsbCamera: Scale some properties to make them constently percentages.
...
The "raw" version of these properties are still available, just prefixed
with "raw_".
2016-12-22 20:51:04 -08:00
Peter Johnson
10b13da3da
Refactor USB vendor/product to product string to UsbUtil.h.
...
Also implement reading of /var/lib/usbutils/usb.ids for systems that
have it (e.g. desktop Linux).
2016-12-21 10:56:40 -08:00
Peter Johnson
88afefe464
Avoid crash in SourceImpl constructor.
...
The Frame constructor calls back into SourceImpl (the passed this reference),
and when in-place constructed in the SourceImpl constructor, SourceImpl
is only partially constructed.
2016-12-21 10:56:40 -08:00
Peter Johnson
80abf6bf24
Support per-stream resolution settings.
...
The code now automatically resizes as required.
This change also disconnects camera resolution settings from MJPEG
stream connections; setting the camera resolution can now only be done
via code.
2016-12-20 20:48:31 -08:00
Peter Johnson
8501b7c9e2
CvSourceImpl::CreateProperty(): Use lock_guard instead of unique_lock.
2016-12-18 09:13:52 -08:00
Peter Johnson
e1dabbc2d5
cscore_cpp.cpp: Fix include order.
2016-12-18 09:13:01 -08:00
Peter Johnson
c08a489e27
Improve error message for VIDIOC_STREAMON "no space left on device".
2016-12-18 09:13:01 -08:00
Peter Johnson
28a2ba4bf8
Add external logger interface.
2016-12-18 09:13:01 -08:00
Peter Johnson
2b8b8e7403
Improve logging consistency by using source/sink name throughout.
2016-12-18 09:12:59 -08:00
Peter Johnson
7c2f994a66
Refactor source IsConnected() and connected notification.
2016-12-18 09:05:03 -08:00
Peter Johnson
b5fd15e052
CvSink::GrabFrame(): Add delays like MjpegServer to avoid consuming CPU.
2016-12-04 21:45:37 -08:00
Peter Johnson
ecfc684174
MjpegServer: Increase bad frame wait from 10 to 20 ms.
2016-12-04 21:45:37 -08:00
Peter Johnson
4600ea135c
Frame: Make Data struct public.
2016-12-04 21:45:37 -08:00
Peter Johnson
3b82ba8945
Refactor JPEG functions to JpegUtil.
2016-12-04 21:45:37 -08:00
Peter Johnson
c32fc57ce1
Refactor HTTP utilities.
2016-12-04 21:45:37 -08:00
Peter Johnson
9a8f66e3e5
SourceImpl: Add no-copy PutFrame.
2016-12-04 21:45:37 -08:00
Peter Johnson
ef39713219
Revert "Don't output \r\n before boundary. This throws off some clients."
...
This reverts commit ae8c8ec230 .
2016-12-04 21:45:37 -08:00
Peter Johnson
1f93a4ab4f
Change acronym class names to use MixedCase (UsbCamera, MjpegServer). ( #22 )
2016-12-04 00:08:47 -08:00
Thad House
3625f11e08
Adds C methods that take a cv::Mat* ( #21 )
...
Some implementations of OpenCV use cv::Mat as their native pointer
rather then CvMat, so we need to support both in the C interface
2016-11-30 22:00:44 -08:00
Peter Johnson
ae8c8ec230
Don't output \r\n before boundary. This throws off some clients.
2016-11-18 19:52:22 -08:00
Peter Johnson
ec8c0eb3c2
Fix FPS setting and crash in reapplying settings.
2016-11-18 19:23:35 -08:00
Peter Johnson
3d898dd8f7
MJPEGServer: Fix URI %xx-decoding.
2016-11-18 19:03:35 -08:00
Peter Johnson
df18e178ee
MJPEGServer: Provide a bare-bones HTML root page.
2016-11-18 18:58:03 -08:00
Peter Johnson
71a6e08988
MJPEGServer: Make a couple of tweaks for Axis camera compatibility.
2016-11-18 18:33:49 -08:00
Peter Johnson
a05636d9a6
Add data accessors for USBCamera and MJPEGServer.
...
USBCamera: getPath()
MJPEGServer: getListenAddress() and getPort()
2016-11-18 17:21:03 -08:00
Peter Johnson
5eecbfd9bf
Implement immediate notify on network interfaces event.
2016-11-18 16:27:26 -08:00
Peter Johnson
65514b3028
USBCamera: Update description on reconnect.
2016-11-18 16:16:04 -08:00
Peter Johnson
bad4ca4666
Add event for network interfaces change.
2016-11-18 12:41:08 -08:00
Peter Johnson
5fecc57e8a
Add methods to get the hostname and network interfaces.
2016-11-18 12:41:08 -08:00
Peter Johnson
9945459a41
Notify sink enable and disable events.
2016-11-18 12:41:08 -08:00
Peter Johnson
22c11fad36
Notify source property events.
2016-11-18 12:41:08 -08:00