gpt4 book ai didi

android.graphics.YuvImage类的使用及代码示例

转载 作者:知者 更新时间:2024-03-16 18:46:40 26 4
gpt4 key购买 nike

本文整理了Java中android.graphics.YuvImage类的一些代码示例,展示了YuvImage类的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。YuvImage类的具体详情如下:
包路径:android.graphics.YuvImage
类名称:YuvImage

YuvImage介绍

暂无

代码示例

代码示例来源:origin: journeyapps/zxing-android-embedded

private Bitmap getBitmap(Rect cropRect, int scaleFactor) {
  if(isRotated()) {
    //noinspection SuspiciousNameCombination
    cropRect = new Rect(cropRect.top, cropRect.left, cropRect.bottom, cropRect.right);
  }
  // TODO: there should be a way to do this without JPEG compression / decompression cycle.
  YuvImage img = new YuvImage(data, imageFormat, dataWidth, dataHeight, null);
  ByteArrayOutputStream buffer = new ByteArrayOutputStream();
  img.compressToJpeg(cropRect, 90, buffer);
  byte[] jpegData = buffer.toByteArray();
  BitmapFactory.Options options = new BitmapFactory.Options();
  options.inSampleSize = scaleFactor;
  Bitmap bitmap = BitmapFactory.decodeByteArray(jpegData, 0, jpegData.length, options);
  // Rotate if required
  if (rotation != 0) {
    Matrix imageMatrix = new Matrix();
    imageMatrix.postRotate(rotation);
    bitmap = Bitmap.createBitmap(bitmap, 0, 0, bitmap.getWidth(), bitmap.getHeight(), imageMatrix, false);
  }
  return bitmap;
}

代码示例来源:origin: square/assertj-android

public YuvImageAssert hasHeight(int height) {
 isNotNull();
 int actualHeight = actual.getHeight();
 assertThat(actualHeight) //
   .overridingErrorMessage("Expected height <%s> but was <%s>.", height, actualHeight) //
   .isEqualTo(height);
 return this;
}

代码示例来源:origin: square/assertj-android

public YuvImageAssert hasWidth(int width) {
 isNotNull();
 int actualWidth = actual.getWidth();
 assertThat(actualWidth) //
   .overridingErrorMessage("Expected width <%s> but was <%s>.", width, actualWidth) //
   .isEqualTo(width);
 return this;
}

代码示例来源:origin: Lucklyric/android-camera-socket-stream

/**
 * frame call back function
 * @param data
 * @param camera
 */
public void onPreviewFrame(byte[] data,Camera camera){
  try{
    //convert YuvImage(NV21) to JPEG Image data
    YuvImage yuvimage=new YuvImage(data,ImageFormat.NV21,this.width,this.height,null);
    System.out.println("WidthandHeight"+yuvimage.getHeight()+"::"+yuvimage.getWidth());
    ByteArrayOutputStream baos=new ByteArrayOutputStream();
    yuvimage.compressToJpeg(new Rect(0,0,this.width,this.height),100,baos);
    mFrameBuffer = baos;
  }catch(Exception e){
    Log.d("parse","errpr");
  }
}

代码示例来源:origin: Affectiva/affdexme-android

/**
 * Note: This conversion procedure is sloppy and may result in JPEG compression artifacts
 *
 * @param yuvImage - The YuvImage to convert
 * @return - The converted Bitmap
 */
public static Bitmap convertYuvImageToBitmap(@NonNull final YuvImage yuvImage) {
  ByteArrayOutputStream out = new ByteArrayOutputStream();
  yuvImage.compressToJpeg(new Rect(0, 0, yuvImage.getWidth(), yuvImage.getHeight()), 100, out);
  byte[] imageBytes = out.toByteArray();
  try {
    out.close();
  } catch (IOException e) {
    Log.e(LOG_TAG, "Exception while closing output stream", e);
  }
  return BitmapFactory.decodeByteArray(imageBytes, 0, imageBytes.length);
}

代码示例来源:origin: twilio/video-quickstart-android

private YuvImage fastI420ToYuvImage(ByteBuffer[] yuvPlanes,
                  int[] yuvStrides,
                  int width,
                  int height) {
  byte[] bytes = new byte[width * height * 3 / 2];
  int i = 0;
  for (int row = 0 ; row < height ; row++) {
    for (int col = 0 ; col < width ; col++) {
      bytes[i++] = yuvPlanes[0].get(col + row * yuvStrides[0]);
    }
  }
  for (int row = 0 ; row < height / 2 ; row++) {
    for (int col = 0 ; col < width / 2; col++) {
      bytes[i++] = yuvPlanes[2].get(col + row * yuvStrides[2]);
      bytes[i++] = yuvPlanes[1].get(col + row * yuvStrides[1]);
    }
  }
  return new YuvImage(bytes, NV21, width, height, null);
}

代码示例来源:origin: square/assertj-android

public YuvImageAssert hasYuvFormat(int format) {
  isNotNull();
  int actualFormat = actual.getYuvFormat();
  assertThat(actualFormat) //
    .overridingErrorMessage("Expected YUV format <%s> but was <%s>.", format, actualFormat) //
    .isEqualTo(format);
  return this;
 }
}

代码示例来源:origin: Car-eye-team/Car-eye-device

YuvImage image = new YuvImage(data,
    ImageFormat.NV21, width, height,
    null);                            
image.compressToJpeg(
    new Rect(0, 0, image.getWidth(), image.getHeight()),
    90, filecon);   // 将NV21格式图片,以质量70压缩成Jpeg,并得到JPEG数据流
filecon.close();

代码示例来源:origin: twilio/video-quickstart-android

