java 的项目,需要用一个USB相机拍照,接收图片,可以用DirectionShow SDKS实现吗?或者有什么其他更简单的方式吗?
1条回答 默认 最新
你知我知皆知 2024-08-07 06:55关注以下回答参考 皆我百晓生、券券喵儿 等免费微信小程序相关内容作答,并由本人整理回复。
是的,你可以使用DirectionShow SDK来拍摄和接收图像。以下是一个简单的示例:
import android.hardware.Camera; import android.util.Log; public class MainActivity extends AppCompatActivity { private static final String TAG = "MainActivity"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // 初始化摄像头 Camera camera = Camera.open(); try { // 拍照 byte[] imageData = new byte[1024]; int bytesAvailable = camera.getOutputSize(); camera.setPreviewDisplay(findViewById(android.R.id.content)); camera.startPreview(); camera.setParameters(new Camera.Parameters()); camera.setPictureCallback(new Camera.PictureCallback() { @Override public void onPictureTaken(byte[] data, Camera camera) { Log.d(TAG, "onPictureTaken: "); for (int i = 0; i < imageData.length; i++) { imageData[i] += data[i]; } } }); Thread.sleep(5000); // 等待5秒 camera.stopPreview(); } catch (Exception e) { e.printStackTrace(); } // 释放资源 camera.release(); } }这个例子中,我们首先初始化了一个摄像头对象,然后开始预览模式。当用户按下快门按钮时,会触发
onPictureTaken()方法,并将图像数据存储在imageData数组中。注意:这只是一个基本的例子,实际使用时可能需要处理更多的错误情况,例如网络问题、设备不支持等。
解决 无用评论 打赏 举报