149 lines
4.1 KiB
Smali
149 lines
4.1 KiB
Smali
.class public Lorg/webrtc/H264Utils;
|
|
.super Ljava/lang/Object;
|
|
.source "H264Utils.java"
|
|
|
|
|
|
# static fields
|
|
.field public static DEFAULT_H264_BASELINE_PROFILE_CODEC:Lorg/webrtc/VideoCodecInfo; = null
|
|
|
|
.field public static DEFAULT_H264_HIGH_PROFILE_CODEC:Lorg/webrtc/VideoCodecInfo; = null
|
|
|
|
.field public static final H264_CONSTRAINED_BASELINE_3_1:Ljava/lang/String; = "42e01f"
|
|
|
|
.field public static final H264_CONSTRAINED_HIGH_3_1:Ljava/lang/String; = "640c1f"
|
|
|
|
.field public static final H264_FMTP_LEVEL_ASYMMETRY_ALLOWED:Ljava/lang/String; = "level-asymmetry-allowed"
|
|
|
|
.field public static final H264_FMTP_PACKETIZATION_MODE:Ljava/lang/String; = "packetization-mode"
|
|
|
|
.field public static final H264_FMTP_PROFILE_LEVEL_ID:Ljava/lang/String; = "profile-level-id"
|
|
|
|
.field public static final H264_LEVEL_3_1:Ljava/lang/String; = "1f"
|
|
|
|
.field public static final H264_PROFILE_CONSTRAINED_BASELINE:Ljava/lang/String; = "42e0"
|
|
|
|
.field public static final H264_PROFILE_CONSTRAINED_HIGH:Ljava/lang/String; = "640c"
|
|
|
|
|
|
# direct methods
|
|
.method public static constructor <clinit>()V
|
|
.locals 3
|
|
|
|
new-instance v0, Lorg/webrtc/VideoCodecInfo;
|
|
|
|
const/4 v1, 0x0
|
|
|
|
invoke-static {v1}, Lorg/webrtc/H264Utils;->getDefaultH264Params(Z)Ljava/util/Map;
|
|
|
|
move-result-object v1
|
|
|
|
const-string v2, "H264"
|
|
|
|
invoke-direct {v0, v2, v1}, Lorg/webrtc/VideoCodecInfo;-><init>(Ljava/lang/String;Ljava/util/Map;)V
|
|
|
|
sput-object v0, Lorg/webrtc/H264Utils;->DEFAULT_H264_BASELINE_PROFILE_CODEC:Lorg/webrtc/VideoCodecInfo;
|
|
|
|
new-instance v0, Lorg/webrtc/VideoCodecInfo;
|
|
|
|
const/4 v1, 0x1
|
|
|
|
invoke-static {v1}, Lorg/webrtc/H264Utils;->getDefaultH264Params(Z)Ljava/util/Map;
|
|
|
|
move-result-object v1
|
|
|
|
invoke-direct {v0, v2, v1}, Lorg/webrtc/VideoCodecInfo;-><init>(Ljava/lang/String;Ljava/util/Map;)V
|
|
|
|
sput-object v0, Lorg/webrtc/H264Utils;->DEFAULT_H264_HIGH_PROFILE_CODEC:Lorg/webrtc/VideoCodecInfo;
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public constructor <init>()V
|
|
.locals 0
|
|
|
|
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public static getDefaultH264Params(Z)Ljava/util/Map;
|
|
.locals 3
|
|
.annotation system Ldalvik/annotation/Signature;
|
|
value = {
|
|
"(Z)",
|
|
"Ljava/util/Map<",
|
|
"Ljava/lang/String;",
|
|
"Ljava/lang/String;",
|
|
">;"
|
|
}
|
|
.end annotation
|
|
|
|
new-instance v0, Ljava/util/HashMap;
|
|
|
|
invoke-direct {v0}, Ljava/util/HashMap;-><init>()V
|
|
|
|
const-string v1, "1"
|
|
|
|
const-string v2, "level-asymmetry-allowed"
|
|
|
|
invoke-interface {v0, v2, v1}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
|
|
|
|
const-string v2, "packetization-mode"
|
|
|
|
invoke-interface {v0, v2, v1}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
|
|
|
|
if-eqz p0, :cond_0
|
|
|
|
const-string p0, "640c1f"
|
|
|
|
goto :goto_0
|
|
|
|
:cond_0
|
|
const-string p0, "42e01f"
|
|
|
|
:goto_0
|
|
const-string v1, "profile-level-id"
|
|
|
|
invoke-interface {v0, v1, p0}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
|
|
|
|
return-object v0
|
|
.end method
|
|
|
|
.method public static isSameH264Profile(Ljava/util/Map;Ljava/util/Map;)Z
|
|
.locals 0
|
|
.annotation system Ldalvik/annotation/Signature;
|
|
value = {
|
|
"(",
|
|
"Ljava/util/Map<",
|
|
"Ljava/lang/String;",
|
|
"Ljava/lang/String;",
|
|
">;",
|
|
"Ljava/util/Map<",
|
|
"Ljava/lang/String;",
|
|
"Ljava/lang/String;",
|
|
">;)Z"
|
|
}
|
|
.end annotation
|
|
|
|
invoke-static {p0, p1}, Lorg/webrtc/H264Utils;->nativeIsSameH264Profile(Ljava/util/Map;Ljava/util/Map;)Z
|
|
|
|
move-result p0
|
|
|
|
return p0
|
|
.end method
|
|
|
|
.method public static native nativeIsSameH264Profile(Ljava/util/Map;Ljava/util/Map;)Z
|
|
.annotation system Ldalvik/annotation/Signature;
|
|
value = {
|
|
"(",
|
|
"Ljava/util/Map<",
|
|
"Ljava/lang/String;",
|
|
"Ljava/lang/String;",
|
|
">;",
|
|
"Ljava/util/Map<",
|
|
"Ljava/lang/String;",
|
|
"Ljava/lang/String;",
|
|
">;)Z"
|
|
}
|
|
.end annotation
|
|
.end method
|