private Bitmap captureBitmapFromYuvFrame(I420Frame i420Frame) {
  YuvImage yuvImage = i420ToYuvImage(i420Frame.yuvPlanes,
      i420Frame.yuvStrides,
      i420Frame.width,
      i420Frame.height);
  ByteArrayOutputStream stream = new ByteArrayOutputStream();
  Rect rect = new Rect(0, 0, yuvImage.getWidth(), yuvImage.getHeight());
  // Compress YuvImage to jpeg
  yuvImage.compressToJpeg(rect, 100, stream);
  // Convert jpeg to Bitmap
  byte[] imageBytes = stream.toByteArray();
  Bitmap bitmap = BitmapFactory.decodeByteArray(imageBytes, 0, imageBytes.length);
  Matrix matrix = new Matrix();
  // Apply any needed rotation
  matrix.postRotate(i420Frame.rotationDegree);
  bitmap = Bitmap.createBitmap(bitmap, 0, 0, bitmap.getWidth(), bitmap.getHeight(), matrix,
      true);
  return bitmap;
}

代码示例来源:origin: Affectiva/affdexme-android

public static Bitmap getBitmapFromYuvFrame(@NonNull final Frame frame) {
  byte[] pixels = ((Frame.ByteArrayFrame) frame).getByteArray();
  YuvImage yuvImage = new YuvImage(pixels, ImageFormat.NV21, frame.getWidth(), frame.getHeight(), null);
  return convertYuvImageToBitmap(yuvImage);
}

代码示例来源:origin: com.squareup.assertj/assertj-android

public YuvImageAssert hasYuvFormat(int format) {
  isNotNull();
  int actualFormat = actual.getYuvFormat();
  assertThat(actualFormat) //
    .overridingErrorMessage("Expected YUV format <%s> but was <%s>.", format, actualFormat) //
    .isEqualTo(format);
  return this;
 }
}

代码示例来源:origin: EasyDSS/EasyCamera

private void yuvToJpeg(byte[] data, int width, int height, int quality, String path) throws IOException {
  YuvImage yuvimage = new YuvImage(data, ImageFormat.NV21, width, height, null);
  FileOutputStream fos = null;
  try {
    fos = new FileOutputStream(path);
    yuvimage.compressToJpeg(new Rect(0, 0, width, height), quality, fos);
  } finally {
    if (fos != null) {
      fos.close();
    }
  }
}

代码示例来源:origin: cmusatyalab/gabriel

synchronized (frameLock) {
  Size cameraImageSize = parameters.getPreviewSize();
  YuvImage image = new YuvImage(frame, parameters.getPreviewFormat(), cameraImageSize.width,
      cameraImageSize.height, null);
  ByteArrayOutputStream tmpBuffer = new ByteArrayOutputStream();
  image.compressToJpeg(new Rect(0, 0, image.getWidth(), image.getHeight()), 67, tmpBuffer);
  this.frameBuffer = tmpBuffer.toByteArray();
  this.frameID++;

代码示例来源:origin: twilio/video-quickstart-android

Rect rect = new Rect(0, 0, yuvImage.getWidth(), yuvImage.getHeight());
yuvImage.compressToJpeg(rect, 100, stream);

代码示例来源:origin: twilio/video-quickstart-android

return new YuvImage(bytes, NV21, width, height, null);

代码示例来源:origin: com.squareup.assertj/assertj-android

public YuvImageAssert hasHeight(int height) {
 isNotNull();
 int actualHeight = actual.getHeight();
 assertThat(actualHeight) //
   .overridingErrorMessage("Expected height <%s> but was <%s>.", height, actualHeight) //
   .isEqualTo(height);
 return this;
}

代码示例来源:origin: com.squareup.assertj/assertj-android

public YuvImageAssert hasWidth(int width) {
 isNotNull();
 int actualWidth = actual.getWidth();
 assertThat(actualWidth) //
   .overridingErrorMessage("Expected width <%s> but was <%s>.", width, actualWidth) //
   .isEqualTo(width);
 return this;
}

代码示例来源:origin: WangShuo1143368701/VideoView

public Bitmap decodeToBitMap(byte[] data) {
  Bitmap bmp = null;
  try {
    YuvImage image = new YuvImage(data, ImageFormat.NV21, width, width, null);
    if (image != null) {
      Log.d("Fuck", "image != null");
      ByteArrayOutputStream stream = new ByteArrayOutputStream();
      image.compressToJpeg(new Rect(0, 0, width, width), 80, stream);
      bmp = BitmapFactory.decodeByteArray(stream.toByteArray(), 0, stream.size());
      stream.close();
    }
  } catch (Exception ex) {
    Log.e("Fuck", "Error:" + ex.getMessage());
  }
  return bmp;
}

代码示例来源:origin: tony-Shx/Swface

fos = new FileOutputStream(f);
if (data.length < 35000) {
  YuvImage image = new YuvImage(nv21, ImageFormat.NV21, PREVIEW_WIDTH, PREVIEW_HEIGHT, null);   //将NV21 data保存成YuvImage
  image.compressToJpeg(
      new Rect(0, 0, image.getWidth(), image.getHeight()),
      100, fos);
  Log.i(TAG, "onPictureTaken_data.length<20000: " + data.length);

代码示例来源:origin: zhantong/Android-VideoToImages

private void compressToJpeg(String fileName, Image image) {
    FileOutputStream outStream;
    try {
      outStream = new FileOutputStream(fileName);
    } catch (IOException ioe) {
      throw new RuntimeException("Unable to create output file " + fileName, ioe);
    }
    Rect rect = image.getCropRect();
    YuvImage yuvImage = new YuvImage(getDataFromImage(image, COLOR_FormatNV21), ImageFormat.NV21, rect.width(), rect.height(), null);
    yuvImage.compressToJpeg(rect, 100, outStream);
  }
}

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com