VideoPusher.smali
.class public Lcom/alivc/component/capture/VideoPusher;
.super Ljava/lang/Object;
.source "VideoPusher.java"
# interfaces
.implements Landroid/hardware/Camera$ErrorCallback;
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/alivc/component/capture/VideoPusher$VideoSourceTextureListener;,
Lcom/alivc/component/capture/VideoPusher$VideoSourceListener;
}
.end annotation
# static fields
.field private static final SCREEN_LANDSCAPE_LEFT:I = 0x5a
.field private static final SCREEN_LANDSCAPE_RIGHT:I = 0x10e
.field private static final SCREEN_PORTRAIT:I = 0x0
.field private static final TAG:Ljava/lang/String; = "VideoPusher"
.field private static buffer:[B
.field private static buffer1:[B
.field private static buffer2:[B
.field private static sSupportedFormat:Ljava/util/List;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/List<",
"Ljava/lang/Integer;",
">;"
}
.end annotation
.end field
.field private static sSupportedResolutionMap:Ljava/util/Map;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/Map<",
"Ljava/lang/Integer;",
"Ljava/util/List<",
"Landroid/hardware/Camera$Size;",
">;>;"
}
.end annotation
.end field
.field private static supportMaxWH:I
# instance fields
.field private final ACCEL_DELTAXYZ_DIFF:F
.field private final ACCEL_DELTA_DIFF:F
.field private final INITIATE_VALUE:F
.field private final MAG_DELTA_DIFF:F
.field private final TIME_MILLISECOND:I
.field private mAccelSensor:Landroid/hardware/Sensor;
.field private mActivityCallbacks:Landroid/app/Application$ActivityLifecycleCallbacks;
.field private mAutoFocus:Z
.field private mAutoFocusing:Z
.field private mBelowMinFpsNumberTimes:I
.field private mCamera:Landroid/hardware/Camera;
.field private mCameraDisConnected:Z
.field private mContext:Landroid/content/Context;
.field private mCurrentFps:I
.field private mCustomRotation:I
.field private mDataOrientation:I
.field private mDestHeight:I
.field private mDestWidth:I
.field private mFlashOn:Z
.field private mLastCaptureTime:J
.field private mLastFpsCountTime:J
.field private mLastFpsCounter:I
.field private mLastXAccel:F
.field private mLastXMag:F
.field private mLastYAccel:F
.field private mLastYMag:F
.field private mLastZAccel:F
.field private mLastZMag:F
.field private mMagneticSensor:Landroid/hardware/Sensor;
.field private mOnFrameAvailableListener:Landroid/graphics/SurfaceTexture$OnFrameAvailableListener;
.field private mOrientation:I
.field private mParam:Lcom/alivc/component/capture/VideoParam;
.field private mPause:Z
.field private mPreviewCallback:Landroid/hardware/Camera$PreviewCallback;
.field private mPreviewRunning:Z
.field private mScreen:I
.field private mSensorEventListener:Landroid/hardware/SensorEventListener;
.field private mSensorFocus:Z
.field private mSensorManager:Landroid/hardware/SensorManager;
.field private mSurfaceCbMode:Z
.field private mSurfaceTexture:Landroid/graphics/SurfaceTexture;
.field private mSurfaceTextureId:I
.field private mSwitchCamera:Z
.field private mTimeDelta:J
.field private mVideoSourceListener:Lcom/alivc/component/capture/VideoPusher$VideoSourceListener;
.field private mVideoSourceTextureListener:Lcom/alivc/component/capture/VideoPusher$VideoSourceTextureListener;
# direct methods
.method static constructor <clinit>()V
.registers 1
.line 44
const/4 v0, 0x0
sput-object v0, Lcom/alivc/component/capture/VideoPusher;->buffer:[B
.line 45
sput-object v0, Lcom/alivc/component/capture/VideoPusher;->buffer1:[B
.line 46
sput-object v0, Lcom/alivc/component/capture/VideoPusher;->buffer2:[B
.line 47
const/4 v0, 0x0
sput v0, Lcom/alivc/component/capture/VideoPusher;->supportMaxWH:I
.line 92
new-instance v0, Ljava/util/HashMap;
invoke-direct {v0}, Ljava/util/HashMap;-><init>()V
sput-object v0, Lcom/alivc/component/capture/VideoPusher;->sSupportedResolutionMap:Ljava/util/Map;
.line 93
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
sput-object v0, Lcom/alivc/component/capture/VideoPusher;->sSupportedFormat:Ljava/util/List;
return-void
.end method
.method public constructor <init>()V
.registers 6
.line 140
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 35
const/16 v0, 0x3e8
iput v0, p0, Lcom/alivc/component/capture/VideoPusher;->TIME_MILLISECOND:I
.line 36
const/high16 v0, -0x40800000 # -1.0f
iput v0, p0, Lcom/alivc/component/capture/VideoPusher;->INITIATE_VALUE:F
.line 37
const/high16 v1, 0x40a00000 # 5.0f
iput v1, p0, Lcom/alivc/component/capture/VideoPusher;->MAG_DELTA_DIFF:F
.line 38
const v1, 0x3f19999a # 0.6f
iput v1, p0, Lcom/alivc/component/capture/VideoPusher;->ACCEL_DELTA_DIFF:F
.line 39
const v1, 0x3fb33333 # 1.4f
iput v1, p0, Lcom/alivc/component/capture/VideoPusher;->ACCEL_DELTAXYZ_DIFF:F
.line 56
const/4 v1, 0x0
iput-boolean v1, p0, Lcom/alivc/component/capture/VideoPusher;->mPause:Z
.line 57
const/4 v2, 0x0
iput-object v2, p0, Lcom/alivc/component/capture/VideoPusher;->mVideoSourceListener:Lcom/alivc/component/capture/VideoPusher$VideoSourceListener;
.line 58
iput-object v2, p0, Lcom/alivc/component/capture/VideoPusher;->mVideoSourceTextureListener:Lcom/alivc/component/capture/VideoPusher$VideoSourceTextureListener;
.line 59
iput-boolean v1, p0, Lcom/alivc/component/capture/VideoPusher;->mSwitchCamera:Z
.line 60
const-wide/16 v3, 0x0
iput-wide v3, p0, Lcom/alivc/component/capture/VideoPusher;->mLastCaptureTime:J
.line 61
iput-wide v3, p0, Lcom/alivc/component/capture/VideoPusher;->mLastFpsCountTime:J
.line 62
iput v1, p0, Lcom/alivc/component/capture/VideoPusher;->mLastFpsCounter:I
.line 63
iput v1, p0, Lcom/alivc/component/capture/VideoPusher;->mBelowMinFpsNumberTimes:I
.line 64
iput v1, p0, Lcom/alivc/component/capture/VideoPusher;->mCurrentFps:I
.line 65
iput-wide v3, p0, Lcom/alivc/component/capture/VideoPusher;->mTimeDelta:J
.line 67
iput-boolean v1, p0, Lcom/alivc/component/capture/VideoPusher;->mSurfaceCbMode:Z
.line 68
const/4 v3, -0x1
iput v3, p0, Lcom/alivc/component/capture/VideoPusher;->mSurfaceTextureId:I
.line 70
iput-boolean v1, p0, Lcom/alivc/component/capture/VideoPusher;->mFlashOn:Z
.line 71
iput-boolean v1, p0, Lcom/alivc/component/capture/VideoPusher;->mAutoFocus:Z
.line 72
iput-boolean v1, p0, Lcom/alivc/component/capture/VideoPusher;->mAutoFocusing:Z
.line 74
iput-object v2, p0, Lcom/alivc/component/capture/VideoPusher;->mContext:Landroid/content/Context;
.line 75
iput-object v2, p0, Lcom/alivc/component/capture/VideoPusher;->mSurfaceTexture:Landroid/graphics/SurfaceTexture;
.line 77
iput-object v2, p0, Lcom/alivc/component/capture/VideoPusher;->mSensorManager:Landroid/hardware/SensorManager;
.line 78
iput-object v2, p0, Lcom/alivc/component/capture/VideoPusher;->mAccelSensor:Landroid/hardware/Sensor;
.line 79
iput-object v2, p0, Lcom/alivc/component/capture/VideoPusher;->mMagneticSensor:Landroid/hardware/Sensor;
.line 81
iput v0, p0, Lcom/alivc/component/capture/VideoPusher;->mLastXAccel:F
.line 82
iput v0, p0, Lcom/alivc/component/capture/VideoPusher;->mLastYAccel:F
.line 83
iput v0, p0, Lcom/alivc/component/capture/VideoPusher;->mLastZAccel:F
.line 85
iput v0, p0, Lcom/alivc/component/capture/VideoPusher;->mLastXMag:F
.line 86
iput v0, p0, Lcom/alivc/component/capture/VideoPusher;->mLastYMag:F
.line 87
iput v0, p0, Lcom/alivc/component/capture/VideoPusher;->mLastZMag:F
.line 89
iput v1, p0, Lcom/alivc/component/capture/VideoPusher;->mCustomRotation:I
.line 90
iput-boolean v1, p0, Lcom/alivc/component/capture/VideoPusher;->mSensorFocus:Z
.line 95
iput-boolean v1, p0, Lcom/alivc/component/capture/VideoPusher;->mCameraDisConnected:Z
.line 96
new-instance v0, Lcom/alivc/component/capture/VideoPusher$1;
invoke-direct {v0, p0}, Lcom/alivc/component/capture/VideoPusher$1;-><init>(Lcom/alivc/component/capture/VideoPusher;)V
iput-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mActivityCallbacks:Landroid/app/Application$ActivityLifecycleCallbacks;
.line 324
new-instance v0, Lcom/alivc/component/capture/VideoPusher$2;
invoke-direct {v0, p0}, Lcom/alivc/component/capture/VideoPusher$2;-><init>(Lcom/alivc/component/capture/VideoPusher;)V
iput-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mOnFrameAvailableListener:Landroid/graphics/SurfaceTexture$OnFrameAvailableListener;
.line 349
new-instance v0, Lcom/alivc/component/capture/VideoPusher$3;
invoke-direct {v0, p0}, Lcom/alivc/component/capture/VideoPusher$3;-><init>(Lcom/alivc/component/capture/VideoPusher;)V
iput-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mPreviewCallback:Landroid/hardware/Camera$PreviewCallback;
.line 1153
new-instance v0, Lcom/alivc/component/capture/VideoPusher$6;
invoke-direct {v0, p0}, Lcom/alivc/component/capture/VideoPusher$6;-><init>(Lcom/alivc/component/capture/VideoPusher;)V
iput-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mSensorEventListener:Landroid/hardware/SensorEventListener;
.line 141
return-void
.end method
.method static synthetic access$000(Lcom/alivc/component/capture/VideoPusher;)Z
.registers 2
.param p0, "x0" # Lcom/alivc/component/capture/VideoPusher;
.line 31
iget-boolean v0, p0, Lcom/alivc/component/capture/VideoPusher;->mCameraDisConnected:Z
return v0
.end method
.method static synthetic access$002(Lcom/alivc/component/capture/VideoPusher;Z)Z
.registers 2
.param p0, "x0" # Lcom/alivc/component/capture/VideoPusher;
.param p1, "x1" # Z
.line 31
iput-boolean p1, p0, Lcom/alivc/component/capture/VideoPusher;->mCameraDisConnected:Z
return p1
.end method
.method static synthetic access$100(Lcom/alivc/component/capture/VideoPusher;)Lcom/alivc/component/capture/VideoPusher$VideoSourceTextureListener;
.registers 2
.param p0, "x0" # Lcom/alivc/component/capture/VideoPusher;
.line 31
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mVideoSourceTextureListener:Lcom/alivc/component/capture/VideoPusher$VideoSourceTextureListener;
return-object v0
.end method
.method static synthetic access$1000(Lcom/alivc/component/capture/VideoPusher;)J
.registers 3
.param p0, "x0" # Lcom/alivc/component/capture/VideoPusher;
.line 31
iget-wide v0, p0, Lcom/alivc/component/capture/VideoPusher;->mLastFpsCountTime:J
return-wide v0
.end method
.method static synthetic access$1002(Lcom/alivc/component/capture/VideoPusher;J)J
.registers 3
.param p0, "x0" # Lcom/alivc/component/capture/VideoPusher;
.param p1, "x1" # J
.line 31
iput-wide p1, p0, Lcom/alivc/component/capture/VideoPusher;->mLastFpsCountTime:J
return-wide p1
.end method
.method static synthetic access$1102(Lcom/alivc/component/capture/VideoPusher;I)I
.registers 2
.param p0, "x0" # Lcom/alivc/component/capture/VideoPusher;
.param p1, "x1" # I
.line 31
iput p1, p0, Lcom/alivc/component/capture/VideoPusher;->mCurrentFps:I
return p1
.end method
.method static synthetic access$1200(Lcom/alivc/component/capture/VideoPusher;)I
.registers 2
.param p0, "x0" # Lcom/alivc/component/capture/VideoPusher;
.line 31
iget v0, p0, Lcom/alivc/component/capture/VideoPusher;->mBelowMinFpsNumberTimes:I
return v0
.end method
.method static synthetic access$1202(Lcom/alivc/component/capture/VideoPusher;I)I
.registers 2
.param p0, "x0" # Lcom/alivc/component/capture/VideoPusher;
.param p1, "x1" # I
.line 31
iput p1, p0, Lcom/alivc/component/capture/VideoPusher;->mBelowMinFpsNumberTimes:I
return p1
.end method
.method static synthetic access$1208(Lcom/alivc/component/capture/VideoPusher;)I
.registers 3
.param p0, "x0" # Lcom/alivc/component/capture/VideoPusher;
.line 31
iget v0, p0, Lcom/alivc/component/capture/VideoPusher;->mBelowMinFpsNumberTimes:I
add-int/lit8 v1, v0, 0x1
iput v1, p0, Lcom/alivc/component/capture/VideoPusher;->mBelowMinFpsNumberTimes:I
return v0
.end method
.method static synthetic access$1300(Lcom/alivc/component/capture/VideoPusher;)F
.registers 2
.param p0, "x0" # Lcom/alivc/component/capture/VideoPusher;
.line 31
iget v0, p0, Lcom/alivc/component/capture/VideoPusher;->mLastXMag:F
return v0
.end method
.method static synthetic access$1302(Lcom/alivc/component/capture/VideoPusher;F)F
.registers 2
.param p0, "x0" # Lcom/alivc/component/capture/VideoPusher;
.param p1, "x1" # F
.line 31
iput p1, p0, Lcom/alivc/component/capture/VideoPusher;->mLastXMag:F
return p1
.end method
.method static synthetic access$1400(Lcom/alivc/component/capture/VideoPusher;)F
.registers 2
.param p0, "x0" # Lcom/alivc/component/capture/VideoPusher;
.line 31
iget v0, p0, Lcom/alivc/component/capture/VideoPusher;->mLastYMag:F
return v0
.end method
.method static synthetic access$1402(Lcom/alivc/component/capture/VideoPusher;F)F
.registers 2
.param p0, "x0" # Lcom/alivc/component/capture/VideoPusher;
.param p1, "x1" # F
.line 31
iput p1, p0, Lcom/alivc/component/capture/VideoPusher;->mLastYMag:F
return p1
.end method
.method static synthetic access$1500(Lcom/alivc/component/capture/VideoPusher;)F
.registers 2
.param p0, "x0" # Lcom/alivc/component/capture/VideoPusher;
.line 31
iget v0, p0, Lcom/alivc/component/capture/VideoPusher;->mLastZMag:F
return v0
.end method
.method static synthetic access$1502(Lcom/alivc/component/capture/VideoPusher;F)F
.registers 2
.param p0, "x0" # Lcom/alivc/component/capture/VideoPusher;
.param p1, "x1" # F
.line 31
iput p1, p0, Lcom/alivc/component/capture/VideoPusher;->mLastZMag:F
return p1
.end method
.method static synthetic access$1600(Lcom/alivc/component/capture/VideoPusher;)Z
.registers 2
.param p0, "x0" # Lcom/alivc/component/capture/VideoPusher;
.line 31
iget-boolean v0, p0, Lcom/alivc/component/capture/VideoPusher;->mAutoFocusing:Z
return v0
.end method
.method static synthetic access$1602(Lcom/alivc/component/capture/VideoPusher;Z)Z
.registers 2
.param p0, "x0" # Lcom/alivc/component/capture/VideoPusher;
.param p1, "x1" # Z
.line 31
iput-boolean p1, p0, Lcom/alivc/component/capture/VideoPusher;->mAutoFocusing:Z
return p1
.end method
.method static synthetic access$1700(Lcom/alivc/component/capture/VideoPusher;)F
.registers 2
.param p0, "x0" # Lcom/alivc/component/capture/VideoPusher;
.line 31
iget v0, p0, Lcom/alivc/component/capture/VideoPusher;->mLastXAccel:F
return v0
.end method
.method static synthetic access$1702(Lcom/alivc/component/capture/VideoPusher;F)F
.registers 2
.param p0, "x0" # Lcom/alivc/component/capture/VideoPusher;
.param p1, "x1" # F
.line 31
iput p1, p0, Lcom/alivc/component/capture/VideoPusher;->mLastXAccel:F
return p1
.end method
.method static synthetic access$1800(Lcom/alivc/component/capture/VideoPusher;)F
.registers 2
.param p0, "x0" # Lcom/alivc/component/capture/VideoPusher;
.line 31
iget v0, p0, Lcom/alivc/component/capture/VideoPusher;->mLastYAccel:F
return v0
.end method
.method static synthetic access$1802(Lcom/alivc/component/capture/VideoPusher;F)F
.registers 2
.param p0, "x0" # Lcom/alivc/component/capture/VideoPusher;
.param p1, "x1" # F
.line 31
iput p1, p0, Lcom/alivc/component/capture/VideoPusher;->mLastYAccel:F
return p1
.end method
.method static synthetic access$1900(Lcom/alivc/component/capture/VideoPusher;)F
.registers 2
.param p0, "x0" # Lcom/alivc/component/capture/VideoPusher;
.line 31
iget v0, p0, Lcom/alivc/component/capture/VideoPusher;->mLastZAccel:F
return v0
.end method
.method static synthetic access$1902(Lcom/alivc/component/capture/VideoPusher;F)F
.registers 2
.param p0, "x0" # Lcom/alivc/component/capture/VideoPusher;
.param p1, "x1" # F
.line 31
iput p1, p0, Lcom/alivc/component/capture/VideoPusher;->mLastZAccel:F
return p1
.end method
.method static synthetic access$200(Lcom/alivc/component/capture/VideoPusher;)J
.registers 3
.param p0, "x0" # Lcom/alivc/component/capture/VideoPusher;
.line 31
iget-wide v0, p0, Lcom/alivc/component/capture/VideoPusher;->mTimeDelta:J
return-wide v0
.end method
.method static synthetic access$2000(Lcom/alivc/component/capture/VideoPusher;)Landroid/hardware/Camera;
.registers 2
.param p0, "x0" # Lcom/alivc/component/capture/VideoPusher;
.line 31
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
return-object v0
.end method
.method static synthetic access$202(Lcom/alivc/component/capture/VideoPusher;J)J
.registers 3
.param p0, "x0" # Lcom/alivc/component/capture/VideoPusher;
.param p1, "x1" # J
.line 31
iput-wide p1, p0, Lcom/alivc/component/capture/VideoPusher;->mTimeDelta:J
return-wide p1
.end method
.method static synthetic access$300(Lcom/alivc/component/capture/VideoPusher;)Lcom/alivc/component/capture/VideoParam;
.registers 2
.param p0, "x0" # Lcom/alivc/component/capture/VideoPusher;
.line 31
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
return-object v0
.end method
.method static synthetic access$400(Lcom/alivc/component/capture/VideoPusher;)I
.registers 2
.param p0, "x0" # Lcom/alivc/component/capture/VideoPusher;
.line 31
iget v0, p0, Lcom/alivc/component/capture/VideoPusher;->mCustomRotation:I
return v0
.end method
.method static synthetic access$500(Lcom/alivc/component/capture/VideoPusher;)I
.registers 2
.param p0, "x0" # Lcom/alivc/component/capture/VideoPusher;
.line 31
iget v0, p0, Lcom/alivc/component/capture/VideoPusher;->mDataOrientation:I
return v0
.end method
.method static synthetic access$600(Lcom/alivc/component/capture/VideoPusher;)J
.registers 3
.param p0, "x0" # Lcom/alivc/component/capture/VideoPusher;
.line 31
iget-wide v0, p0, Lcom/alivc/component/capture/VideoPusher;->mLastCaptureTime:J
return-wide v0
.end method
.method static synthetic access$602(Lcom/alivc/component/capture/VideoPusher;J)J
.registers 3
.param p0, "x0" # Lcom/alivc/component/capture/VideoPusher;
.param p1, "x1" # J
.line 31
iput-wide p1, p0, Lcom/alivc/component/capture/VideoPusher;->mLastCaptureTime:J
return-wide p1
.end method
.method static synthetic access$700(Lcom/alivc/component/capture/VideoPusher;)I
.registers 2
.param p0, "x0" # Lcom/alivc/component/capture/VideoPusher;
.line 31
iget v0, p0, Lcom/alivc/component/capture/VideoPusher;->mLastFpsCounter:I
return v0
.end method
.method static synthetic access$702(Lcom/alivc/component/capture/VideoPusher;I)I
.registers 2
.param p0, "x0" # Lcom/alivc/component/capture/VideoPusher;
.param p1, "x1" # I
.line 31
iput p1, p0, Lcom/alivc/component/capture/VideoPusher;->mLastFpsCounter:I
return p1
.end method
.method static synthetic access$708(Lcom/alivc/component/capture/VideoPusher;)I
.registers 3
.param p0, "x0" # Lcom/alivc/component/capture/VideoPusher;
.line 31
iget v0, p0, Lcom/alivc/component/capture/VideoPusher;->mLastFpsCounter:I
add-int/lit8 v1, v0, 0x1
iput v1, p0, Lcom/alivc/component/capture/VideoPusher;->mLastFpsCounter:I
return v0
.end method
.method static synthetic access$800(Lcom/alivc/component/capture/VideoPusher;)Lcom/alivc/component/capture/VideoPusher$VideoSourceListener;
.registers 2
.param p0, "x0" # Lcom/alivc/component/capture/VideoPusher;
.line 31
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mVideoSourceListener:Lcom/alivc/component/capture/VideoPusher$VideoSourceListener;
return-object v0
.end method
.method static synthetic access$900(Lcom/alivc/component/capture/VideoPusher;)Z
.registers 2
.param p0, "x0" # Lcom/alivc/component/capture/VideoPusher;
.line 31
iget-boolean v0, p0, Lcom/alivc/component/capture/VideoPusher;->mPause:Z
return v0
.end method
.method private clamp(III)I
.registers 4
.param p1, "x" # I
.param p2, "min" # I
.param p3, "max" # I
.line 948
if-le p1, p3, :cond_3
.line 949
return p3
.line 951
:cond_3
if-ge p1, p2, :cond_6
.line 952
return p2
.line 954
:cond_6
return p1
.end method
.method private convertRotationMode(I)I
.registers 4
.param p1, "mode" # I
.line 181
const/4 v0, 0x0
.line 182
.local v0, "ret":I
if-eqz p1, :cond_10
const/4 v1, 0x1
if-eq p1, v1, :cond_d
const/4 v1, 0x2
if-eq p1, v1, :cond_a
goto :goto_12
.line 190
:cond_a
const/16 v0, 0x5a
goto :goto_12
.line 187
:cond_d
const/16 v0, 0x10e
.line 188
goto :goto_12
.line 184
:cond_10
const/4 v0, 0x0
.line 185
nop
.line 194
:goto_12
return v0
.end method
.method public static getSupportedFormats()Ljava/util/List;
.registers 4
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/List<",
"Ljava/lang/Integer;",
">;"
}
.end annotation
.line 1109
sget-object v0, Lcom/alivc/component/capture/VideoPusher;->sSupportedFormat:Ljava/util/List;
invoke-interface {v0}, Ljava/util/List;->size()I
move-result v0
if-gtz v0, :cond_3c
.line 1111
const/4 v0, 0x0
.line 1113
.local v0, "camera":Landroid/hardware/Camera;
const/4 v1, 0x0
const/4 v2, 0x0
:try_start_b
invoke-static {v1}, Landroid/hardware/Camera;->open(I)Landroid/hardware/Camera;
move-result-object v1
:try_end_f
.catch Ljava/lang/Exception; {:try_start_b .. :try_end_f} :catch_31
move-object v0, v1
.line 1122
nop
.line 1123
if-nez v0, :cond_14
.line 1124
return-object v2
.line 1126
:cond_14
const/4 v1, 0x0
.line 1128
.local v1, "parameters":Landroid/hardware/Camera$Parameters;
:try_start_15
invoke-virtual {v0}, Landroid/hardware/Camera;->getParameters()Landroid/hardware/Camera$Parameters;
move-result-object v3
:try_end_19
.catch Ljava/lang/Exception; {:try_start_15 .. :try_end_19} :catch_28
move-object v1, v3
.line 1134
nop
.line 1135
invoke-virtual {v0, v2}, Landroid/hardware/Camera;->setPreviewCallback(Landroid/hardware/Camera$PreviewCallback;)V
.line 1136
invoke-virtual {v0}, Landroid/hardware/Camera;->release()V
.line 1137
invoke-virtual {v1}, Landroid/hardware/Camera$Parameters;->getSupportedPreviewFormats()Ljava/util/List;
move-result-object v2
sput-object v2, Lcom/alivc/component/capture/VideoPusher;->sSupportedFormat:Ljava/util/List;
goto :goto_3c
.line 1129
:catch_28
move-exception v3
.line 1130
.local v3, "e":Ljava/lang/Exception;
invoke-virtual {v0, v2}, Landroid/hardware/Camera;->setPreviewCallback(Landroid/hardware/Camera$PreviewCallback;)V
.line 1131
invoke-virtual {v0}, Landroid/hardware/Camera;->release()V
.line 1132
const/4 v0, 0x0
.line 1133
return-object v2
.line 1114
.end local v1 # "parameters":Landroid/hardware/Camera$Parameters;
.end local v3 # "e":Ljava/lang/Exception;
:catch_31
move-exception v1
.line 1115
.local v1, "e":Ljava/lang/Exception;
if-eqz v0, :cond_3a
.line 1117
invoke-virtual {v0, v2}, Landroid/hardware/Camera;->setPreviewCallback(Landroid/hardware/Camera$PreviewCallback;)V
.line 1118
invoke-virtual {v0}, Landroid/hardware/Camera;->release()V
.line 1120
:cond_3a
const/4 v0, 0x0
.line 1121
return-object v2
.line 1139
.end local v0 # "camera":Landroid/hardware/Camera;
.end local v1 # "e":Ljava/lang/Exception;
:cond_3c
:goto_3c
sget-object v0, Lcom/alivc/component/capture/VideoPusher;->sSupportedFormat:Ljava/util/List;
return-object v0
.end method
.method public static getSupportedResolutions(I)Ljava/util/List;
.registers 6
.param p0, "source" # I
.annotation system Ldalvik/annotation/Signature;
value = {
"(I)",
"Ljava/util/List<",
"Landroid/hardware/Camera$Size;",
">;"
}
.end annotation
.line 1071
sget-object v0, Lcom/alivc/component/capture/VideoPusher;->sSupportedResolutionMap:Ljava/util/Map;
invoke-static {p0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v1
invoke-interface {v0, v1}, Ljava/util/Map;->containsKey(Ljava/lang/Object;)Z
move-result v0
if-nez v0, :cond_45
.line 1073
const/4 v0, 0x0
.line 1075
.local v0, "camera":Landroid/hardware/Camera;
const/4 v1, 0x0
:try_start_e
invoke-static {p0}, Landroid/hardware/Camera;->open(I)Landroid/hardware/Camera;
move-result-object v2
:try_end_12
.catch Ljava/lang/Exception; {:try_start_e .. :try_end_12} :catch_43
move-object v0, v2
.line 1079
nop
.line 1080
if-nez v0, :cond_17
.line 1081
return-object v1
.line 1083
:cond_17
const/4 v2, 0x0
.line 1085
.local v2, "parameters":Landroid/hardware/Camera$Parameters;
:try_start_18
invoke-virtual {v0}, Landroid/hardware/Camera;->getParameters()Landroid/hardware/Camera$Parameters;
move-result-object v3
:try_end_1c
.catch Ljava/lang/Exception; {:try_start_18 .. :try_end_1c} :catch_3a
move-object v2, v3
.line 1091
nop
.line 1092
invoke-virtual {v0, v1}, Landroid/hardware/Camera;->setPreviewCallback(Landroid/hardware/Camera$PreviewCallback;)V
.line 1093
invoke-virtual {v0}, Landroid/hardware/Camera;->release()V
.line 1094
invoke-virtual {v2}, Landroid/hardware/Camera$Parameters;->getSupportedPreviewSizes()Ljava/util/List;
move-result-object v1
.line 1095
.local v1, "sizes":Ljava/util/List;, "Ljava/util/List<Landroid/hardware/Camera$Size;>;"
new-instance v3, Lcom/alivc/component/capture/VideoPusher$5;
invoke-direct {v3}, Lcom/alivc/component/capture/VideoPusher$5;-><init>()V
invoke-static {v1, v3}, Ljava/util/Collections;->sort(Ljava/util/List;Ljava/util/Comparator;)V
.line 1102
sget-object v3, Lcom/alivc/component/capture/VideoPusher;->sSupportedResolutionMap:Ljava/util/Map;
invoke-static {p0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v4
invoke-interface {v3, v4, v1}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
goto :goto_45
.line 1086
.end local v1 # "sizes":Ljava/util/List;, "Ljava/util/List<Landroid/hardware/Camera$Size;>;"
:catch_3a
move-exception v3
.line 1087
.local v3, "e":Ljava/lang/Exception;
invoke-virtual {v0, v1}, Landroid/hardware/Camera;->setPreviewCallback(Landroid/hardware/Camera$PreviewCallback;)V
.line 1088
invoke-virtual {v0}, Landroid/hardware/Camera;->release()V
.line 1089
const/4 v0, 0x0
.line 1090
return-object v1
.line 1076
.end local v2 # "parameters":Landroid/hardware/Camera$Parameters;
.end local v3 # "e":Ljava/lang/Exception;
:catch_43
move-exception v2
.line 1078
.local v2, "e":Ljava/lang/Exception;
return-object v1
.line 1104
.end local v0 # "camera":Landroid/hardware/Camera;
.end local v2 # "e":Ljava/lang/Exception;
:cond_45
:goto_45
sget-object v0, Lcom/alivc/component/capture/VideoPusher;->sSupportedResolutionMap:Ljava/util/Map;
invoke-static {p0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v1
invoke-interface {v0, v1}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/util/List;
return-object v0
.end method
.method private isHasPermission()Z
.registers 4
.line 495
const/4 v0, 0x1
:try_start_1
iget-object v1, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
invoke-virtual {v1}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v1
const-string v2, "mHasPermission"
invoke-virtual {v1, v2}, Ljava/lang/Class;->getDeclaredField(Ljava/lang/String;)Ljava/lang/reflect/Field;
move-result-object v1
.line 496
.local v1, "filedPass":Ljava/lang/reflect/Field;
invoke-virtual {v1, v0}, Ljava/lang/reflect/Field;->setAccessible(Z)V
.line 497
iget-object v2, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
invoke-virtual {v1, v2}, Ljava/lang/reflect/Field;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v2
check-cast v2, Ljava/lang/Boolean;
invoke-virtual {v2}, Ljava/lang/Boolean;->booleanValue()Z
move-result v0
:try_end_1c
.catch Ljava/lang/Exception; {:try_start_1 .. :try_end_1c} :catch_1d
return v0
.line 498
.end local v1 # "filedPass":Ljava/lang/reflect/Field;
:catch_1d
move-exception v1
.line 499
.local v1, "e":Ljava/lang/Exception;
return v0
.end method
.method private preparePublisher(II)V
.registers 5
.param p1, "pushWidth" # I
.param p2, "pushHeight" # I
.line 757
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "prepare publisher. "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget v1, p0, Lcom/alivc/component/capture/VideoPusher;->mOrientation:I
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string v1, " "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v1, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v1}, Lcom/alivc/component/capture/VideoParam;->getCameraId()I
move-result v1
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
const-string v1, "VideoPusher"
invoke-static {v1, v0}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
.line 758
iget-boolean v0, p0, Lcom/alivc/component/capture/VideoPusher;->mSwitchCamera:Z
if-nez v0, :cond_34
iget-boolean v0, p0, Lcom/alivc/component/capture/VideoPusher;->mPause:Z
if-nez v0, :cond_34
.line 760
const-string v0, "prepare publisher over."
invoke-static {v1, v0}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
goto :goto_37
.line 762
:cond_34
const/4 v0, 0x0
iput-boolean v0, p0, Lcom/alivc/component/capture/VideoPusher;->mSwitchCamera:Z
.line 764
:goto_37
return-void
.end method
.method private setPreviewAdvancedParameters(Landroid/hardware/Camera$Parameters;)V
.registers 13
.param p1, "parameters" # Landroid/hardware/Camera$Parameters;
.line 199
invoke-virtual {p1}, Landroid/hardware/Camera$Parameters;->getSupportedWhiteBalance()Ljava/util/List;
move-result-object v0
.line 200
.local v0, "whiteBalances":Ljava/util/List;, "Ljava/util/List<Ljava/lang/String;>;"
const-string v1, "VideoPusher"
const-string v2, "auto"
if-eqz v0, :cond_18
invoke-interface {v0, v2}, Ljava/util/List;->contains(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_18
.line 201
const-string v3, "Contains Camera.Parameters.WHITE_BALANCE_AUTO"
invoke-static {v1, v3}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
.line 202
invoke-virtual {p1, v2}, Landroid/hardware/Camera$Parameters;->setWhiteBalance(Ljava/lang/String;)V
.line 205
:cond_18
invoke-virtual {p1}, Landroid/hardware/Camera$Parameters;->getSupportedAntibanding()Ljava/util/List;
move-result-object v3
.line 206
.local v3, "antiBandings":Ljava/util/List;, "Ljava/util/List<Ljava/lang/String;>;"
if-eqz v3, :cond_2c
invoke-interface {v3, v2}, Ljava/util/List;->contains(Ljava/lang/Object;)Z
move-result v4
if-eqz v4, :cond_2c
.line 207
const-string v4, "Contains Camera.Parameters.ANTIBANDING_AUTO"
invoke-static {v1, v4}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
.line 208
invoke-virtual {p1, v2}, Landroid/hardware/Camera$Parameters;->setAntibanding(Ljava/lang/String;)V
.line 211
:cond_2c
const-string v2, "auto"
.line 212
.local v2, "sceneMode":Ljava/lang/String;
invoke-virtual {p1}, Landroid/hardware/Camera$Parameters;->getSupportedSceneModes()Ljava/util/List;
move-result-object v4
.line 213
.local v4, "sceneModes":Ljava/util/List;, "Ljava/util/List<Ljava/lang/String;>;"
if-eqz v4, :cond_48
invoke-interface {v4, v2}, Ljava/util/List;->contains(Ljava/lang/Object;)Z
move-result v5
if-eqz v5, :cond_48
invoke-virtual {p1}, Landroid/hardware/Camera$Parameters;->getSceneMode()Ljava/lang/String;
move-result-object v5
if-eq v5, v2, :cond_48
.line 214
const-string v5, "Contains getSupportedSceneModes auto"
invoke-static {v1, v5}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
.line 215
invoke-virtual {p1, v2}, Landroid/hardware/Camera$Parameters;->setSceneMode(Ljava/lang/String;)V
.line 218
:cond_48
sget-object v1, Landroid/os/Build;->MANUFACTURER:Ljava/lang/String;
invoke-virtual {v1}, Ljava/lang/String;->toLowerCase()Ljava/lang/String;
move-result-object v1
.line 219
.local v1, "mauFacture":Ljava/lang/String;
sget-object v5, Landroid/os/Build;->MODEL:Ljava/lang/String;
invoke-virtual {v5}, Ljava/lang/String;->toLowerCase()Ljava/lang/String;
move-result-object v5
.line 220
.local v5, "model":Ljava/lang/String;
const-string/jumbo v6, "xiaomi"
invoke-virtual {v1, v6}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v6
const-string v7, "center-weighted"
const-string v8, "auto-exposure"
const-string/jumbo v9, "skinToneEnhancement"
if-eqz v6, :cond_83
const-string v6, "mi note"
invoke-virtual {v5, v6}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v6
if-eqz v6, :cond_83
.line 221
const-string v6, "scene-detect"
const-string v10, "on"
invoke-virtual {p1, v6, v10}, Landroid/hardware/Camera$Parameters;->set(Ljava/lang/String;Ljava/lang/String;)V
.line 222
const-string/jumbo v6, "xiaomi-still-beautify-values"
const-string v10, "i:3"
invoke-virtual {p1, v6, v10}, Landroid/hardware/Camera$Parameters;->set(Ljava/lang/String;Ljava/lang/String;)V
.line 223
const-string v6, "enable"
invoke-virtual {p1, v9, v6}, Landroid/hardware/Camera$Parameters;->set(Ljava/lang/String;Ljava/lang/String;)V
.line 224
invoke-virtual {p1, v8, v7}, Landroid/hardware/Camera$Parameters;->set(Ljava/lang/String;Ljava/lang/String;)V
.line 226
:cond_83
const-string v6, "oppo"
invoke-virtual {v1, v6}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v6
if-eqz v6, :cond_a1
const-string v6, "r7c"
invoke-virtual {v5, v6}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v6
if-eqz v6, :cond_a1
.line 227
const/4 v6, 0x1
invoke-virtual {p1, v9, v6}, Landroid/hardware/Camera$Parameters;->set(Ljava/lang/String;I)V
.line 228
const/16 v6, 0x64
const-string v9, "face-beautify"
invoke-virtual {p1, v9, v6}, Landroid/hardware/Camera$Parameters;->set(Ljava/lang/String;I)V
.line 229
invoke-virtual {p1, v8, v7}, Landroid/hardware/Camera$Parameters;->set(Ljava/lang/String;Ljava/lang/String;)V
.line 231
:cond_a1
return-void
.end method
.method private setPreviewFpsRange(Landroid/hardware/Camera$Parameters;)V
.registers 12
.param p1, "parameters" # Landroid/hardware/Camera$Parameters;
.line 724
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v0}, Lcom/alivc/component/capture/VideoParam;->getFps()I
move-result v0
mul-int/lit16 v0, v0, 0x3e8
.line 725
.local v0, "targetFps":I
const/4 v1, 0x0
.line 726
.local v1, "minRange":I
invoke-virtual {p1}, Landroid/hardware/Camera$Parameters;->getSupportedPreviewFpsRange()Ljava/util/List;
move-result-object v2
.line 727
.local v2, "supportedFpsRanges":Ljava/util/List;, "Ljava/util/List<[I>;"
const/4 v3, 0x2
new-array v3, v3, [I
.line 728
.local v3, "targetFpsRange":[I
invoke-interface {v2}, Ljava/util/List;->size()I
move-result v4
const/4 v5, 0x1
const/4 v6, 0x0
if-lez v4, :cond_36
.line 729
invoke-interface {v2, v6}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v4
check-cast v4, [I
.line 730
.local v4, "range":[I
aget v7, v4, v6
sub-int/2addr v7, v0
invoke-static {v7}, Ljava/lang/Math;->abs(I)I
move-result v7
aget v8, v4, v5
sub-int/2addr v8, v0
invoke-static {v8}, Ljava/lang/Math;->abs(I)I
move-result v8
add-int v1, v7, v8
.line 731
aget v7, v4, v6
aput v7, v3, v6
.line 732
aget v7, v4, v5
aput v7, v3, v5
.line 734
.end local v4 # "range":[I
:cond_36
const/4 v4, 0x1
.local v4, "i":I
:goto_37
invoke-interface {v2}, Ljava/util/List;->size()I
move-result v7
if-ge v4, v7, :cond_60
.line 735
invoke-interface {v2, v4}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v7
check-cast v7, [I
.line 736
.local v7, "range":[I
aget v8, v7, v6
sub-int/2addr v8, v0
invoke-static {v8}, Ljava/lang/Math;->abs(I)I
move-result v8
aget v9, v7, v5
sub-int/2addr v9, v0
invoke-static {v9}, Ljava/lang/Math;->abs(I)I
move-result v9
add-int/2addr v8, v9
.line 737
.local v8, "currentRange":I
if-ge v8, v1, :cond_5d
.line 738
aget v9, v7, v6
aput v9, v3, v6
.line 739
aget v9, v7, v5
aput v9, v3, v5
.line 740
move v1, v8
.line 734
.end local v7 # "range":[I
.end local v8 # "currentRange":I
:cond_5d
add-int/lit8 v4, v4, 0x1
goto :goto_37
.line 744
.end local v4 # "i":I
:cond_60
:try_start_60
sget-object v4, Landroid/os/Build;->BRAND:Ljava/lang/String;
const-string v7, "Coolpad"
invoke-virtual {v4, v7}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v4
if-nez v4, :cond_98
sget-object v4, Landroid/os/Build;->BRAND:Ljava/lang/String;
const-string v7, "360"
invoke-virtual {v4, v7}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v4
if-nez v4, :cond_98
sget-object v4, Landroid/os/Build;->BRAND:Ljava/lang/String;
const-string v7, "YOTA"
invoke-virtual {v4, v7}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v4
if-nez v4, :cond_98
sget-object v4, Landroid/os/Build;->MODEL:Ljava/lang/String;
const-string v7, "Redmi"
invoke-virtual {v4, v7}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v4
if-nez v4, :cond_98
.line 745
aget v4, v3, v6
aget v7, v3, v5
invoke-virtual {p1, v4, v7}, Landroid/hardware/Camera$Parameters;->setPreviewFpsRange(II)V
.line 746
iget-object v4, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v4}, Lcom/alivc/component/capture/VideoParam;->getFps()I
move-result v4
invoke-virtual {p1, v4}, Landroid/hardware/Camera$Parameters;->setPreviewFrameRate(I)V
:try_end_98
.catch Ljava/lang/Exception; {:try_start_60 .. :try_end_98} :catch_99
.line 751
:cond_98
goto :goto_9a
.line 748
:catch_99
move-exception v4
.line 752
:goto_9a
new-instance v4, Ljava/lang/StringBuilder;
invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
const-string/jumbo v7, "\u9884\u89c8\u5e27\u7387 fps:"
invoke-virtual {v4, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
aget v6, v3, v6
invoke-virtual {v4, v6}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string v6, " - "
invoke-virtual {v4, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
aget v5, v3, v5
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v4
const-string v5, "VideoPusher"
invoke-static {v5, v4}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
.line 753
const/4 v3, 0x0
.line 754
return-void
.end method
.method private setPreviewOrientation(Landroid/hardware/Camera$Parameters;I)V
.registers 6
.param p1, "parameters" # Landroid/hardware/Camera$Parameters;
.param p2, "rotation" # I
.line 768
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "SetRotation : "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
const-string v1, "VideoPusher"
invoke-static {v1, v0}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
.line 769
new-instance v0, Landroid/hardware/Camera$CameraInfo;
invoke-direct {v0}, Landroid/hardware/Camera$CameraInfo;-><init>()V
.line 770
.local v0, "info":Landroid/hardware/Camera$CameraInfo;
iget-object v1, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v1}, Lcom/alivc/component/capture/VideoParam;->getCameraId()I
move-result v1
invoke-static {v1, v0}, Landroid/hardware/Camera;->getCameraInfo(ILandroid/hardware/Camera$CameraInfo;)V
.line 771
const/4 v1, 0x0
iput v1, p0, Lcom/alivc/component/capture/VideoPusher;->mScreen:I
.line 772
iget-object v1, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v1}, Lcom/alivc/component/capture/VideoParam;->getRotation()I
move-result v1
iput v1, p0, Lcom/alivc/component/capture/VideoPusher;->mOrientation:I
.line 773
iget v1, v0, Landroid/hardware/Camera$CameraInfo;->facing:I
const/4 v2, 0x1
if-ne v1, v2, :cond_3e
.line 774
iget v1, v0, Landroid/hardware/Camera$CameraInfo;->orientation:I
iget v2, p0, Lcom/alivc/component/capture/VideoPusher;->mOrientation:I
add-int/2addr v1, v2
rem-int/lit16 v1, v1, 0x168
iput v1, p0, Lcom/alivc/component/capture/VideoPusher;->mDataOrientation:I
goto :goto_49
.line 776
:cond_3e
iget v1, v0, Landroid/hardware/Camera$CameraInfo;->orientation:I
iget v2, p0, Lcom/alivc/component/capture/VideoPusher;->mOrientation:I
sub-int/2addr v1, v2
add-int/lit16 v1, v1, 0x168
rem-int/lit16 v1, v1, 0x168
iput v1, p0, Lcom/alivc/component/capture/VideoPusher;->mDataOrientation:I
.line 779
:goto_49
iget-object v1, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
iget v2, p0, Lcom/alivc/component/capture/VideoPusher;->mDataOrientation:I
invoke-virtual {v1, v2}, Landroid/hardware/Camera;->setDisplayOrientation(I)V
.line 781
const/4 v0, 0x0
.line 782
return-void
.end method
.method private setPreviewSize(Landroid/hardware/Camera$Parameters;)V
.registers 14
.param p1, "parameters" # Landroid/hardware/Camera$Parameters;
.line 643
nop
.line 644
invoke-virtual {p1}, Landroid/hardware/Camera$Parameters;->getSupportedPreviewFormats()Ljava/util/List;
move-result-object v0
.line 645
.local v0, "supportedPreviewFormats":Ljava/util/List;, "Ljava/util/List<Ljava/lang/Integer;>;"
invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v1
:goto_9
invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_2d
invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
check-cast v2, Ljava/lang/Integer;
.line 646
.local v2, "integer":Ljava/lang/Integer;
sget-object v3, Ljava/lang/System;->out:Ljava/io/PrintStream;
new-instance v4, Ljava/lang/StringBuilder;
invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
const-string/jumbo v5, "\u652f\u6301:"
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v4, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v4
invoke-virtual {v3, v4}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V
.line 647
.end local v2 # "integer":Ljava/lang/Integer;
goto :goto_9
.line 649
:cond_2d
nop
.line 650
invoke-virtual {p1}, Landroid/hardware/Camera$Parameters;->getSupportedPreviewSizes()Ljava/util/List;
move-result-object v1
.line 651
.local v1, "supportedPreviewSizes":Ljava/util/List;, "Ljava/util/List<Landroid/hardware/Camera$Size;>;"
const/4 v2, 0x0
.line 652
.local v2, "greaterClosePreviewSize":Landroid/hardware/Camera$Size;
const/4 v3, 0x0
.line 653
.local v3, "preview720P":Landroid/hardware/Camera$Size;
const/4 v4, 0x0
.line 654
.local v4, "greaterCloseArea":I
const/4 v5, 0x0
.line 655
.local v5, "size":Landroid/hardware/Camera$Size;
const/4 v6, 0x0
.line 656
.local v6, "rotateSize":Landroid/hardware/Camera$Size;
invoke-interface {v1}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v7
.line 657
.local v7, "iterator":Ljava/util/Iterator;, "Ljava/util/Iterator<Landroid/hardware/Camera$Size;>;"
:goto_3b
invoke-interface {v7}, Ljava/util/Iterator;->hasNext()Z
move-result v8
const-string v9, "VideoPusher"
if-eqz v8, :cond_11e
.line 658
invoke-interface {v7}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v8
check-cast v8, Landroid/hardware/Camera$Size;
.line 659
.local v8, "next":Landroid/hardware/Camera$Size;
new-instance v10, Ljava/lang/StringBuilder;
invoke-direct {v10}, Ljava/lang/StringBuilder;-><init>()V
const-string/jumbo v11, "\u652f\u6301 "
invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget v11, v8, Landroid/hardware/Camera$Size;->width:I
invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string/jumbo v11, "x"
invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget v11, v8, Landroid/hardware/Camera$Size;->height:I
invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v10}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v10
invoke-static {v9, v10}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
.line 660
iget v9, v8, Landroid/hardware/Camera$Size;->width:I
iget-object v10, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v10}, Lcom/alivc/component/capture/VideoParam;->getWidth()I
move-result v10
if-ne v9, v10, :cond_80
iget v9, v8, Landroid/hardware/Camera$Size;->height:I
iget-object v10, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v10}, Lcom/alivc/component/capture/VideoParam;->getHeight()I
move-result v10
if-ne v9, v10, :cond_80
.line 661
move-object v5, v8
.line 663
:cond_80
iget v9, v8, Landroid/hardware/Camera$Size;->width:I
iget-object v10, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v10}, Lcom/alivc/component/capture/VideoParam;->getHeight()I
move-result v10
if-ne v9, v10, :cond_95
iget v9, v8, Landroid/hardware/Camera$Size;->height:I
iget-object v10, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v10}, Lcom/alivc/component/capture/VideoParam;->getWidth()I
move-result v10
if-ne v9, v10, :cond_95
.line 664
move-object v6, v8
.line 670
:cond_95
iget v9, v8, Landroid/hardware/Camera$Size;->width:I
iget-object v10, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v10}, Lcom/alivc/component/capture/VideoParam;->getWidth()I
move-result v10
if-lt v9, v10, :cond_a9
iget v9, v8, Landroid/hardware/Camera$Size;->height:I
iget-object v10, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v10}, Lcom/alivc/component/capture/VideoParam;->getHeight()I
move-result v10
if-ge v9, v10, :cond_bd
:cond_a9
iget v9, v8, Landroid/hardware/Camera$Size;->width:I
iget-object v10, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v10}, Lcom/alivc/component/capture/VideoParam;->getHeight()I
move-result v10
if-lt v9, v10, :cond_10a
iget v9, v8, Landroid/hardware/Camera$Size;->height:I
iget-object v10, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v10}, Lcom/alivc/component/capture/VideoParam;->getWidth()I
move-result v10
if-lt v9, v10, :cond_10a
.line 671
:cond_bd
if-nez v4, :cond_c8
.line 672
iget v9, v8, Landroid/hardware/Camera$Size;->width:I
iget v10, v8, Landroid/hardware/Camera$Size;->height:I
mul-int v9, v9, v10
.line 673
.end local v4 # "greaterCloseArea":I
.local v9, "greaterCloseArea":I
move-object v2, v8
move v4, v9
goto :goto_10a
.line 674
.end local v9 # "greaterCloseArea":I
.restart local v4 # "greaterCloseArea":I
:cond_c8
iget v9, v8, Landroid/hardware/Camera$Size;->width:I
iget v10, v8, Landroid/hardware/Camera$Size;->height:I
mul-int v9, v9, v10
if-ge v9, v4, :cond_d9
.line 675
iget v9, v8, Landroid/hardware/Camera$Size;->width:I
iget v10, v8, Landroid/hardware/Camera$Size;->height:I
mul-int v9, v9, v10
.line 676
.end local v4 # "greaterCloseArea":I
.restart local v9 # "greaterCloseArea":I
move-object v2, v8
move v4, v9
goto :goto_10a
.line 677
.end local v9 # "greaterCloseArea":I
.restart local v4 # "greaterCloseArea":I
:cond_d9
iget v9, v8, Landroid/hardware/Camera$Size;->width:I
iget v10, v8, Landroid/hardware/Camera$Size;->height:I
mul-int v9, v9, v10
if-ne v9, v4, :cond_10a
.line 679
iget v9, v8, Landroid/hardware/Camera$Size;->width:I
iget v10, v8, Landroid/hardware/Camera$Size;->height:I
if-ge v9, v10, :cond_f5
iget-object v9, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v9}, Lcom/alivc/component/capture/VideoParam;->getWidth()I
move-result v9
iget-object v10, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v10}, Lcom/alivc/component/capture/VideoParam;->getHeight()I
move-result v10
if-lt v9, v10, :cond_109
:cond_f5
iget v9, v8, Landroid/hardware/Camera$Size;->width:I
iget v10, v8, Landroid/hardware/Camera$Size;->height:I
if-le v9, v10, :cond_10a
iget-object v9, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
.line 680
invoke-virtual {v9}, Lcom/alivc/component/capture/VideoParam;->getWidth()I
move-result v9
iget-object v10, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v10}, Lcom/alivc/component/capture/VideoParam;->getHeight()I
move-result v10
if-le v9, v10, :cond_10a
.line 682
:cond_109
move-object v2, v8
.line 686
:cond_10a
:goto_10a
iget v9, v8, Landroid/hardware/Camera$Size;->width:I
iget v10, v8, Landroid/hardware/Camera$Size;->height:I
mul-int v9, v9, v10
sget v10, Lcom/alivc/component/capture/VideoPusher;->supportMaxWH:I
if-le v9, v10, :cond_11a
iget v9, v8, Landroid/hardware/Camera$Size;->width:I
iget v10, v8, Landroid/hardware/Camera$Size;->height:I
mul-int v10, v10, v9
:cond_11a
sput v10, Lcom/alivc/component/capture/VideoPusher;->supportMaxWH:I
.line 687
.end local v8 # "next":Landroid/hardware/Camera$Size;
goto/16 :goto_3b
.line 688
:cond_11e
if-nez v5, :cond_123
if-eqz v6, :cond_123
.line 689
move-object v5, v6
.line 691
:cond_123
if-nez v5, :cond_128
if-eqz v3, :cond_128
.line 692
move-object v5, v3
.line 694
:cond_128
if-nez v5, :cond_12d
if-eqz v2, :cond_12d
.line 695
move-object v5, v2
.line 697
:cond_12d
if-nez v5, :cond_137
.line 698
const/4 v8, 0x0
invoke-interface {v1, v8}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v8
move-object v5, v8
check-cast v5, Landroid/hardware/Camera$Size;
.line 701
:cond_137
sget-object v8, Lcom/alivc/component/capture/VideoPusher;->buffer:[B
if-nez v8, :cond_147
sget v8, Lcom/alivc/component/capture/VideoPusher;->supportMaxWH:I
if-lez v8, :cond_147
.line 702
mul-int/lit8 v8, v8, 0x3
div-int/lit8 v8, v8, 0x2
new-array v8, v8, [B
sput-object v8, Lcom/alivc/component/capture/VideoPusher;->buffer:[B
.line 704
:cond_147
sget-object v8, Lcom/alivc/component/capture/VideoPusher;->buffer1:[B
if-nez v8, :cond_157
sget v8, Lcom/alivc/component/capture/VideoPusher;->supportMaxWH:I
if-lez v8, :cond_157
.line 705
mul-int/lit8 v8, v8, 0x3
div-int/lit8 v8, v8, 0x2
new-array v8, v8, [B
sput-object v8, Lcom/alivc/component/capture/VideoPusher;->buffer1:[B
.line 707
:cond_157
sget-object v8, Lcom/alivc/component/capture/VideoPusher;->buffer2:[B
if-nez v8, :cond_167
sget v8, Lcom/alivc/component/capture/VideoPusher;->supportMaxWH:I
if-lez v8, :cond_167
.line 708
mul-int/lit8 v8, v8, 0x3
div-int/lit8 v8, v8, 0x2
new-array v8, v8, [B
sput-object v8, Lcom/alivc/component/capture/VideoPusher;->buffer2:[B
.line 712
:cond_167
iget-object v8, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
iget v10, v5, Landroid/hardware/Camera$Size;->width:I
invoke-virtual {v8, v10}, Lcom/alivc/component/capture/VideoParam;->setWidth(I)V
.line 713
iget-object v8, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
iget v10, v5, Landroid/hardware/Camera$Size;->height:I
invoke-virtual {v8, v10}, Lcom/alivc/component/capture/VideoParam;->setHeight(I)V
.line 716
:try_start_175
iget-object v8, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v8}, Lcom/alivc/component/capture/VideoParam;->getWidth()I
move-result v8
iget-object v10, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v10}, Lcom/alivc/component/capture/VideoParam;->getHeight()I
move-result v10
invoke-virtual {p1, v8, v10}, Landroid/hardware/Camera$Parameters;->setPreviewSize(II)V
:try_end_184
.catch Ljava/lang/Exception; {:try_start_175 .. :try_end_184} :catch_185
.line 719
goto :goto_186
.line 717
:catch_185
move-exception v8
.line 720
:goto_186
new-instance v8, Ljava/lang/StringBuilder;
invoke-direct {v8}, Ljava/lang/StringBuilder;-><init>()V
const-string/jumbo v10, "\u9884\u89c8\u5206\u8fa8\u7387 width:"
invoke-virtual {v8, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v10, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v10}, Lcom/alivc/component/capture/VideoParam;->getWidth()I
move-result v10
invoke-virtual {v8, v10}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string v10, " height:"
invoke-virtual {v8, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v10, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v10}, Lcom/alivc/component/capture/VideoParam;->getHeight()I
move-result v10
invoke-virtual {v8, v10}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v8
invoke-static {v9, v8}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
.line 721
return-void
.end method
.method private startPreview0()Z
.registers 9
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/lang/Exception;
}
.end annotation
.line 504
const-string v0, "permission not allowed"
iget-boolean v1, p0, Lcom/alivc/component/capture/VideoPusher;->mPreviewRunning:Z
const/4 v2, 0x1
if-eqz v1, :cond_8
.line 505
return v2
.line 508
:cond_8
invoke-direct {p0}, Lcom/alivc/component/capture/VideoPusher;->isHasPermission()Z
move-result v1
const/4 v3, 0x0
if-nez v1, :cond_10
.line 509
return v3
.line 513
:cond_10
const/4 v1, 0x0
:try_start_11
iget-object v4, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v4}, Lcom/alivc/component/capture/VideoParam;->getCameraId()I
move-result v4
invoke-static {v4}, Landroid/hardware/Camera;->open(I)Landroid/hardware/Camera;
move-result-object v4
iput-object v4, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
:try_end_1d
.catch Ljava/lang/Exception; {:try_start_11 .. :try_end_1d} :catch_23f
.line 521
nop
.line 522
if-eqz v4, :cond_239
.line 526
:try_start_20
invoke-virtual {v4, p0}, Landroid/hardware/Camera;->setErrorCallback(Landroid/hardware/Camera$ErrorCallback;)V
:try_end_23
.catch Ljava/lang/Exception; {:try_start_20 .. :try_end_23} :catch_24
.line 528
goto :goto_25
.line 527
:catch_24
move-exception v4
.line 529
:goto_25
const/4 v4, 0x0
.line 531
.local v4, "parameters":Landroid/hardware/Camera$Parameters;
:try_start_26
iget-object v5, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
invoke-virtual {v5}, Landroid/hardware/Camera;->getParameters()Landroid/hardware/Camera$Parameters;
move-result-object v5
:try_end_2c
.catch Ljava/lang/Exception; {:try_start_26 .. :try_end_2c} :catch_226
move-object v4, v5
.line 537
nop
.line 538
sget-object v5, Lcom/alivc/component/capture/VideoPusher;->sSupportedResolutionMap:Ljava/util/Map;
iget-object v6, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v6}, Lcom/alivc/component/capture/VideoParam;->getCameraId()I
move-result v6
invoke-static {v6}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v6
invoke-interface {v5, v6}, Ljava/util/Map;->containsKey(Ljava/lang/Object;)Z
move-result v5
if-nez v5, :cond_53
.line 539
sget-object v5, Lcom/alivc/component/capture/VideoPusher;->sSupportedResolutionMap:Ljava/util/Map;
iget-object v6, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v6}, Lcom/alivc/component/capture/VideoParam;->getCameraId()I
move-result v6
invoke-static {v6}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v6
invoke-virtual {v4}, Landroid/hardware/Camera$Parameters;->getSupportedPreviewSizes()Ljava/util/List;
move-result-object v7
invoke-interface {v5, v6, v7}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
.line 541
:cond_53
sget-object v5, Lcom/alivc/component/capture/VideoPusher;->sSupportedFormat:Ljava/util/List;
invoke-interface {v5}, Ljava/util/List;->size()I
move-result v5
if-gtz v5, :cond_61
.line 542
invoke-virtual {v4}, Landroid/hardware/Camera$Parameters;->getSupportedPictureFormats()Ljava/util/List;
move-result-object v5
sput-object v5, Lcom/alivc/component/capture/VideoPusher;->sSupportedFormat:Ljava/util/List;
.line 544
:cond_61
invoke-direct {p0}, Lcom/alivc/component/capture/VideoPusher;->isHasPermission()Z
move-result v5
if-eqz v5, :cond_214
.line 550
iget-boolean v0, p0, Lcom/alivc/component/capture/VideoPusher;->mSurfaceCbMode:Z
if-nez v0, :cond_71
.line 551
const/16 v0, 0x11
invoke-virtual {v4, v0}, Landroid/hardware/Camera$Parameters;->setPreviewFormat(I)V
goto :goto_74
.line 553
:cond_71
invoke-virtual {v4, v2}, Landroid/hardware/Camera$Parameters;->setRecordingHint(Z)V
.line 555
:goto_74
invoke-virtual {v4}, Landroid/hardware/Camera$Parameters;->isZoomSupported()Z
move-result v0
if-eqz v0, :cond_a1
.line 556
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v0}, Lcom/alivc/component/capture/VideoParam;->getCurrentZoom()I
move-result v0
invoke-virtual {v4}, Landroid/hardware/Camera$Parameters;->getMaxZoom()I
move-result v5
if-lt v0, v5, :cond_8f
.line 557
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v4}, Landroid/hardware/Camera$Parameters;->getMaxZoom()I
move-result v5
invoke-virtual {v0, v5}, Lcom/alivc/component/capture/VideoParam;->setCurrentZoom(I)V
.line 559
:cond_8f
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v0}, Lcom/alivc/component/capture/VideoParam;->getCurrentZoom()I
move-result v0
invoke-virtual {v4, v0}, Landroid/hardware/Camera$Parameters;->setZoom(I)V
.line 560
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v4}, Landroid/hardware/Camera$Parameters;->getMaxZoom()I
move-result v5
invoke-virtual {v0, v5}, Lcom/alivc/component/capture/VideoParam;->setMaxZoom(I)V
.line 562
:cond_a1
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v0}, Lcom/alivc/component/capture/VideoParam;->getRotation()I
move-result v0
invoke-direct {p0, v4, v0}, Lcom/alivc/component/capture/VideoPusher;->setPreviewOrientation(Landroid/hardware/Camera$Parameters;I)V
.line 563
iget v0, p0, Lcom/alivc/component/capture/VideoPusher;->mDataOrientation:I
const/16 v5, 0x5a
if-eq v0, v5, :cond_b4
const/16 v5, 0x10e
if-ne v0, v5, :cond_c2
.line 565
:cond_b4
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
iget v5, p0, Lcom/alivc/component/capture/VideoPusher;->mDestHeight:I
invoke-virtual {v0, v5}, Lcom/alivc/component/capture/VideoParam;->setWidth(I)V
.line 566
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
iget v5, p0, Lcom/alivc/component/capture/VideoPusher;->mDestWidth:I
invoke-virtual {v0, v5}, Lcom/alivc/component/capture/VideoParam;->setHeight(I)V
.line 568
:cond_c2
invoke-direct {p0, v4}, Lcom/alivc/component/capture/VideoPusher;->setPreviewSize(Landroid/hardware/Camera$Parameters;)V
.line 569
invoke-direct {p0, v4}, Lcom/alivc/component/capture/VideoPusher;->setPreviewFpsRange(Landroid/hardware/Camera$Parameters;)V
.line 572
:try_start_c8
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
invoke-virtual {v0, v4}, Landroid/hardware/Camera;->setParameters(Landroid/hardware/Camera$Parameters;)V
:try_end_cd
.catch Ljava/lang/Exception; {:try_start_c8 .. :try_end_cd} :catch_ce
.line 576
goto :goto_cf
.line 573
:catch_ce
move-exception v0
.line 577
:goto_cf
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string/jumbo v5, "start camera, parameters "
invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v4}, Landroid/hardware/Camera$Parameters;->getPreviewSize()Landroid/hardware/Camera$Size;
move-result-object v5
iget v5, v5, Landroid/hardware/Camera$Size;->width:I
invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string v5, ", "
invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v4}, Landroid/hardware/Camera$Parameters;->getPreviewSize()Landroid/hardware/Camera$Size;
move-result-object v5
iget v5, v5, Landroid/hardware/Camera$Size;->height:I
invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
const-string v5, "VideoPusher"
invoke-static {v5, v0}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
.line 578
sget-object v0, Lcom/alivc/component/capture/VideoPusher;->buffer:[B
if-nez v0, :cond_115
.line 579
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v0}, Lcom/alivc/component/capture/VideoParam;->getWidth()I
move-result v0
iget-object v6, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v6}, Lcom/alivc/component/capture/VideoParam;->getHeight()I
move-result v6
mul-int v0, v0, v6
mul-int/lit8 v0, v0, 0x3
div-int/lit8 v0, v0, 0x2
new-array v0, v0, [B
sput-object v0, Lcom/alivc/component/capture/VideoPusher;->buffer:[B
goto :goto_140
.line 581
:cond_115
array-length v0, v0
iget-object v6, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v6}, Lcom/alivc/component/capture/VideoParam;->getWidth()I
move-result v6
iget-object v7, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v7}, Lcom/alivc/component/capture/VideoParam;->getHeight()I
move-result v7
mul-int v6, v6, v7
mul-int/lit8 v6, v6, 0x3
div-int/lit8 v6, v6, 0x2
if-ge v0, v6, :cond_140
.line 583
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v0}, Lcom/alivc/component/capture/VideoParam;->getWidth()I
move-result v0
iget-object v6, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v6}, Lcom/alivc/component/capture/VideoParam;->getHeight()I
move-result v6
mul-int v0, v0, v6
mul-int/lit8 v0, v0, 0x3
div-int/lit8 v0, v0, 0x2
new-array v0, v0, [B
sput-object v0, Lcom/alivc/component/capture/VideoPusher;->buffer:[B
.line 586
:cond_140
:goto_140
sget-object v0, Lcom/alivc/component/capture/VideoPusher;->buffer1:[B
if-nez v0, :cond_15b
.line 587
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v0}, Lcom/alivc/component/capture/VideoParam;->getWidth()I
move-result v0
iget-object v6, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v6}, Lcom/alivc/component/capture/VideoParam;->getHeight()I
move-result v6
mul-int v0, v0, v6
mul-int/lit8 v0, v0, 0x3
div-int/lit8 v0, v0, 0x2
new-array v0, v0, [B
sput-object v0, Lcom/alivc/component/capture/VideoPusher;->buffer1:[B
goto :goto_186
.line 589
:cond_15b
array-length v0, v0
iget-object v6, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v6}, Lcom/alivc/component/capture/VideoParam;->getWidth()I
move-result v6
iget-object v7, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v7}, Lcom/alivc/component/capture/VideoParam;->getHeight()I
move-result v7
mul-int v6, v6, v7
mul-int/lit8 v6, v6, 0x3
div-int/lit8 v6, v6, 0x2
if-ge v0, v6, :cond_186
.line 591
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v0}, Lcom/alivc/component/capture/VideoParam;->getWidth()I
move-result v0
iget-object v6, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v6}, Lcom/alivc/component/capture/VideoParam;->getHeight()I
move-result v6
mul-int v0, v0, v6
mul-int/lit8 v0, v0, 0x3
div-int/lit8 v0, v0, 0x2
new-array v0, v0, [B
sput-object v0, Lcom/alivc/component/capture/VideoPusher;->buffer1:[B
.line 594
:cond_186
:goto_186
sget-object v0, Lcom/alivc/component/capture/VideoPusher;->buffer2:[B
if-nez v0, :cond_1a1
.line 595
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v0}, Lcom/alivc/component/capture/VideoParam;->getWidth()I
move-result v0
iget-object v6, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v6}, Lcom/alivc/component/capture/VideoParam;->getHeight()I
move-result v6
mul-int v0, v0, v6
mul-int/lit8 v0, v0, 0x3
div-int/lit8 v0, v0, 0x2
new-array v0, v0, [B
sput-object v0, Lcom/alivc/component/capture/VideoPusher;->buffer2:[B
goto :goto_1cc
.line 597
:cond_1a1
array-length v0, v0
iget-object v6, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v6}, Lcom/alivc/component/capture/VideoParam;->getWidth()I
move-result v6
iget-object v7, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v7}, Lcom/alivc/component/capture/VideoParam;->getHeight()I
move-result v7
mul-int v6, v6, v7
mul-int/lit8 v6, v6, 0x3
div-int/lit8 v6, v6, 0x2
if-ge v0, v6, :cond_1cc
.line 599
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v0}, Lcom/alivc/component/capture/VideoParam;->getWidth()I
move-result v0
iget-object v6, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v6}, Lcom/alivc/component/capture/VideoParam;->getHeight()I
move-result v6
mul-int v0, v0, v6
mul-int/lit8 v0, v0, 0x3
div-int/lit8 v0, v0, 0x2
new-array v0, v0, [B
sput-object v0, Lcom/alivc/component/capture/VideoPusher;->buffer2:[B
.line 602
:cond_1cc
:goto_1cc
iget-boolean v0, p0, Lcom/alivc/component/capture/VideoPusher;->mSurfaceCbMode:Z
if-eqz v0, :cond_1dc
iget v0, p0, Lcom/alivc/component/capture/VideoPusher;->mSurfaceTextureId:I
if-ltz v0, :cond_1dc
.line 603
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mSurfaceTexture:Landroid/graphics/SurfaceTexture;
iget-object v1, p0, Lcom/alivc/component/capture/VideoPusher;->mOnFrameAvailableListener:Landroid/graphics/SurfaceTexture$OnFrameAvailableListener;
invoke-virtual {v0, v1}, Landroid/graphics/SurfaceTexture;->setOnFrameAvailableListener(Landroid/graphics/SurfaceTexture$OnFrameAvailableListener;)V
goto :goto_1fd
.line 605
:cond_1dc
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
invoke-virtual {v0, v1}, Landroid/hardware/Camera;->setPreviewCallbackWithBuffer(Landroid/hardware/Camera$PreviewCallback;)V
.line 606
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
sget-object v1, Lcom/alivc/component/capture/VideoPusher;->buffer:[B
invoke-virtual {v0, v1}, Landroid/hardware/Camera;->addCallbackBuffer([B)V
.line 607
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
sget-object v1, Lcom/alivc/component/capture/VideoPusher;->buffer1:[B
invoke-virtual {v0, v1}, Landroid/hardware/Camera;->addCallbackBuffer([B)V
.line 608
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
sget-object v1, Lcom/alivc/component/capture/VideoPusher;->buffer2:[B
invoke-virtual {v0, v1}, Landroid/hardware/Camera;->addCallbackBuffer([B)V
.line 609
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
iget-object v1, p0, Lcom/alivc/component/capture/VideoPusher;->mPreviewCallback:Landroid/hardware/Camera$PreviewCallback;
invoke-virtual {v0, v1}, Landroid/hardware/Camera;->setPreviewCallbackWithBuffer(Landroid/hardware/Camera$PreviewCallback;)V
.line 611
:goto_1fd
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
iget-object v1, p0, Lcom/alivc/component/capture/VideoPusher;->mSurfaceTexture:Landroid/graphics/SurfaceTexture;
invoke-virtual {v0, v1}, Landroid/hardware/Camera;->setPreviewTexture(Landroid/graphics/SurfaceTexture;)V
.line 612
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
invoke-virtual {v0}, Landroid/hardware/Camera;->startPreview()V
.line 613
iput-boolean v2, p0, Lcom/alivc/component/capture/VideoPusher;->mPreviewRunning:Z
.line 614
iput-boolean v3, p0, Lcom/alivc/component/capture/VideoPusher;->mCameraDisConnected:Z
.line 615
const-string/jumbo v0, "start preivew over."
invoke-static {v5, v0}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
.line 617
return v2
.line 545
:cond_214
iget-object v2, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
invoke-virtual {v2, v1}, Landroid/hardware/Camera;->setPreviewCallback(Landroid/hardware/Camera$PreviewCallback;)V
.line 546
iget-object v2, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
invoke-virtual {v2}, Landroid/hardware/Camera;->release()V
.line 547
iput-object v1, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
.line 548
new-instance v1, Ljava/lang/Exception;
invoke-direct {v1, v0}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
throw v1
.line 532
:catch_226
move-exception v2
.line 533
.local v2, "e":Ljava/lang/Exception;
iget-object v3, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
invoke-virtual {v3, v1}, Landroid/hardware/Camera;->setPreviewCallback(Landroid/hardware/Camera$PreviewCallback;)V
.line 534
iget-object v3, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
invoke-virtual {v3}, Landroid/hardware/Camera;->release()V
.line 535
iput-object v1, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
.line 536
new-instance v1, Ljava/lang/Exception;
invoke-direct {v1, v0}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
throw v1
.line 523
.end local v2 # "e":Ljava/lang/Exception;
.end local v4 # "parameters":Landroid/hardware/Camera$Parameters;
:cond_239
new-instance v1, Ljava/lang/Exception;
invoke-direct {v1, v0}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
throw v1
.line 514
:catch_23f
move-exception v2
.line 515
.restart local v2 # "e":Ljava/lang/Exception;
iget-object v3, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
if-eqz v3, :cond_24c
.line 516
invoke-virtual {v3, v1}, Landroid/hardware/Camera;->setPreviewCallback(Landroid/hardware/Camera$PreviewCallback;)V
.line 517
iget-object v3, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
invoke-virtual {v3}, Landroid/hardware/Camera;->release()V
.line 519
:cond_24c
iput-object v1, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
.line 520
new-instance v1, Ljava/lang/Exception;
invoke-direct {v1, v0}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
throw v1
.end method
.method private static turnLightOff(Landroid/hardware/Camera;)V
.registers 7
.param p0, "mCamera" # Landroid/hardware/Camera;
.line 263
if-nez p0, :cond_3
.line 264
return-void
.line 266
:cond_3
invoke-virtual {p0}, Landroid/hardware/Camera;->getParameters()Landroid/hardware/Camera$Parameters;
move-result-object v0
.line 267
.local v0, "parameters":Landroid/hardware/Camera$Parameters;
if-nez v0, :cond_a
.line 268
return-void
.line 270
:cond_a
invoke-virtual {v0}, Landroid/hardware/Camera$Parameters;->getSupportedFlashModes()Ljava/util/List;
move-result-object v1
.line 271
.local v1, "flashModes":Ljava/util/List;, "Ljava/util/List<Ljava/lang/String;>;"
invoke-virtual {v0}, Landroid/hardware/Camera$Parameters;->getFlashMode()Ljava/lang/String;
move-result-object v2
.line 273
.local v2, "flashMode":Ljava/lang/String;
if-nez v1, :cond_15
.line 274
return-void
.line 276
:cond_15
const-string v3, "off"
invoke-virtual {v3, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v4
if-nez v4, :cond_38
.line 278
invoke-interface {v1, v3}, Ljava/util/List;->contains(Ljava/lang/Object;)Z
move-result v4
const-string v5, "VideoPusher"
if-eqz v4, :cond_33
.line 279
invoke-virtual {v0, v3}, Landroid/hardware/Camera$Parameters;->setFlashMode(Ljava/lang/String;)V
.line 281
:try_start_28
invoke-virtual {p0, v0}, Landroid/hardware/Camera;->setParameters(Landroid/hardware/Camera$Parameters;)V
:try_end_2b
.catchall {:try_start_28 .. :try_end_2b} :catchall_2c
.line 284
:goto_2b
goto :goto_38
.line 282
:catchall_2c
move-exception v3
.line 283
.local v3, "t":Ljava/lang/Throwable;
const-string v4, "VideoPusherJNI set flash off mode failed"
invoke-static {v5, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
.end local v3 # "t":Ljava/lang/Throwable;
goto :goto_2b
.line 286
:cond_33
const-string v3, "FLASH_MODE_OFF not supported"
invoke-static {v5, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
.line 289
:cond_38
:goto_38
return-void
.end method
.method private static turnLightOn(Landroid/hardware/Camera;)V
.registers 7
.param p0, "mCamera" # Landroid/hardware/Camera;
.line 234
if-nez p0, :cond_3
.line 235
return-void
.line 237
:cond_3
invoke-virtual {p0}, Landroid/hardware/Camera;->getParameters()Landroid/hardware/Camera$Parameters;
move-result-object v0
.line 238
.local v0, "parameters":Landroid/hardware/Camera$Parameters;
if-nez v0, :cond_a
.line 239
return-void
.line 241
:cond_a
invoke-virtual {v0}, Landroid/hardware/Camera$Parameters;->getSupportedFlashModes()Ljava/util/List;
move-result-object v1
.line 243
.local v1, "flashModes":Ljava/util/List;, "Ljava/util/List<Ljava/lang/String;>;"
if-nez v1, :cond_11
.line 245
return-void
.line 247
:cond_11
invoke-virtual {v0}, Landroid/hardware/Camera$Parameters;->getFlashMode()Ljava/lang/String;
move-result-object v2
.line 248
.local v2, "flashMode":Ljava/lang/String;
const-string/jumbo v3, "torch"
invoke-virtual {v3, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v4
if-nez v4, :cond_33
.line 250
invoke-interface {v1, v3}, Ljava/util/List;->contains(Ljava/lang/Object;)Z
move-result v4
if-eqz v4, :cond_33
.line 251
invoke-virtual {v0, v3}, Landroid/hardware/Camera$Parameters;->setFlashMode(Ljava/lang/String;)V
.line 253
:try_start_27
invoke-virtual {p0, v0}, Landroid/hardware/Camera;->setParameters(Landroid/hardware/Camera$Parameters;)V
:try_end_2a
.catchall {:try_start_27 .. :try_end_2a} :catchall_2b
.line 256
goto :goto_33
.line 254
:catchall_2b
move-exception v3
.line 255
.local v3, "t":Ljava/lang/Throwable;
const-string v4, "VideoPusher"
const-string v5, "VideoPusherJNI set flash mode on failed"
invoke-static {v4, v5}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
.line 260
.end local v3 # "t":Ljava/lang/Throwable;
:cond_33
:goto_33
return-void
.end method
# virtual methods
.method public destroy()V
.registers 3
.line 292
const-string v0, "VideoPusher"
const-string v1, "destroy."
invoke-static {v0, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
.line 293
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mContext:Landroid/content/Context;
instance-of v1, v0, Landroid/app/Application;
if-eqz v1, :cond_14
.line 294
check-cast v0, Landroid/app/Application;
iget-object v1, p0, Lcom/alivc/component/capture/VideoPusher;->mActivityCallbacks:Landroid/app/Application$ActivityLifecycleCallbacks;
invoke-virtual {v0, v1}, Landroid/app/Application;->unregisterActivityLifecycleCallbacks(Landroid/app/Application$ActivityLifecycleCallbacks;)V
.line 296
:cond_14
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mSurfaceTexture:Landroid/graphics/SurfaceTexture;
if-eqz v0, :cond_1b
.line 297
invoke-virtual {v0}, Landroid/graphics/SurfaceTexture;->release()V
.line 299
:cond_1b
const/4 v0, 0x0
iput-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mSurfaceTexture:Landroid/graphics/SurfaceTexture;
.line 300
iput-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
.line 301
iput-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mContext:Landroid/content/Context;
.line 302
return-void
.end method
.method public getCameraSource()I
.registers 2
.line 854
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v0}, Lcom/alivc/component/capture/VideoParam;->getCameraId()I
move-result v0
return v0
.end method
.method public getCurrentExposure()I
.registers 3
.line 858
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
if-eqz v0, :cond_d
.line 859
invoke-virtual {v0}, Landroid/hardware/Camera;->getParameters()Landroid/hardware/Camera$Parameters;
move-result-object v0
.line 860
.local v0, "parameters":Landroid/hardware/Camera$Parameters;
invoke-virtual {v0}, Landroid/hardware/Camera$Parameters;->getExposureCompensation()I
move-result v1
return v1
.line 862
.end local v0 # "parameters":Landroid/hardware/Camera$Parameters;
:cond_d
const/4 v0, 0x0
return v0
.end method
.method public getCurrentFps()I
.registers 2
.line 1050
iget v0, p0, Lcom/alivc/component/capture/VideoPusher;->mCurrentFps:I
return v0
.end method
.method public getCurrentZoom()I
.registers 3
.line 881
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
if-eqz v0, :cond_13
.line 882
invoke-virtual {v0}, Landroid/hardware/Camera;->getParameters()Landroid/hardware/Camera$Parameters;
move-result-object v0
.line 883
.local v0, "parameters":Landroid/hardware/Camera$Parameters;
invoke-virtual {v0}, Landroid/hardware/Camera$Parameters;->isZoomSupported()Z
move-result v1
if-eqz v1, :cond_13
.line 884
invoke-virtual {v0}, Landroid/hardware/Camera$Parameters;->getZoom()I
move-result v1
return v1
.line 888
.end local v0 # "parameters":Landroid/hardware/Camera$Parameters;
:cond_13
const/4 v0, 0x1
return v0
.end method
.method public getLastCaptureTime()J
.registers 3
.line 1042
iget-wide v0, p0, Lcom/alivc/component/capture/VideoPusher;->mLastCaptureTime:J
return-wide v0
.end method
.method public getMaxZoom()I
.registers 3
.line 892
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
if-eqz v0, :cond_13
.line 893
invoke-virtual {v0}, Landroid/hardware/Camera;->getParameters()Landroid/hardware/Camera$Parameters;
move-result-object v0
.line 894
.local v0, "parameters":Landroid/hardware/Camera$Parameters;
invoke-virtual {v0}, Landroid/hardware/Camera$Parameters;->isZoomSupported()Z
move-result v1
if-eqz v1, :cond_13
.line 895
invoke-virtual {v0}, Landroid/hardware/Camera$Parameters;->getMaxZoom()I
move-result v1
return v1
.line 899
.end local v0 # "parameters":Landroid/hardware/Camera$Parameters;
:cond_13
const/4 v0, 0x0
return v0
.end method
.method public getTransformMatrix([F)V
.registers 4
.param p1, "matrix" # [F
.line 1062
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mSurfaceTexture:Landroid/graphics/SurfaceTexture;
if-nez v0, :cond_c
.line 1063
const-string v0, "VideoPusherRotation"
const-string v1, "getTransformMatrix return null !"
invoke-static {v0, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
.line 1064
return-void
.line 1066
:cond_c
invoke-virtual {v0, p1}, Landroid/graphics/SurfaceTexture;->getTransformMatrix([F)V
.line 1067
return-void
.end method
.method public init(IIIIIIZZLandroid/content/Context;)V
.registers 23
.param p1, "source" # I
.param p2, "width" # I
.param p3, "height" # I
.param p4, "fps" # I
.param p5, "rotationMode" # I
.param p6, "customRotation" # I
.param p7, "surfaceCBMode" # Z
.param p8, "focusBySensor" # Z
.param p9, "context" # Landroid/content/Context;
.line 144
move-object v0, p0
move/from16 v1, p7
move-object/from16 v2, p9
if-eqz v2, :cond_c
invoke-virtual/range {p9 .. p9}, Landroid/content/Context;->getApplicationContext()Landroid/content/Context;
move-result-object v3
goto :goto_d
:cond_c
const/4 v3, 0x0
:goto_d
iput-object v3, v0, Lcom/alivc/component/capture/VideoPusher;->mContext:Landroid/content/Context;
.line 145
const/4 v4, 0x0
iput-boolean v4, v0, Lcom/alivc/component/capture/VideoPusher;->mCameraDisConnected:Z
.line 146
instance-of v4, v3, Landroid/app/Application;
if-eqz v4, :cond_1d
.line 147
check-cast v3, Landroid/app/Application;
iget-object v4, v0, Lcom/alivc/component/capture/VideoPusher;->mActivityCallbacks:Landroid/app/Application$ActivityLifecycleCallbacks;
invoke-virtual {v3, v4}, Landroid/app/Application;->registerActivityLifecycleCallbacks(Landroid/app/Application$ActivityLifecycleCallbacks;)V
.line 149
:cond_1d
move/from16 v3, p5
invoke-direct {p0, v3}, Lcom/alivc/component/capture/VideoPusher;->convertRotationMode(I)I
move-result v10
.line 150
.local v10, "rotation":I
new-instance v11, Lcom/alivc/component/capture/VideoParam;
move-object v4, v11
move v5, p2
move/from16 v6, p3
move/from16 v7, p4
move v8, p1
move v9, v10
invoke-direct/range {v4 .. v9}, Lcom/alivc/component/capture/VideoParam;-><init>(IIIII)V
iput-object v11, v0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
.line 151
iput-boolean v1, v0, Lcom/alivc/component/capture/VideoPusher;->mSurfaceCbMode:Z
.line 152
move/from16 v4, p6
iput v4, v0, Lcom/alivc/component/capture/VideoPusher;->mCustomRotation:I
.line 153
if-nez v1, :cond_43
.line 154
new-instance v5, Landroid/graphics/SurfaceTexture;
const/16 v6, 0xa
invoke-direct {v5, v6}, Landroid/graphics/SurfaceTexture;-><init>(I)V
iput-object v5, v0, Lcom/alivc/component/capture/VideoPusher;->mSurfaceTexture:Landroid/graphics/SurfaceTexture;
.line 156
:cond_43
iget-object v5, v0, Lcom/alivc/component/capture/VideoPusher;->mSensorManager:Landroid/hardware/SensorManager;
if-nez v5, :cond_54
if-eqz v2, :cond_54
.line 157
const-string/jumbo v5, "sensor"
invoke-virtual {v2, v5}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v5
check-cast v5, Landroid/hardware/SensorManager;
iput-object v5, v0, Lcom/alivc/component/capture/VideoPusher;->mSensorManager:Landroid/hardware/SensorManager;
.line 160
:cond_54
iget-object v5, v0, Lcom/alivc/component/capture/VideoPusher;->mAccelSensor:Landroid/hardware/Sensor;
const/4 v6, 0x1
if-nez v5, :cond_63
iget-object v5, v0, Lcom/alivc/component/capture/VideoPusher;->mSensorManager:Landroid/hardware/SensorManager;
if-eqz v5, :cond_63
.line 161
invoke-virtual {v5, v6}, Landroid/hardware/SensorManager;->getDefaultSensor(I)Landroid/hardware/Sensor;
move-result-object v5
iput-object v5, v0, Lcom/alivc/component/capture/VideoPusher;->mAccelSensor:Landroid/hardware/Sensor;
.line 164
:cond_63
iget-object v5, v0, Lcom/alivc/component/capture/VideoPusher;->mMagneticSensor:Landroid/hardware/Sensor;
if-nez v5, :cond_72
iget-object v5, v0, Lcom/alivc/component/capture/VideoPusher;->mSensorManager:Landroid/hardware/SensorManager;
if-eqz v5, :cond_72
.line 165
const/4 v7, 0x2
invoke-virtual {v5, v7}, Landroid/hardware/SensorManager;->getDefaultSensor(I)Landroid/hardware/Sensor;
move-result-object v5
iput-object v5, v0, Lcom/alivc/component/capture/VideoPusher;->mMagneticSensor:Landroid/hardware/Sensor;
.line 167
:cond_72
sget-object v5, Landroid/os/Build;->MODEL:Ljava/lang/String;
const-string v7, "MI MAX"
invoke-virtual {v5, v7}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v5
if-nez v5, :cond_90
sget-object v5, Landroid/os/Build;->MODEL:Ljava/lang/String;
const-string v7, "MIX"
invoke-virtual {v7, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v5
if-nez v5, :cond_90
sget-object v5, Landroid/os/Build;->MODEL:Ljava/lang/String;
const-string v7, "MIX 2"
invoke-virtual {v7, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v5
if-eqz v5, :cond_92
.line 168
:cond_90
iput-boolean v6, v0, Lcom/alivc/component/capture/VideoPusher;->mSensorFocus:Z
.line 170
:cond_92
const-string v5, "VideoPusher"
if-eqz p8, :cond_9e
.line 171
iput-boolean v6, v0, Lcom/alivc/component/capture/VideoPusher;->mSensorFocus:Z
.line 172
const-string/jumbo v6, "set focus by Sensor"
invoke-static {v5, v6}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
.line 174
:cond_9e
iget-object v6, v0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v6}, Lcom/alivc/component/capture/VideoParam;->getWidth()I
move-result v6
iput v6, v0, Lcom/alivc/component/capture/VideoPusher;->mDestWidth:I
.line 175
iget-object v6, v0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v6}, Lcom/alivc/component/capture/VideoParam;->getHeight()I
move-result v6
iput v6, v0, Lcom/alivc/component/capture/VideoPusher;->mDestHeight:I
.line 176
new-instance v6, Ljava/lang/StringBuilder;
invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
const-string v7, "====> Init src: "
invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move v7, p1
invoke-virtual {v6, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string v8, ", width: "
invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move v8, p2
invoke-virtual {v6, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string v9, ", height:"
invoke-virtual {v6, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move/from16 v9, p3
invoke-virtual {v6, v9}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string v11, ", fps:"
invoke-virtual {v6, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move/from16 v11, p4
invoke-virtual {v6, v11}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string v12, ", rotation:"
invoke-virtual {v6, v12}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v6, v10}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string v12, ", mSurfaceCbMode: "
invoke-virtual {v6, v12}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-boolean v12, v0, Lcom/alivc/component/capture/VideoPusher;->mSurfaceCbMode:Z
invoke-virtual {v6, v12}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v6
invoke-static {v5, v6}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
.line 178
return-void
.end method
.method public isPreviewRunning()Z
.registers 2
.line 1143
iget-boolean v0, p0, Lcom/alivc/component/capture/VideoPusher;->mPreviewRunning:Z
return v0
.end method
.method public isSupportAutoFocus()Z
.registers 4
.line 825
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
if-eqz v0, :cond_23
.line 826
invoke-virtual {v0}, Landroid/hardware/Camera;->getParameters()Landroid/hardware/Camera$Parameters;
move-result-object v0
.line 827
.local v0, "parameters":Landroid/hardware/Camera$Parameters;
invoke-virtual {v0}, Landroid/hardware/Camera$Parameters;->getSupportedFocusModes()Ljava/util/List;
move-result-object v1
if-eqz v1, :cond_23
invoke-virtual {v0}, Landroid/hardware/Camera$Parameters;->getSupportedFocusModes()Ljava/util/List;
move-result-object v1
invoke-interface {v1}, Ljava/util/List;->size()I
move-result v1
if-lez v1, :cond_23
.line 828
invoke-virtual {v0}, Landroid/hardware/Camera$Parameters;->getSupportedFocusModes()Ljava/util/List;
move-result-object v1
const-string v2, "continuous-video"
invoke-interface {v1, v2}, Ljava/util/List;->contains(Ljava/lang/Object;)Z
move-result v1
return v1
.line 831
.end local v0 # "parameters":Landroid/hardware/Camera$Parameters;
:cond_23
const/4 v0, 0x0
return v0
.end method
.method public isSupportExposurePoint()Z
.registers 3
.line 936
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
if-eqz v0, :cond_12
.line 938
invoke-virtual {v0}, Landroid/hardware/Camera;->getParameters()Landroid/hardware/Camera$Parameters;
move-result-object v0
.line 939
.local v0, "parameters":Landroid/hardware/Camera$Parameters;
if-eqz v0, :cond_12
invoke-virtual {v0}, Landroid/hardware/Camera$Parameters;->getMaxNumMeteringAreas()I
move-result v1
if-lez v1, :cond_12
.line 940
const/4 v1, 0x1
return v1
.line 943
.end local v0 # "parameters":Landroid/hardware/Camera$Parameters;
:cond_12
const/4 v0, 0x0
return v0
.end method
.method public isSupportFlash()Z
.registers 4
.line 835
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
if-eqz v0, :cond_24
.line 836
invoke-virtual {v0}, Landroid/hardware/Camera;->getParameters()Landroid/hardware/Camera$Parameters;
move-result-object v0
.line 837
.local v0, "parameters":Landroid/hardware/Camera$Parameters;
invoke-virtual {v0}, Landroid/hardware/Camera$Parameters;->getSupportedFlashModes()Ljava/util/List;
move-result-object v1
if-eqz v1, :cond_24
invoke-virtual {v0}, Landroid/hardware/Camera$Parameters;->getSupportedFlashModes()Ljava/util/List;
move-result-object v1
invoke-interface {v1}, Ljava/util/List;->size()I
move-result v1
if-lez v1, :cond_24
.line 838
invoke-virtual {v0}, Landroid/hardware/Camera$Parameters;->getSupportedFlashModes()Ljava/util/List;
move-result-object v1
const-string/jumbo v2, "torch"
invoke-interface {v1, v2}, Ljava/util/List;->contains(Ljava/lang/Object;)Z
move-result v1
return v1
.line 841
.end local v0 # "parameters":Landroid/hardware/Camera$Parameters;
:cond_24
const/4 v0, 0x0
return v0
.end method
.method public isSupportFocusPoint()Z
.registers 3
.line 925
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
if-eqz v0, :cond_12
.line 927
invoke-virtual {v0}, Landroid/hardware/Camera;->getParameters()Landroid/hardware/Camera$Parameters;
move-result-object v0
.line 928
.local v0, "parameters":Landroid/hardware/Camera$Parameters;
if-eqz v0, :cond_12
invoke-virtual {v0}, Landroid/hardware/Camera$Parameters;->getMaxNumFocusAreas()I
move-result v1
if-lez v1, :cond_12
.line 929
const/4 v1, 0x1
return v1
.line 932
.end local v0 # "parameters":Landroid/hardware/Camera$Parameters;
:cond_12
const/4 v0, 0x0
return v0
.end method
.method public onError(ILandroid/hardware/Camera;)V
.registers 5
.param p1, "error" # I
.param p2, "camera" # Landroid/hardware/Camera;
.line 1148
const/4 v0, 0x1
const/4 v1, 0x2
if-eq p1, v1, :cond_6
if-ne p1, v0, :cond_8
.line 1149
:cond_6
iput-boolean v0, p0, Lcom/alivc/component/capture/VideoPusher;->mCameraDisConnected:Z
.line 1151
:cond_8
return-void
.end method
.method public pause(Z)V
.registers 4
.param p1, "useEmptyData" # Z
.line 621
const-string v0, "VideoPusher"
const-string v1, "pause preview."
invoke-static {v0, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
.line 622
const/4 v0, 0x1
iput-boolean v0, p0, Lcom/alivc/component/capture/VideoPusher;->mPause:Z
.line 623
return-void
.end method
.method public resume()V
.registers 4
.line 626
const-string v0, "VideoPusher"
const-string v1, "resume preview."
invoke-static {v0, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
.line 628
iget-boolean v0, p0, Lcom/alivc/component/capture/VideoPusher;->mPause:Z
if-nez v0, :cond_c
.line 629
return-void
.line 631
:cond_c
const/4 v0, 0x0
invoke-virtual {p0, v0}, Lcom/alivc/component/capture/VideoPusher;->stopInner(Z)V
.line 633
:try_start_10
invoke-virtual {p0}, Lcom/alivc/component/capture/VideoPusher;->startInner()V
:try_end_13
.catch Ljava/lang/Exception; {:try_start_10 .. :try_end_13} :catch_17
.line 638
nop
.line 639
iput-boolean v0, p0, Lcom/alivc/component/capture/VideoPusher;->mPause:Z
.line 640
return-void
.line 635
:catch_17
move-exception v0
.line 636
.local v0, "e":Ljava/lang/Exception;
const-string v1, "VideoPusherJNI"
const-string v2, "VideoPusherJNI resume Failed"
invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
.line 637
return-void
.end method
.method public setAutoFocus(Z)V
.registers 6
.param p1, "autoFocus" # Z
.line 796
sget-object v0, Landroid/os/Build;->MODEL:Ljava/lang/String;
const-string v1, "OPPO A79k"
invoke-virtual {v0, v1}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_b
.line 797
const/4 p1, 0x0
.line 799
:cond_b
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
if-eqz v0, :cond_60
.line 800
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v0}, Lcom/alivc/component/capture/VideoParam;->getCameraId()I
move-result v0
if-nez v0, :cond_60
.line 801
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
invoke-virtual {v0}, Landroid/hardware/Camera;->cancelAutoFocus()V
.line 802
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
invoke-virtual {v0}, Landroid/hardware/Camera;->getParameters()Landroid/hardware/Camera$Parameters;
move-result-object v0
.line 803
.local v0, "parameters":Landroid/hardware/Camera$Parameters;
const-string v1, "auto"
if-eqz p1, :cond_3b
.line 804
iget-boolean v2, p0, Lcom/alivc/component/capture/VideoPusher;->mSensorFocus:Z
const/4 v3, 0x1
if-ne v2, v3, :cond_35
.line 805
invoke-virtual {v0, v1}, Landroid/hardware/Camera$Parameters;->setFocusMode(Ljava/lang/String;)V
.line 806
iget-object v1, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
const/4 v2, 0x0
invoke-virtual {v1, v2}, Landroid/hardware/Camera;->autoFocus(Landroid/hardware/Camera$AutoFocusCallback;)V
goto :goto_3e
.line 808
:cond_35
const-string v1, "continuous-video"
invoke-virtual {v0, v1}, Landroid/hardware/Camera$Parameters;->setFocusMode(Ljava/lang/String;)V
goto :goto_3e
.line 811
:cond_3b
invoke-virtual {v0, v1}, Landroid/hardware/Camera$Parameters;->setFocusMode(Ljava/lang/String;)V
.line 814
:goto_3e
:try_start_3e
iget-object v1, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
invoke-virtual {v1, v0}, Landroid/hardware/Camera;->setParameters(Landroid/hardware/Camera$Parameters;)V
:try_end_43
.catchall {:try_start_3e .. :try_end_43} :catchall_44
.line 817
goto :goto_60
.line 815
:catchall_44
move-exception v1
.line 816
.local v1, "t":Ljava/lang/Throwable;
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "VideoPusherJNI set autofocus "
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
const-string v3, " mode failed"
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
const-string v3, "VideoPusher"
invoke-static {v3, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
.line 821
.end local v0 # "parameters":Landroid/hardware/Camera$Parameters;
.end local v1 # "t":Ljava/lang/Throwable;
:cond_60
:goto_60
iput-boolean p1, p0, Lcom/alivc/component/capture/VideoPusher;->mAutoFocus:Z
.line 822
return-void
.end method
.method public setExposure(I)V
.registers 4
.param p1, "exposure" # I
.line 845
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
if-eqz v0, :cond_1d
.line 846
invoke-virtual {v0}, Landroid/hardware/Camera;->getParameters()Landroid/hardware/Camera$Parameters;
move-result-object v0
.line 847
.local v0, "parameters":Landroid/hardware/Camera$Parameters;
invoke-virtual {v0}, Landroid/hardware/Camera$Parameters;->getMinExposureCompensation()I
move-result v1
if-lt p1, v1, :cond_1d
invoke-virtual {v0}, Landroid/hardware/Camera$Parameters;->getMaxExposureCompensation()I
move-result v1
if-gt p1, v1, :cond_1d
.line 848
iget-object v1, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v1}, Lcom/alivc/component/capture/VideoParam;->getCurrentZoom()I
move-result v1
invoke-virtual {v0, v1}, Landroid/hardware/Camera$Parameters;->setExposureCompensation(I)V
.line 851
.end local v0 # "parameters":Landroid/hardware/Camera$Parameters;
:cond_1d
return-void
.end method
.method public setExposurePoint(FF)V
.registers 16
.param p1, "xRatio" # F
.param p2, "yRatio" # F
.line 999
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
if-nez v0, :cond_5
.line 1000
return-void
.line 1003
:cond_5
invoke-virtual {v0}, Landroid/hardware/Camera;->getParameters()Landroid/hardware/Camera$Parameters;
move-result-object v0
.line 1004
.local v0, "parameters":Landroid/hardware/Camera$Parameters;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "MeteringAreas is "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Landroid/hardware/Camera$Parameters;->getMaxNumMeteringAreas()I
move-result v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
const-string v2, "VideoPusher"
invoke-static {v2, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
.line 1005
if-eqz v0, :cond_2c
invoke-virtual {v0}, Landroid/hardware/Camera$Parameters;->getMaxNumMeteringAreas()I
move-result v1
if-nez v1, :cond_2c
.line 1006
return-void
.line 1010
:cond_2c
const/16 v1, 0xc8
.line 1011
.local v1, "areaSize":I
const/high16 v3, 0x44fa0000 # 2000.0f
mul-float v4, p1, v3
const/high16 v5, 0x447a0000 # 1000.0f
sub-float/2addr v4, v5
float-to-int v4, v4
.line 1012
.local v4, "x":I
mul-float v3, v3, p2
sub-float/2addr v3, v5
float-to-int v3, v3
.line 1013
.local v3, "y":I
div-int/lit8 v5, v1, 0x2
sub-int v5, v4, v5
const/16 v6, 0x3e8
const/16 v7, -0x3e8
invoke-direct {p0, v5, v7, v6}, Lcom/alivc/component/capture/VideoPusher;->clamp(III)I
move-result v5
.line 1014
.local v5, "left":I
div-int/lit8 v8, v1, 0x2
sub-int v8, v3, v8
invoke-direct {p0, v8, v7, v6}, Lcom/alivc/component/capture/VideoPusher;->clamp(III)I
move-result v8
.line 1015
.local v8, "top":I
div-int/lit8 v9, v1, 0x2
add-int/2addr v9, v5
invoke-direct {p0, v9, v7, v6}, Lcom/alivc/component/capture/VideoPusher;->clamp(III)I
move-result v9
.line 1016
.local v9, "right":I
div-int/lit8 v10, v1, 0x2
add-int/2addr v10, v8
invoke-direct {p0, v10, v7, v6}, Lcom/alivc/component/capture/VideoPusher;->clamp(III)I
move-result v6
.line 1019
.local v6, "bottom":I
new-instance v7, Landroid/hardware/Camera$Area;
new-instance v10, Landroid/graphics/Rect;
invoke-direct {v10, v5, v8, v9, v6}, Landroid/graphics/Rect;-><init>(IIII)V
const/4 v11, 0x1
invoke-direct {v7, v10, v11}, Landroid/hardware/Camera$Area;-><init>(Landroid/graphics/Rect;I)V
.line 1020
.local v7, "area":Landroid/hardware/Camera$Area;
new-instance v10, Ljava/util/ArrayList;
invoke-direct {v10}, Ljava/util/ArrayList;-><init>()V
.line 1021
.local v10, "areas":Ljava/util/List;, "Ljava/util/List<Landroid/hardware/Camera$Area;>;"
invoke-interface {v10, v7}, Ljava/util/List;->add(Ljava/lang/Object;)Z
.line 1022
invoke-virtual {v0, v10}, Landroid/hardware/Camera$Parameters;->setMeteringAreas(Ljava/util/List;)V
.line 1025
:try_start_72
iget-object v11, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
invoke-virtual {v11, v0}, Landroid/hardware/Camera;->setParameters(Landroid/hardware/Camera$Parameters;)V
:try_end_77
.catchall {:try_start_72 .. :try_end_77} :catchall_78
.line 1028
goto :goto_7e
.line 1026
:catchall_78
move-exception v11
.line 1027
.local v11, "t":Ljava/lang/Throwable;
const-string v12, "VideoPusherJNI set Metering area failed"
invoke-static {v2, v12}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
.line 1031
.end local v11 # "t":Ljava/lang/Throwable;
:goto_7e
return-void
.end method
.method public setFlashOn(Z)V
.registers 3
.param p1, "flash" # Z
.line 785
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
if-eqz v0, :cond_19
.line 786
if-eqz p1, :cond_14
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v0}, Lcom/alivc/component/capture/VideoParam;->getCameraId()I
move-result v0
if-nez v0, :cond_14
.line 787
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
invoke-static {v0}, Lcom/alivc/component/capture/VideoPusher;->turnLightOn(Landroid/hardware/Camera;)V
goto :goto_19
.line 789
:cond_14
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
invoke-static {v0}, Lcom/alivc/component/capture/VideoPusher;->turnLightOff(Landroid/hardware/Camera;)V
.line 792
:cond_19
:goto_19
iput-boolean p1, p0, Lcom/alivc/component/capture/VideoPusher;->mFlashOn:Z
.line 793
return-void
.end method
.method public setFocus(FF)V
.registers 16
.param p1, "xRatio" # F
.param p2, "yRatio" # F
.line 959
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
if-nez v0, :cond_5
.line 960
return-void
.line 963
:cond_5
invoke-virtual {v0}, Landroid/hardware/Camera;->getParameters()Landroid/hardware/Camera$Parameters;
move-result-object v0
.line 964
.local v0, "parameters":Landroid/hardware/Camera$Parameters;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "focusAreas is "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Landroid/hardware/Camera$Parameters;->getMaxNumFocusAreas()I
move-result v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
const-string v2, "VideoPusher"
invoke-static {v2, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
.line 966
if-eqz v0, :cond_2c
invoke-virtual {v0}, Landroid/hardware/Camera$Parameters;->getMaxNumFocusAreas()I
move-result v1
if-nez v1, :cond_2c
.line 967
return-void
.line 970
:cond_2c
const-string v1, "auto"
invoke-virtual {v0, v1}, Landroid/hardware/Camera$Parameters;->setFocusMode(Ljava/lang/String;)V
.line 972
const/16 v1, 0xc8
.line 973
.local v1, "areaSize":I
const/high16 v3, 0x44fa0000 # 2000.0f
mul-float v4, p1, v3
const/high16 v5, 0x447a0000 # 1000.0f
sub-float/2addr v4, v5
float-to-int v4, v4
.line 974
.local v4, "x":I
mul-float v3, v3, p2
sub-float/2addr v3, v5
float-to-int v3, v3
.line 975
.local v3, "y":I
div-int/lit8 v5, v1, 0x2
sub-int v5, v4, v5
const/16 v6, 0x3e8
const/16 v7, -0x3e8
invoke-direct {p0, v5, v7, v6}, Lcom/alivc/component/capture/VideoPusher;->clamp(III)I
move-result v5
.line 976
.local v5, "left":I
div-int/lit8 v8, v1, 0x2
sub-int v8, v3, v8
invoke-direct {p0, v8, v7, v6}, Lcom/alivc/component/capture/VideoPusher;->clamp(III)I
move-result v8
.line 977
.local v8, "top":I
div-int/lit8 v9, v1, 0x2
add-int/2addr v9, v5
invoke-direct {p0, v9, v7, v6}, Lcom/alivc/component/capture/VideoPusher;->clamp(III)I
move-result v9
.line 978
.local v9, "right":I
div-int/lit8 v10, v1, 0x2
add-int/2addr v10, v8
invoke-direct {p0, v10, v7, v6}, Lcom/alivc/component/capture/VideoPusher;->clamp(III)I
move-result v6
.line 981
.local v6, "bottom":I
new-instance v7, Landroid/hardware/Camera$Area;
new-instance v10, Landroid/graphics/Rect;
invoke-direct {v10, v5, v8, v9, v6}, Landroid/graphics/Rect;-><init>(IIII)V
const/4 v11, 0x1
invoke-direct {v7, v10, v11}, Landroid/hardware/Camera$Area;-><init>(Landroid/graphics/Rect;I)V
.line 982
.local v7, "area":Landroid/hardware/Camera$Area;
new-instance v10, Ljava/util/ArrayList;
invoke-direct {v10}, Ljava/util/ArrayList;-><init>()V
.line 983
.local v10, "areas":Ljava/util/List;, "Ljava/util/List<Landroid/hardware/Camera$Area;>;"
invoke-interface {v10, v7}, Ljava/util/List;->add(Ljava/lang/Object;)Z
.line 984
invoke-virtual {v0, v10}, Landroid/hardware/Camera$Parameters;->setFocusAreas(Ljava/util/List;)V
.line 986
:try_start_77
iget-object v11, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
invoke-virtual {v11, v0}, Landroid/hardware/Camera;->setParameters(Landroid/hardware/Camera$Parameters;)V
:try_end_7c
.catchall {:try_start_77 .. :try_end_7c} :catchall_7d
.line 989
goto :goto_83
.line 987
:catchall_7d
move-exception v11
.line 988
.local v11, "t":Ljava/lang/Throwable;
const-string v12, "VideoPusherJNI set focus area failed"
invoke-static {v2, v12}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
.line 990
.end local v11 # "t":Ljava/lang/Throwable;
:goto_83
iget-object v2, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
new-instance v11, Lcom/alivc/component/capture/VideoPusher$4;
invoke-direct {v11, p0}, Lcom/alivc/component/capture/VideoPusher$4;-><init>(Lcom/alivc/component/capture/VideoPusher;)V
invoke-virtual {v2, v11}, Landroid/hardware/Camera;->autoFocus(Landroid/hardware/Camera$AutoFocusCallback;)V
.line 996
return-void
.end method
.method public setLastCaptureTime(J)V
.registers 3
.param p1, "lastCaptureTime" # J
.line 1046
iput-wide p1, p0, Lcom/alivc/component/capture/VideoPusher;->mLastCaptureTime:J
.line 1047
return-void
.end method
.method public setOrientation(I)V
.registers 4
.param p1, "orientation" # I
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/lang/Exception;
}
.end annotation
.line 316
const-string v0, "VideoPusher"
const-string/jumbo v1, "setOrientation."
invoke-static {v0, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
.line 322
return-void
.end method
.method public setVideoSourceListener(Lcom/alivc/component/capture/VideoPusher$VideoSourceListener;)V
.registers 2
.param p1, "listener" # Lcom/alivc/component/capture/VideoPusher$VideoSourceListener;
.line 1034
iput-object p1, p0, Lcom/alivc/component/capture/VideoPusher;->mVideoSourceListener:Lcom/alivc/component/capture/VideoPusher$VideoSourceListener;
.line 1035
return-void
.end method
.method public setVideoSourceTextureListener(Lcom/alivc/component/capture/VideoPusher$VideoSourceTextureListener;)V
.registers 2
.param p1, "listener" # Lcom/alivc/component/capture/VideoPusher$VideoSourceTextureListener;
.line 1038
iput-object p1, p0, Lcom/alivc/component/capture/VideoPusher;->mVideoSourceTextureListener:Lcom/alivc/component/capture/VideoPusher$VideoSourceTextureListener;
.line 1039
return-void
.end method
.method public setZoom(F)V
.registers 7
.param p1, "scaleFactor" # F
.line 903
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
if-eqz v0, :cond_4d
.line 904
invoke-virtual {v0}, Landroid/hardware/Camera;->getParameters()Landroid/hardware/Camera$Parameters;
move-result-object v0
.line 905
.local v0, "parameters":Landroid/hardware/Camera$Parameters;
invoke-virtual {v0}, Landroid/hardware/Camera$Parameters;->isZoomSupported()Z
move-result v1
if-eqz v1, :cond_4d
.line 906
iget-object v1, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v1}, Lcom/alivc/component/capture/VideoParam;->getCurrentZoom()I
move-result v1
int-to-float v1, v1
mul-float v1, v1, p1
float-to-int v1, v1
.line 907
.local v1, "zoomScaled":I
const/4 v2, 0x1
if-gt v1, v2, :cond_21
.line 908
iget-object v3, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v3, v2}, Lcom/alivc/component/capture/VideoParam;->setCurrentZoom(I)V
goto :goto_36
.line 909
:cond_21
invoke-virtual {v0}, Landroid/hardware/Camera$Parameters;->getMaxZoom()I
move-result v2
if-lt v1, v2, :cond_31
.line 910
iget-object v2, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v0}, Landroid/hardware/Camera$Parameters;->getMaxZoom()I
move-result v3
invoke-virtual {v2, v3}, Lcom/alivc/component/capture/VideoParam;->setCurrentZoom(I)V
goto :goto_36
.line 912
:cond_31
iget-object v2, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v2, v1}, Lcom/alivc/component/capture/VideoParam;->setCurrentZoom(I)V
.line 914
:goto_36
iget-object v2, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v2}, Lcom/alivc/component/capture/VideoParam;->getCurrentZoom()I
move-result v2
invoke-virtual {v0, v2}, Landroid/hardware/Camera$Parameters;->setZoom(I)V
.line 916
:try_start_3f
iget-object v2, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
invoke-virtual {v2, v0}, Landroid/hardware/Camera;->setParameters(Landroid/hardware/Camera$Parameters;)V
:try_end_44
.catchall {:try_start_3f .. :try_end_44} :catchall_45
.line 919
goto :goto_4d
.line 917
:catchall_45
move-exception v2
.line 918
.local v2, "t":Ljava/lang/Throwable;
const-string v3, "VideoPusher"
const-string v4, "VideoPusherJNI set zoom failed"
invoke-static {v3, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
.line 922
.end local v0 # "parameters":Landroid/hardware/Camera$Parameters;
.end local v1 # "zoomScaled":I
.end local v2 # "t":Ljava/lang/Throwable;
:cond_4d
:goto_4d
return-void
.end method
.method public setZoom(I)V
.registers 6
.param p1, "zoom" # I
.line 866
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
if-eqz v0, :cond_46
.line 867
invoke-virtual {v0}, Landroid/hardware/Camera;->getParameters()Landroid/hardware/Camera$Parameters;
move-result-object v0
.line 868
.local v0, "parameters":Landroid/hardware/Camera$Parameters;
invoke-virtual {v0}, Landroid/hardware/Camera$Parameters;->isZoomSupported()Z
move-result v1
if-eqz v1, :cond_46
if-ltz p1, :cond_46
invoke-virtual {v0}, Landroid/hardware/Camera$Parameters;->getMaxZoom()I
move-result v1
if-gt p1, v1, :cond_46
.line 869
iget-object v1, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v1, p1}, Lcom/alivc/component/capture/VideoParam;->setCurrentZoom(I)V
.line 870
iget-object v1, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v1}, Lcom/alivc/component/capture/VideoParam;->getCurrentZoom()I
move-result v1
invoke-virtual {v0, v1}, Landroid/hardware/Camera$Parameters;->setZoom(I)V
.line 872
:try_start_24
iget-object v1, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
invoke-virtual {v1, v0}, Landroid/hardware/Camera;->setParameters(Landroid/hardware/Camera$Parameters;)V
:try_end_29
.catchall {:try_start_24 .. :try_end_29} :catchall_2a
.line 875
goto :goto_46
.line 873
:catchall_2a
move-exception v1
.line 874
.local v1, "t":Ljava/lang/Throwable;
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "VideoPusherJNI set zoom "
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string v3, " failed"
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
const-string v3, "VideoPusher"
invoke-static {v3, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
.line 878
.end local v0 # "parameters":Landroid/hardware/Camera$Parameters;
.end local v1 # "t":Ljava/lang/Throwable;
:cond_46
:goto_46
return-void
.end method
.method public start(I)V
.registers 4
.param p1, "surfaceId" # I
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/lang/Exception;
}
.end annotation
.line 446
const-string v0, "VideoPusher"
const-string/jumbo v1, "start."
invoke-static {v0, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
.line 447
iget-boolean v0, p0, Lcom/alivc/component/capture/VideoPusher;->mSurfaceCbMode:Z
if-eqz v0, :cond_24
if-ltz p1, :cond_24
.line 448
iput p1, p0, Lcom/alivc/component/capture/VideoPusher;->mSurfaceTextureId:I
.line 449
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mSurfaceTexture:Landroid/graphics/SurfaceTexture;
if-eqz v0, :cond_1a
.line 450
invoke-virtual {v0}, Landroid/graphics/SurfaceTexture;->release()V
.line 451
const/4 v0, 0x0
iput-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mSurfaceTexture:Landroid/graphics/SurfaceTexture;
.line 453
:cond_1a
new-instance v0, Landroid/graphics/SurfaceTexture;
iget v1, p0, Lcom/alivc/component/capture/VideoPusher;->mSurfaceTextureId:I
invoke-direct {v0, v1}, Landroid/graphics/SurfaceTexture;-><init>(I)V
iput-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mSurfaceTexture:Landroid/graphics/SurfaceTexture;
goto :goto_3a
.line 454
:cond_24
iget-boolean v0, p0, Lcom/alivc/component/capture/VideoPusher;->mSurfaceCbMode:Z
if-eqz v0, :cond_3a
if-gez p1, :cond_3a
.line 455
const/4 v0, 0x0
iput-boolean v0, p0, Lcom/alivc/component/capture/VideoPusher;->mSurfaceCbMode:Z
.line 456
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mSurfaceTexture:Landroid/graphics/SurfaceTexture;
if-nez v0, :cond_3a
.line 457
new-instance v0, Landroid/graphics/SurfaceTexture;
const/16 v1, 0xa
invoke-direct {v0, v1}, Landroid/graphics/SurfaceTexture;-><init>(I)V
iput-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mSurfaceTexture:Landroid/graphics/SurfaceTexture;
.line 461
:cond_3a
:goto_3a
:try_start_3a
invoke-virtual {p0}, Lcom/alivc/component/capture/VideoPusher;->startInner()V
:try_end_3d
.catch Ljava/lang/Exception; {:try_start_3a .. :try_end_3d} :catch_3f
.line 465
nop
.line 466
return-void
.line 462
:catch_3f
move-exception v0
.line 464
.local v0, "e":Ljava/lang/Exception;
throw v0
.end method
.method public startInner()V
.registers 6
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/lang/Exception;
}
.end annotation
.line 468
const/4 v0, 0x0
.line 470
.local v0, "isStartPreviewed":Z
:try_start_1
invoke-direct {p0}, Lcom/alivc/component/capture/VideoPusher;->startPreview0()Z
move-result v1
:try_end_5
.catchall {:try_start_1 .. :try_end_5} :catchall_7
move v0, v1
.line 478
goto :goto_12
.line 471
:catchall_7
move-exception v1
.line 472
.local v1, "t":Ljava/lang/Throwable;
const/4 v2, 0x0
invoke-virtual {p0, v2}, Lcom/alivc/component/capture/VideoPusher;->stopInner(Z)V
.line 474
:try_start_c
invoke-direct {p0}, Lcom/alivc/component/capture/VideoPusher;->startPreview0()Z
move-result v2
:try_end_10
.catch Ljava/lang/Exception; {:try_start_c .. :try_end_10} :catch_3c
move v0, v2
.line 477
nop
.line 479
.end local v1 # "t":Ljava/lang/Throwable;
:goto_12
if-eqz v0, :cond_3b
.line 480
iget-boolean v1, p0, Lcom/alivc/component/capture/VideoPusher;->mFlashOn:Z
if-eqz v1, :cond_1b
.line 481
invoke-virtual {p0, v1}, Lcom/alivc/component/capture/VideoPusher;->setFlashOn(Z)V
.line 483
:cond_1b
iget-boolean v1, p0, Lcom/alivc/component/capture/VideoPusher;->mAutoFocus:Z
if-eqz v1, :cond_22
.line 484
invoke-virtual {p0, v1}, Lcom/alivc/component/capture/VideoPusher;->setAutoFocus(Z)V
.line 486
:cond_22
iget-object v1, p0, Lcom/alivc/component/capture/VideoPusher;->mSensorManager:Landroid/hardware/SensorManager;
if-eqz v1, :cond_3b
iget-boolean v2, p0, Lcom/alivc/component/capture/VideoPusher;->mSensorFocus:Z
if-eqz v2, :cond_3b
.line 487
iget-object v2, p0, Lcom/alivc/component/capture/VideoPusher;->mSensorEventListener:Landroid/hardware/SensorEventListener;
iget-object v3, p0, Lcom/alivc/component/capture/VideoPusher;->mAccelSensor:Landroid/hardware/Sensor;
const/4 v4, 0x2
invoke-virtual {v1, v2, v3, v4}, Landroid/hardware/SensorManager;->registerListener(Landroid/hardware/SensorEventListener;Landroid/hardware/Sensor;I)Z
.line 488
iget-object v1, p0, Lcom/alivc/component/capture/VideoPusher;->mSensorManager:Landroid/hardware/SensorManager;
iget-object v2, p0, Lcom/alivc/component/capture/VideoPusher;->mSensorEventListener:Landroid/hardware/SensorEventListener;
iget-object v3, p0, Lcom/alivc/component/capture/VideoPusher;->mMagneticSensor:Landroid/hardware/Sensor;
invoke-virtual {v1, v2, v3, v4}, Landroid/hardware/SensorManager;->registerListener(Landroid/hardware/SensorEventListener;Landroid/hardware/Sensor;I)Z
.line 491
:cond_3b
return-void
.line 475
.restart local v1 # "t":Ljava/lang/Throwable;
:catch_3c
move-exception v2
.line 476
.local v2, "e":Ljava/lang/Exception;
throw v2
.end method
.method public stop()V
.registers 3
.line 436
const-string v0, "VideoPusher"
const-string/jumbo v1, "stop."
invoke-static {v0, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
.line 437
const/4 v0, 0x1
invoke-virtual {p0, v0}, Lcom/alivc/component/capture/VideoPusher;->stopInner(Z)V
.line 438
iget-boolean v0, p0, Lcom/alivc/component/capture/VideoPusher;->mSurfaceCbMode:Z
if-eqz v0, :cond_1d
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mSurfaceTexture:Landroid/graphics/SurfaceTexture;
if-eqz v0, :cond_1d
.line 439
invoke-virtual {v0}, Landroid/graphics/SurfaceTexture;->release()V
.line 440
const/4 v0, 0x0
iput-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mSurfaceTexture:Landroid/graphics/SurfaceTexture;
.line 441
const/4 v0, -0x1
iput v0, p0, Lcom/alivc/component/capture/VideoPusher;->mSurfaceTextureId:I
.line 443
:cond_1d
return-void
.end method
.method public stopInner(Z)V
.registers 6
.param p1, "endStoped" # Z
.line 407
const-string v0, "VideoPusher"
const-string/jumbo v1, "stopInner."
invoke-static {v0, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
.line 408
iget-object v1, p0, Lcom/alivc/component/capture/VideoPusher;->mSensorManager:Landroid/hardware/SensorManager;
if-eqz v1, :cond_17
iget-boolean v2, p0, Lcom/alivc/component/capture/VideoPusher;->mSensorFocus:Z
if-eqz v2, :cond_17
.line 410
:try_start_10
iget-object v2, p0, Lcom/alivc/component/capture/VideoPusher;->mSensorEventListener:Landroid/hardware/SensorEventListener;
invoke-virtual {v1, v2}, Landroid/hardware/SensorManager;->unregisterListener(Landroid/hardware/SensorEventListener;)V
:try_end_15
.catch Ljava/lang/Exception; {:try_start_10 .. :try_end_15} :catch_16
.line 412
goto :goto_17
.line 411
:catch_16
move-exception v1
.line 414
:cond_17
:goto_17
iget-boolean v1, p0, Lcom/alivc/component/capture/VideoPusher;->mPreviewRunning:Z
if-eqz v1, :cond_7f
iget-object v1, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
if-eqz v1, :cond_7f
.line 416
const/4 v2, 0x0
:try_start_20
invoke-virtual {v1}, Landroid/hardware/Camera;->stopPreview()V
.line 417
iget-object v1, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
invoke-virtual {v1, v2}, Landroid/hardware/Camera;->setPreviewCallback(Landroid/hardware/Camera$PreviewCallback;)V
.line 418
if-eqz p1, :cond_6d
sget-object v1, Landroid/os/Build;->MANUFACTURER:Ljava/lang/String;
const-string v3, "Google"
invoke-virtual {v1, v3}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z
move-result v1
if-eqz v1, :cond_3e
sget-object v1, Landroid/os/Build;->MODEL:Ljava/lang/String;
const-string v3, "Pixel 2"
invoke-virtual {v1, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v1
if-nez v1, :cond_66
:cond_3e
sget-object v1, Landroid/os/Build;->MANUFACTURER:Ljava/lang/String;
const-string v3, "motorola"
.line 419
invoke-virtual {v1, v3}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z
move-result v1
if-eqz v1, :cond_52
sget-object v1, Landroid/os/Build;->MODEL:Ljava/lang/String;
const-string v3, "Nexus 6"
invoke-virtual {v1, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v1
if-nez v1, :cond_66
:cond_52
sget-object v1, Landroid/os/Build;->MANUFACTURER:Ljava/lang/String;
const-string v3, "LGE"
.line 420
invoke-virtual {v1, v3}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z
move-result v1
if-eqz v1, :cond_6d
sget-object v1, Landroid/os/Build;->MODEL:Ljava/lang/String;
const-string v3, "Nexus 5"
invoke-virtual {v1, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v1
:try_end_64
.catchall {:try_start_20 .. :try_end_64} :catchall_73
if-eqz v1, :cond_6d
.line 422
:cond_66
:try_start_66
iget-object v1, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
invoke-virtual {v1}, Landroid/hardware/Camera;->unlock()V
:try_end_6b
.catchall {:try_start_66 .. :try_end_6b} :catchall_6c
.line 424
goto :goto_6d
.line 423
:catchall_6c
move-exception v1
.line 426
:cond_6d
:goto_6d
:try_start_6d
iget-object v1, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
invoke-virtual {v1}, Landroid/hardware/Camera;->release()V
:try_end_72
.catchall {:try_start_6d .. :try_end_72} :catchall_73
.line 428
goto :goto_74
.line 427
:catchall_73
move-exception v1
.line 429
:goto_74
iput-object v2, p0, Lcom/alivc/component/capture/VideoPusher;->mCamera:Landroid/hardware/Camera;
.line 430
const/4 v1, 0x0
iput-boolean v1, p0, Lcom/alivc/component/capture/VideoPusher;->mPreviewRunning:Z
.line 431
const-string/jumbo v1, "stopInner over."
invoke-static {v0, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
.line 433
:cond_7f
return-void
.end method
.method public switchCamera()V
.registers 3
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/lang/Exception;
}
.end annotation
.line 305
const-string v0, "VideoPusher"
const-string/jumbo v1, "switchCamera."
invoke-static {v0, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
.line 306
const/4 v0, 0x0
invoke-virtual {p0, v0}, Lcom/alivc/component/capture/VideoPusher;->stopInner(Z)V
.line 307
iget-object v1, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v1}, Lcom/alivc/component/capture/VideoParam;->getCameraId()I
move-result v1
if-nez v1, :cond_1b
.line 308
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
const/4 v1, 0x1
invoke-virtual {v0, v1}, Lcom/alivc/component/capture/VideoParam;->setCameraId(I)V
goto :goto_20
.line 310
:cond_1b
iget-object v1, p0, Lcom/alivc/component/capture/VideoPusher;->mParam:Lcom/alivc/component/capture/VideoParam;
invoke-virtual {v1, v0}, Lcom/alivc/component/capture/VideoParam;->setCameraId(I)V
.line 312
:goto_20
invoke-virtual {p0}, Lcom/alivc/component/capture/VideoPusher;->startInner()V
.line 313
return-void
.end method
.method public updateTexImage()I
.registers 2
.line 1054
iget-object v0, p0, Lcom/alivc/component/capture/VideoPusher;->mSurfaceTexture:Landroid/graphics/SurfaceTexture;
if-nez v0, :cond_6
.line 1055
const/4 v0, -0x1
return v0
.line 1057
:cond_6
invoke-virtual {v0}, Landroid/graphics/SurfaceTexture;->updateTexImage()V
.line 1058
const/4 v0, 0x0
return v0
.end method