Commit Graph

4058 Commits

Author SHA1 Message Date
Fred Silberberg
b9a08e8260 Fixed entry comment (#169) 2016-12-25 22:11:14 -08:00
Peter Johnson
58931e1d30 Be even more permissive on valid JPEG formats. 2016-12-25 01:45:35 -08:00
Peter Johnson
976ca80056 Use InetNtop on Win32 rather than WSAAddressToString. (#170)
Similarly, use InetPton rather than WSAStringToAddress.

The WSAAddressToString function is intended to provide a user-readable
string and thus includes the port number.  This breaks some use cases
on Windows which expect to get just the IP address.

Note: The InetPton and InetNtop functions are available only in Vista or above.
2016-12-25 01:30:12 -08:00
Peter Johnson
95e5295666 Use InetNtop on Win32 rather than WSAAddressToString. (#170)
Similarly, use InetPton rather than WSAStringToAddress.

The WSAAddressToString function is intended to provide a user-readable
string and thus includes the port number.  This breaks some use cases
on Windows which expect to get just the IP address.

Note: The InetPton and InetNtop functions are available only in Vista or above.
2016-12-25 01:30:12 -08:00
Peter Johnson
4800c201e4 Add Axis camera creation functions and Http camera NT publishing. (#420) 2016-12-24 21:05:08 -06:00
Thad House
dc9a9e5d96 Fixes typo in SensorBase error message (#422) 2016-12-24 21:04:32 -06:00
Peter Johnson
4b16999fbc Fix tests that are only built on cmake. (#168)
Fixes #167.
2016-12-24 01:58:12 -06:00
Peter Johnson
318d23ba1c Add AxisCamera wrapper class.
This takes hosts (IP or DNS name) rather than URLs, making it easier
to use.

Also add more overloads to resolve ambiguities encountered when using
std::string and const char*, and also add overloads for
std::initializer_list<T> so braced initializer lists can be used.
2016-12-23 22:26:27 -08:00
Peter Johnson
9c4c7c08bf Java HttpCamera: Make accessor functions public. 2016-12-23 22:26:27 -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
8c7338f2ba TCPAcceptor: Include port number in error messages. (#166) 2016-12-23 20:36:45 -06:00
Peter Johnson
459cc65b3f TCPAcceptor: Include port number in error messages. (#166) 2016-12-23 20:36:45 -06:00
Thad House
6844f05c3d Adds SetAllSolenoids function to CTRE PCM code (#419)
Closes #417.
2016-12-23 14:35:45 -06:00
Austin Shalit
8f67f2c24c Remove unused code and add pmd check (#395) 2016-12-23 13:20:13 -06:00
Thad House
cc246bb9ac Switches JNI to use new jni_util methods (#404)
* Uses WPIUtil string objects in JNI

* Switches JNI to use new jni_util classes
2016-12-23 13:13:17 -06:00
Peter Johnson
3d28275675 UsbCamera: Simplify the message passing implementation. 2016-12-23 10:58:11 -08:00
Sam Carlberg
bf9f0a9e6d Add vision pipeline API to make it easier to run OpenCV pipelines (#388) 2016-12-23 10:48:56 -06: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
9ffc09a11b Fix settings example if there's no "--" in arg list. 2016-12-22 22:50:07 -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
Austin Shalit
c3160bad44 Update SendableChooser to use HashMap (#394) 2016-12-22 15:56:23 -08:00
Thad House
94b8ac42ca Adds CPP version of vision pipeline (#399) 2016-12-21 23:58:42 -06:00
Thad House
a03e3d7eb9 Fixes HAL to build without all headers included in HAL.h (#418) 2016-12-21 23:55:31 -06:00
Jaci R
a42ec08d16 Fix RoboRIO Cross-Toolchain GCC Status (#405)
* Dedicated RoboRIO Toolchain, allow Toolchain Path to change

* Add cCompiler Tool to correctly discover RoboRIO GCC on Mac

* Add @333fred requests for GString and ToolChainPath

* Add Toolchain Path option to README
2016-12-21 19:56:28 -08:00
Thad House
fddb6cd9d8 Fixes SPI Accumulator averages (#415) 2016-12-21 20:17:53 -06: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
Thad House
841f016017 Fixes SerialHelper when used with OS serial ports. (#411)
Also makes the SerialHelper API public so it can be used externally.
2016-12-21 00:16:05 -06:00
Thad House
8e4afc95c7 Switches C++ strings to StringRef (#336) 2016-12-21 00:08:24 -06: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
Jaci R
94359709a1 Add new ARM Toolchain, add toolchainpath to README (#165) 2016-12-19 23:16:39 -06:00
Tyler Veness
8cec948699 Fix typos (#409) 2016-12-19 22:06:39 -06:00
Tyler Veness
31ae7c942c Fixed signatures of deleted assignment operators (#408)
While it technically doesn't matter what the return type of the assignment operator is since it's deleted, assignment operators should return a reference instead of a value.
2016-12-19 11:24:23 -08:00
Tyler Veness
d0900626da Removed format.py shim (#393)
Now that our formatter is a Python package (wpiformat), the format.py shim for invoking it is no longer necessary. styleguide#29 should be merged before this patch.
2016-12-18 19:46:20 -08:00
Peter Johnson
0ee4cadca0 CameraServer: Workaround LabVIEW dashboard OpenCV compatibility. (#406)
The current LabVIEW dashboard (Beta 4) requires the source type to be either
"usb:" or "ip:" and does not support "cv:".  To work around this, use a source
type of "usb:" for OpenCV sources as well.

Workaround for #407.
2016-12-18 13:36:44 -08:00
Peter Johnson
8501b7c9e2 CvSourceImpl::CreateProperty(): Use lock_guard instead of unique_lock. 2016-12-18 09:13:52 -08:00
Peter Johnson
0ce0855a6f Java: check for null and use new jni_util features. 2016-12-18 09:13:51 -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
bdaf60b2d6 Replace tabs with spaces in gradle files. 2016-12-18 09:05:03 -08:00
Peter Johnson
7c2f994a66 Refactor source IsConnected() and connected notification. 2016-12-18 09:05:03 -08:00