gabul-dev / camera_camera Goto Github PK
View Code? Open in Web Editor NEWLicense: MIT License
License: MIT License
Because camera_camera >=1.0.27 depends on rxdart ^0.23.1 and app depends on rxdart ^0.24.0, camera_camera >=1.0.27 is forbidden.
it is possible to disable the button? I need only rear camera in some cases and only front in other... btw thank you very much for the plugin, it's very simple to add overlays to preview
Hello! Is it possible to photos sequentially through this package? Meaning take many photos without having to leave the camera interface?
Hi, congratulations on the plugin.
I saw that there are some seconds until the file image is returned in the onFile function and the button is still active, could you put an option to disable the button or put a spin while the image is being processed?
thanks
Is it possible to add a function like cropping an image inside a mask directly?
Thanks.
Is there any option to scan qr code ? Also if i can customize the imageMask property and give it box-border , decoration or an image of QR. etc
When taking a photo on iOs the image is wrongly roated. The created photo has the correct orientation.
await Navigator.push(
context,
MaterialPageRoute(
builder: (context) => Scaffold(
appBar: CoreAppBar('Foto aufnehmen'),
body: SafeArea(child: CameraCamera(onFile: (file) {
pickedFile = file;
Navigator.of(context).pop();
})))));
Process finished with exit code 1
Because camera_camera >=1.0.27 depends on rxdart ^0.23.1 and csf.map.v1 depends on rxdart ^0.24.0, camera_camera >=1.0.27 is forbidden.
So, because csf.map.v1 depends on camera_camera ^1.0.31, version solving failed.
pub get failed (1; So, because csf.map.v1 depends on camera_camera ^1.0.31, version solving failed.)
i update my dependency so... rxdart from 0.23 to 0.24.0 and camera from 1.0.27 to 1.0.31
but seems don't update... i tried to invalidate cache and restart and flutter clean.. error again...
Does this package support flash (torch) ?
E/CameraCaptureSession(11651): Session 0: Exception while stopping repeating:
E/CameraCaptureSession(11651): android.hardware.camera2.CameraAccessException: CAMERA_DISCONNECTED (2): checkPidStatus:1800: The camera device has been disconnected
E/CameraCaptureSession(11651): at android.hardware.camera2.CameraManager.throwAsPublicException(CameraManager.java:861)
E/CameraCaptureSession(11651): at android.hardware.camera2.impl.ICameraDeviceUserWrapper.cancelRequest(ICameraDeviceUserWrapper.java:95)
E/CameraCaptureSession(11651): at android.hardware.camera2.impl.CameraDeviceImpl.stopRepeating(CameraDeviceImpl.java:1134)
E/CameraCaptureSession(11651): at android.hardware.camera2.impl.CameraCaptureSessionImpl.close(CameraCaptureSessionImpl.java:526)
E/CameraCaptureSession(11651): at android.hardware.camera2.impl.CameraCaptureSessionImpl$2.onDisconnected(CameraCaptureSessionImpl.java:737)
E/CameraCaptureSession(11651): at android.hardware.camera2.impl.CameraDeviceImpl$7.run(CameraDeviceImpl.java:242)
E/CameraCaptureSession(11651): at android.os.Handler.handleCallback(Handler.java:873)
E/CameraCaptureSession(11651): at android.os.Handler.dispatchMessage(Handler.java:99)
E/CameraCaptureSession(11651): at android.os.Looper.loop(Looper.java:216)
E/CameraCaptureSession(11651): at android.app.ActivityThread.main(ActivityThread.java:7285)
E/CameraCaptureSession(11651): at java.lang.reflect.Method.invoke(Native Method)
E/CameraCaptureSession(11651): at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:494)
E/CameraCaptureSession(11651): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:975)
E/CameraCaptureSession(11651): Caused by: android.os.ServiceSpecificException: checkPidStatus:1800: The camera device has been disconnected (code 4)
E/CameraCaptureSession(11651): at android.os.Parcel.createException(Parcel.java:1980)
E/CameraCaptureSession(11651): at android.os.Parcel.readException(Parcel.java:1934)
E/CameraCaptureSession(11651): at android.os.Parcel.readException(Parcel.java:1884)
E/CameraCaptureSession(11651): at android.hardware.camera2.ICameraDeviceUser$Stub$Proxy.cancelRequest(ICameraDeviceUser.java:402)
E/CameraCaptureSession(11651): at android.hardware.camera2.impl.ICameraDeviceUserWrapper.cancelRequest(ICameraDeviceUserWrapper.java:93)
E/CameraCaptureSession(11651): ... 11 more
i have problem with device samsung 30s.
i have done with setCamera
setCamera(){
for (CameraDescription cameraDescription in widget.cameras){
if(cameraDescription.lensDirection == CameraLensDirection.front){
controller = CameraController(
cameraDescription,
ResolutionPreset.medium,
);
_initializeControllerFuture = controller.initialize();
}
}
}
@OverRide
void didChangeAppLifecycleState(AppLifecycleState state) {
if (state == AppLifecycleState.resumed) {
controller != null
? _initializeControllerFuture = controller.initialize()
: null; //on pause camera is disposed, so we need to call again "issue is only for android"
}
}
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 1.22.5, on macOS 11.0.1 20B29 darwin-x64, locale
en-ID)
[✓] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
[✓] Xcode - develop for iOS and macOS (Xcode 12.2)
[!] Android Studio (version 4.1)
✗ Flutter plugin not installed; this adds Flutter specific functionality.
✗ Dart plugin not installed; this adds Dart specific functionality.
please help!..
How to stream camera and preview Camera stream is you have any idea please tell me
When using a mode: CameraMode.normal, return this error but with mode: CameraMode.fullscreen works fine
Hello,
What do you think about developing a feature in this package besides opening the camera, taking photos and saving the photo on the device?
Or will it get out of the package goal?
Wait,
Thanks
Hi guys i add code for camera i see all ..windows for photo camera all.. but not button of photo..to get photo from camera and save file... how? help!
i insert this code :
DialogButton(
child : Icon(Icons.photo_camera,
color: Colors.white),
onPressed: () async {
val = await showDialog(
context: context,
builder: (context) => Camera(
mode: CameraMode.normal,
orientationEnablePhoto: CameraOrientation.landscape,
imageMask: CameraFocus.square(
color: Colors.black.withOpacity(0.5),
),
));
setState(() { });
},
Result is ... attach screenshoot..
the official camera plugin has update to version 0.6.4+5, but camera_camera depends on 0.5.7+4.
please update it. the latest camera plugin has many new features, like torch enable.
/C:/flutter/.pub-cache/hosted/pub.dartlang.org/native_device_orientation-0.3.0/lib/native_device_orientation.dart:99:17: Error: The method 'inheritFromWidgetOfExactType' isn't defined for the class 'BuildContext'.
Hi!
How to start flah camera through widget?
Just like animating the buttons / animate a container from portrait to landscape.
MediaQuery.of(context).viewInsets.bottom sometimes has calculation error
Estava dando uma testada aqui e não entendi direito uma coisa. O foco que pode ser colocado, retangular ou oval. Vai interferir no foco da camera em si? Ou ele serve mais pro usuario enquadrar um objeto ?
I was testing the focus funcionality and there is something I am curious about. The focus itself will change the real camera focus? Or this is just for the user to frame an object?
Is there any possibility to set image quality default to ResolutionPreset.max as well as will be modified from the constructor parameter like this.mode, this.orientationEnablePhoto, etc?
Using the latest version and it looks weird. it's stretched out.
I just stumbled upon this package and was wondering why I should use this package and not the one from flutter itself, which is also used here.
What are the advantages of this package.
An explanation would be good and probably also to write this in the README.
After taking a picture, there is still a screen to confirm or not, could I skip the part?
CameraException(captureTimeout, Picture capture request timed out)
Unhandled Exception: Invalid argument(s) (path): Must not be null
package:camera_camera/…/bloc/bloc_camera.dart:48
If one of the sets is for example only the front camera, then the camera change icon must be hidden
Could be nice to create null safety version
Camera plugin already support null safety version, I guess flutter_native_device_orientation does not so I created related issue:
rmtmckenzie/flutter_native_device_orientation#28
Seems unneeded for a Camera plugin no?
so user can switch between video and camera easily.
How can I do zoom in this plugin ?
Is there any way of doing zoom ?
The field _cameraController
should be nullable to prevent that dispose
is called before the controller has been initialized.
void startPreview(
ResolutionPreset resolutionPreset,
) async {
await _cameraController.dispose();
...
_cameraController = CameraCameraController(
...
);
Hello, is there some documentation on what properties/methods are supported? Thanks!
When using Camera(Mode: CameraMode.normal) An error will occur.
(CameraMode.fullscreen is right)
Another exception was thrown: NoSuchMethodError: The method 'call' was called on null.
Camera crashes when rotating device
Using this as an embedded widget in a screen where user points around takes a picture and at the bottom is a submit button.
If anything causes the widget to get rebuilt the following error gets spit out and the app crashes.
E/com.app(28274): [SurfaceTexture-0-28274-3] setDefaultBufferSize: SurfaceTexture is abandoned!
E/BufferQueueProducer(28274): query: BufferQueue has been abandoned
E/Legacy-CameraDevice-JNI(28274): LegacyCameraDevice_nativeDetectSurfaceDimens: Error while querying surface width No such device (-19).
D/AndroidRuntime(28274): Shutting down VM
E/AndroidRuntime(28274): FATAL EXCEPTION: main
E/AndroidRuntime(28274): Process: com.engage, PID: 28274
E/AndroidRuntime(28274): java.lang.IllegalArgumentException: Surface was abandoned
E/AndroidRuntime(28274): at android.hardware.camera2.utils.SurfaceUtils.getSurfaceSize(SurfaceUtils.java:86)
E/AndroidRuntime(28274): at android.hardware.camera2.params.OutputConfiguration.(OutputConfiguration.java:261)
E/AndroidRuntime(28274): at android.hardware.camera2.params.OutputConfiguration.(OutputConfiguration.java:146)
E/AndroidRuntime(28274): at io.flutter.plugins.camera.Camera.createCaptureSession(Camera.java:339)
E/AndroidRuntime(28274): at io.flutter.plugins.camera.Camera.createCaptureSession(Camera.java:281)
E/AndroidRuntime(28274): at io.flutter.plugins.camera.Camera.startPreview(Camera.java:1094)
E/AndroidRuntime(28274): at io.flutter.plugins.camera.Camera$1.onOpened(Camera.java:224)
E/AndroidRuntime(28274): at android.hardware.camera2.impl.CameraDeviceImpl$1.run(CameraDeviceImpl.java:151)
E/AndroidRuntime(28274): at android.os.Handler.handleCallback(Handler.java:938)
E/AndroidRuntime(28274): at android.os.Handler.dispatchMessage(Handler.java:99)
E/AndroidRuntime(28274): at android.os.Looper.loop(Looper.java:223)
E/AndroidRuntime(28274): at android.app.ActivityThread.main(ActivityThread.java:7660)
E/AndroidRuntime(28274): at java.lang.reflect.Method.invoke(Native Method)
E/AndroidRuntime(28274): at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
E/AndroidRuntime(28274): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947)
E/AndroidRuntime(28274): Caused by: android.hardware.camera2.legacy.LegacyExceptionUtils$BufferQueueAbandonedException
E/AndroidRuntime(28274): at android.hardware.camera2.legacy.LegacyExceptionUtils.throwOnError(LegacyExceptionUtils.java:73)
E/AndroidRuntime(28274): at android.hardware.camera2.legacy.LegacyCameraDevice.getSurfaceSize(LegacyCameraDevice.java:640)
E/AndroidRuntime(28274): at android.hardware.camera2.utils.SurfaceUtils.getSurfaceSize(SurfaceUtils.java:84)
E/AndroidRuntime(28274): ... 14 more
Reported this issue (at least on ios real devices)
Session 0: Exception while stopping repeating:
E/CameraCaptureSession( 7218): android.hardware.camera2.CameraAccessException: CAMERA_ERROR (3): The camera device has encountered a serious error
E/CameraCaptureSession( 7218): at android.hardware.camera2.impl.CameraDeviceImpl.checkIfCameraClosedOrInError(CameraDeviceImpl.java:2231)
E/CameraCaptureSession( 7218): at android.hardware.camera2.impl.CameraDeviceImpl.stopRepeating(CameraDeviceImpl.java:1241)
E/CameraCaptureSession( 7218): at android.hardware.camera2.impl.CameraCaptureSessionImpl.close(CameraCaptureSessionImpl.java:578)
E/CameraCaptureSession( 7218): at io.flutter.plugins.camera.Camera.closeCaptureSession(Camera.java:480)
E/CameraCaptureSession( 7218): at io.flutter.plugins.camera.Camera.close(Camera.java:486)
E/CameraCaptureSession( 7218): at io.flutter.plugins.camera.Camera$2.onError(Camera.java:187)
E/CameraCaptureSession( 7218): at android.hardware.camera2.impl.CameraDeviceImpl.notifyError(CameraDeviceImpl.java:1629)
E/CameraCaptureSession( 7218): at android.hardware.camera2.impl.CameraDeviceImpl.lambda$oDs27OTfKFfK18rUW2nQxxkPdV0(Unknown Source:0)
E/CameraCaptureSession( 7218): at android.hardware.camera2.impl.-$$Lambda$CameraDeviceImpl$oDs27OTfKFfK18rUW2nQxxkPdV0.accept(Unknown Source:8)
While opening and closing the camera many times in the same day I'm getting the following error:
CameraException(error, register failed, the sensor listeners size has exceeded the maximum limit 128)
Stack trace:
#0 CameraController.initialize (package:camera/camera.dart:289)
#1 Subject.sink (package:rxdart/src/subjects/subject.dart)
#2 _CameraState.initState.. (package:camera_camera/page/camera.dart:57)
Device parameters:
brand: samsung
device: a31
hardware: mt6768
isPhysicalDevice: true
manufacturer: samsung
model: SM-A315G
versionCodename: REL
versionRelease: 10
versionSdk: 29
versionSecurityPatch: 2020-07-01
as the title says, how change mask based on camera direction? I want to use circle mask on front camera and rectangle on back camera
i am guessing the rotate icon on the right is to switch between front and back camera, right?
it does not work in my device, huawei mate 20 pro. it does not switch.
This is the output of my smartphone camera descriptions returned
CameraDescription(0, CameraLensDirection.back, 90)
CameraDescription(1, CameraLensDirection.front, 270)
CameraDescription(2, CameraLensDirection.back, 90)
CameraDescription(3, CameraLensDirection.back, 90)
CameraDescription(4, CameraLensDirection.back, 90)
Not sure what the problem is because if index 1 is used, it should be correct since it is the front camera but somehow, it does not switch.
it does work in the emulator (shows various colored thick pixels if switched to front cam).
CameraDescription(0, CameraLensDirection.back, 90)
CameraDescription(1, CameraLensDirection.front, 90)
In your code bloc_camera.dart
void changeCamera() {
var list = cameras.value;
if (list.length == 2)
....
This should be changed to if (list.length > 1) since in my case, i have 5 cameras (4 back and 1 front) so it will never switch to front cam.
If I am not mistaken, there are already front cameras that are more than 1. So perhaps loop through the camera description list and get the first instance found that is either front or back.
The culprit is SystemChrome.setEnabledSystemUIOverlays([]). so perhaps some way to override this and ignore somewhat?
So currently, the phone os' app bar gets hidden when the camera is shown from within the app. when the camera is closed by the user, the app goes back to the front of the screen.
however, since the phone os appbar was hidden and will not be shown, the app's height gets resized. which does not look good.
How to make the circle overlay oval in the focus widget? And its possible to make the circle pointed? Im trying to make frame to take face pictures.
The flutter camera plugin that is used here has the option to control the camera resolution. Currently, the available options are as following:
/// 352x288 on iOS, 240p (320x240) on Android
low,
/// 480p (640x480 on iOS, 720x480 on Android)
medium,
/// 720p (1280x720)
high,
/// 1080p (1920x1080)
veryHigh,
/// 2160p (3840x2160)
ultraHigh,
/// The highest resolution available.
max,
This feature can be useful for many applications that will use this plugin.
I see:
CameraCamera CameraCamera({Key? key, ResolutionPreset resolutionPreset = ResolutionPreset.ultraHigh, required void Function(File) onFile, CameraSide cameraSide = CameraSide.all, List<FlashMode> flashModes = FlashMode.values, bool enableZoom = true})
hi how set videoBitRate and audioBitRate or Video FrameRate for camera and record video??
I noticed that the camera image preview is darker than other camera plugins. Is there any way to increase the preview brightness?
When the camera is opened, the console runs crazy with a lot of log messages (below). How do I disable it?
I/Camera (26983): handleMessage: 65536
D/Camera (26983): CAMERA_MSG_GN_DATA = 1,0
I/Camera (26983): handleMessage: 65536
D/Camera (26983): CAMERA_MSG_GN_DATA = 1,0
I/Camera (26983): handleMessage: 65536
D/Camera (26983): CAMERA_MSG_GN_DATA = 1,0
I/Camera (26983): handleMessage: 65536
D/Camera (26983): CAMERA_MSG_GN_DATA = 1,0
I/Camera (26983): handleMessage: 65536
D/Camera (26983): CAMERA_MSG_GN_DATA = 1,0
I/Camera (26983): handleMessage: 65536
D/Camera (26983): CAMERA_MSG_GN_DATA = 2,0
I/CameraDeviceState(26983): Legacy camera service transitioning to state CAPTURING
D/Surface (26983): Surface::setBuffersUserDimensions(this=0x7713ec9000,w=1280,h=720)
I/Camera (26983): handleMessage: 65536
D/Camera (26983): CAMERA_MSG_GN_DATA = 1,0
D/Surface (26983): Surface::setBuffersUserDimensions(this=0x7713ec9000,w=1280,h=720)
I/BufferQueueProducer(26983): [SurfaceTexture-0-26983-4](this:0x772b2eb000,id:8,api:1,p:26983,c:26983) queueBuffer: slot 0 is dropped, handle=0x7721d62060
I/Camera (26983): handleMessage: 65536
D/Camera (26983): CAMERA_MSG_GN_DATA = 1,0
I/Camera (26983): handleMessage: 2048
D/Surface (26983): Surface::setBuffersUserDimensions(this=0x7713ec9000,w=1280,h=720)
I/BufferQueueProducer(26983): [SurfaceTexture-0-26983-4](this:0x772b2eb000,id:8,api:1,p:26983,c:26983) queueBuffer: slot 1 is dropped, handle=0x7721d62220
I/Camera (26983): handleMessage: 65536
D/Camera (26983): CAMERA_MSG_GN_DATA = 1,0
D/Surface (26983): Surface::setBuffersUserDimensions(this=0x7713ec9000,w=1280,h=720)
I/BufferQueueProducer(26983): [SurfaceTexture-0-26983-4](this:0x772b2eb000,id:8,api:1,p:26983,c:26983) queueBuffer: slot 0 is dropped, handle=0x7721d62060
I/Camera (26983): handleMessage: 65536
D/Camera (26983): CAMERA_MSG_GN_DATA = 1,0
D/Surface (26983): Surface::setBuffersUserDimensions(this=0x7713ec9000,w=1280,h=720)
I/BufferQueueProducer(26983): [SurfaceTexture-0-26983-4](this:0x772b2eb000,id:8,api:1,p:26983,c:26983) queueBuffer: slot 1 is dropped, handle=0x7721d62220
I/Camera (26983): handleMessage: 65536
D/Camera (26983): CAMERA_MSG_GN_DATA = 1,0
D/Surface (26983): Surface::setBuffersUserDimensions(this=0x7713ec9000,w=1280,h=720)
I/BufferQueueProducer(26983): [SurfaceTexture-0-26983-4](this:0x772b2eb000,id:8,api:1,p:26983,c:26983) queueBuffer: slot 0 is dropped, handle=0x7721d62060
I/Camera (26983): handleMessage: 65536
D/Camera (26983): CAMERA_MSG_GN_DATA = 1,0
D/Surface (26983): Surface::setBuffersUserDimensions(this=0x7713ec9000,w=1280,h=720)
I/BufferQueueProducer(26983): [SurfaceTexture-0-26983-4](this:0x772b2eb000,id:8,api:1,p:26983,c:26983) queueBuffer: slot 1 is dropped, handle=0x7721d62220
I/Camera (26983): handleMessage: 65536
D/Camera (26983): CAMERA_MSG_GN_DATA = 1,0
D/Surface (26983): Surface::setBuffersUserDimensions(this=0x7713ec9000,w=1280,h=720)
I/BufferQueueProducer(26983): [SurfaceTexture-0-26983-4](this:0x772b2eb000,id:8,api:1,p:26983,c:26983) queueBuffer: slot 0 is dropped, handle=0x7721d62060
I/Camera (26983): handleMessage: 65536
D/Camera (26983): CAMERA_MSG_GN_DATA = 1,0
D/Surface (26983): Surface::setBuffersUserDimensions(this=0x7713ec9000,w=1280,h=720)
I/BufferQueueProducer(26983): [SurfaceTexture-0-26983-4](this:0x772b2eb000,id:8,api:1,p:26983,c:26983) queueBuffer: slot 1 is dropped, handle=0x7721d62220
I/Camera (26983): handleMessage: 65536
D/Camera (26983): CAMERA_MSG_GN_DATA = 1,0
D/Surface (26983): Surface::setBuffersUserDimensions(this=0x7713ec9000,w=1280,h=720)
I/BufferQueueProducer(26983): [SurfaceTexture-0-26983-4](this:0x772b2eb000,id:8,api:1,p:26983,c:26983) queueBuffer: slot 0 is dropped, handle=0x7721d62060
I/GLConsumer(26983): [SurfaceTexture-0-26983-4] attachToContext
I/Camera (26983): handleMessage: 65536
D/Camera (26983): CAMERA_MSG_GN_DATA = 1,0
D/Surface (26983): Surface::setBuffersUserDimensions(this=0x7713ec9000,w=1280,h=720)
I/Camera (26983): handleMessage: 65536
D/Camera (26983): CAMERA_MSG_GN_DATA = 1,0
D/Surface (26983): Surface::setBuffersUserDimensions(this=0x7713ec9000,w=1280,h=720)
I/Camera (26983): handleMessage: 65536
D/Camera (26983): CAMERA_MSG_GN_DATA = 1,0
D/Surface (26983): Surface::setBuffersUserDimensions(this=0x7713ec9000,w=1280,h=720)
I/Camera (26983): handleMessage: 65536
D/Camera (26983): CAMERA_MSG_GN_DATA = 1,0
D/Surface (26983): Surface::setBuffersUserDimensions(this=0x7713ec9000,w=1280,h=720)
I/Camera (26983): handleMessage: 65536
D/Camera (26983): CAMERA_MSG_GN_DATA = 1,0
D/Surface (26983): Surface::setBuffersUserDimensions(this=0x7713ec9000,w=1280,h=720)
I/Camera (26983): handleMessage: 65536
D/Camera (26983): CAMERA_MSG_GN_DATA = 1,0
D/Surface (26983): Surface::setBuffersUserDimensions(this=0x7713ec9000,w=1280,h=720)
I/Camera (26983): handleMessage: 65536
D/Camera (26983): CAMERA_MSG_GN_DATA = 1,0
D/Surface (26983): Surface::setBuffersUserDimensions(this=0x7713ec9000,w=1280,h=720)
I/Camera (26983): handleMessage: 65536
On the newest Flutter version, one of your project's depencies is breaking the current build.
The change is: "Breaking change to support the fact that AppLifecycleState.suspended has changed to AppLifecycleState.detached."
The alteration is on native_device_orientation.
Can you fix that?
there is no more mode property in CameraCamera()
what's the new one for this?
i wish to use mode for full screen and normal
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.