Initial implementation of AV1

This commit is contained in:
Cameron Gutman
2023-07-02 22:49:42 -05:00
parent d6bbfa1af1
commit 3a78095574
8 changed files with 124 additions and 21 deletions
@@ -22,8 +22,9 @@ public class StreamConfiguration {
private int maxPacketSize;
private int remote;
private MoonBridge.AudioConfiguration audioConfiguration;
private boolean supportsHevc;
private int supportedVideoFormats;
private int hevcBitratePercentageMultiplier;
private int av1BitratePercentageMultiplier;
private boolean enableHdr;
private int attachedGamepadMask;
private int encryptionFlags;
@@ -90,6 +91,11 @@ public class StreamConfiguration {
return this;
}
public StreamConfiguration.Builder setAv1BitratePercentageMultiplier(int multiplier) {
config.av1BitratePercentageMultiplier = multiplier;
return this;
}
public StreamConfiguration.Builder setEnableHdr(boolean enableHdr) {
config.enableHdr = enableHdr;
return this;
@@ -135,8 +141,8 @@ public class StreamConfiguration {
return this;
}
public StreamConfiguration.Builder setHevcSupported(boolean supportsHevc) {
config.supportsHevc = supportsHevc;
public StreamConfiguration.Builder setSupportedVideoFormats(int supportedVideoFormats) {
config.supportedVideoFormats = supportedVideoFormats;
return this;
}
@@ -168,8 +174,7 @@ public class StreamConfiguration {
this.sops = true;
this.enableAdaptiveResolution = false;
this.audioConfiguration = MoonBridge.AUDIO_CONFIGURATION_STEREO;
this.supportsHevc = false;
this.enableHdr = false;
this.supportedVideoFormats = MoonBridge.VIDEO_FORMAT_H264;
this.attachedGamepadMask = 0;
}
@@ -221,14 +226,18 @@ public class StreamConfiguration {
return audioConfiguration;
}
public boolean getHevcSupported() {
return supportsHevc;
public int getSupportedVideoFormats() {
return supportedVideoFormats;
}
public int getHevcBitratePercentageMultiplier() {
return hevcBitratePercentageMultiplier;
}
public int getAv1BitratePercentageMultiplier() {
return av1BitratePercentageMultiplier;
}
public boolean getEnableHdr() {
return enableHdr;
}