gpt4 book ai didi

android.graphics.YuvImage.compressToJpeg()方法的使用及代码示例

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

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

YuvImage.compressToJpeg介绍

暂无

代码示例

代码示例来源: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: 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: 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: FacePlusPlus/MegviiFacepp-Android-SDK

public static Bitmap decodeToBitMap(byte[] data, Camera _camera) {
  Camera.Size size = _camera.getParameters().getPreviewSize();
  try {
    YuvImage image = new YuvImage(data, ImageFormat.NV21, size.width, size.height, null);
    if (image != null) {
      ByteArrayOutputStream stream = new ByteArrayOutputStream();
      image.compressToJpeg(new Rect(0, 0, size.width, size.height), 80, stream);
      Bitmap bmp = BitmapFactory.decodeByteArray(stream.toByteArray(), 0, stream.size());
      stream.close();
      return bmp;
    }
  } catch (Exception ex) {
  }
  return null;
}

代码示例来源: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);
  }
}

代码示例来源: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 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: 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: FacePlusPlus/MegviiFacepp-Android-SDK

.getPreviewFormat(), width, height, null);
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
yuvImage.compressToJpeg(new Rect(0, 0, width, height), 80,
    byteArrayOutputStream);
byte[] jpegData = byteArrayOutputStream.toByteArray();

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

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

代码示例来源:origin: fanbaoying/FBYIDCardRecognition-Android

private void onRequestDetect(byte[] data) {
  // 相机已经关闭
  if (camera == null || data == null) {
    return;
  }
  YuvImage img = new YuvImage(data, ImageFormat.NV21, optSize.width, optSize.height, null);
  ByteArrayOutputStream os = null;
  try {
    os = new ByteArrayOutputStream(data.length);
    img.compressToJpeg(new Rect(0, 0, optSize.width, optSize.height), 80, os);
    byte[] jpeg = os.toByteArray();
    int status = detectCallback.onDetect(jpeg, getCameraRotation());
    if (status == 0) {
      clearPreviewCallback();
    }
  } catch (OutOfMemoryError e) {
    // 内存溢出则取消当次操作
  } finally {
    try {
      os.close();
    } catch (Throwable e) {
      e.printStackTrace();
    }
  }
}

代码示例来源:origin: 465857721/IDCardOCR_China

null);
baos = new ByteArrayOutputStream();
yuvimage.compressToJpeg(new Rect(0, 0, previewSize.width, previewSize.height), 100, baos);// 80--JPG图片的质量[0-100],100最高
rawImage = baos.toByteArray();

代码示例来源:origin: FacePlusPlus/MegviiFacepp-Android-SDK

.getPreviewFormat(), width, height, null);
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
yuvImage.compressToJpeg(new Rect(0, 0, width, height), 80,
    byteArrayOutputStream);

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

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);

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

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);

代码示例来源:origin: dalong982242260/SmallVideoRecording

@Override
      public void onPreviewFrame(byte[] data, Camera camera) {
        camera.setPreviewCallback(null);
        if (mCamera == null)
          return;
        Camera.Parameters parameters = camera.getParameters();
        int width = parameters.getPreviewSize().width;
        int height = parameters.getPreviewSize().height;

        YuvImage yuv = new YuvImage(data, parameters.getPreviewFormat(), width, height, null);
        ByteArrayOutputStream out = new ByteArrayOutputStream();
        yuv.compressToJpeg(new Rect(0, 0, width, height), 50, out);
        byte[] bytes = out.toByteArray();
        if (mRecordVideoInterface != null) {
          mRecordVideoInterface.onTakePhoto(bytes);
        }
        //设置这个可以达到预览的效果
//                mCamera.setPreviewCallback(this);
      }
    });

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

ByteArrayOutputStream tmpBuffer = new ByteArrayOutputStream();
image.compressToJpeg(new Rect(0, 0, image.getWidth(), image.getHeight()), 67, tmpBuffer);
this.frameBuffer = tmpBuffer.toByteArray();
this.frameID++;

代码示例来源:origin: SiKang123/ocrTest

if (image != null) {
  ByteArrayOutputStream stream = new ByteArrayOutputStream();
  image.compressToJpeg(new Rect(left, top, right, bottom), getQuality(size.height), stream);
  Bitmap bmp = BitmapFactory.decodeByteArray(stream.toByteArray(), 0, stream.size());

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

yuvImage.compressToJpeg(rect, 100, stream);

代码示例来源:origin: LLhon/Android-Video-Editor

YuvImage yuv = new YuvImage(firstFrame_data, parameters.getPreviewFormat(), width, height, null);
ByteArrayOutputStream out = new ByteArrayOutputStream();
yuv.compressToJpeg(new Rect(0, 0, width, height), 50, out);
byte[] bytes = out.toByteArray();
videoFirstFrame = BitmapFactory.decodeByteArray(bytes, 0, bytes.length);

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