Include role and selection flags when logging a track's Format
Inspired by my investigation of Issue: google/ExoPlayer#9797 #minor-release PiperOrigin-RevId: 417609076
This commit is contained in:
parent
40d9838315
commit
89271eb722
@ -625,6 +625,7 @@ public final class C {
|
|||||||
flag = true,
|
flag = true,
|
||||||
value = {SELECTION_FLAG_DEFAULT, SELECTION_FLAG_FORCED, SELECTION_FLAG_AUTOSELECT})
|
value = {SELECTION_FLAG_DEFAULT, SELECTION_FLAG_FORCED, SELECTION_FLAG_AUTOSELECT})
|
||||||
public @interface SelectionFlags {}
|
public @interface SelectionFlags {}
|
||||||
|
// LINT.IfChange(selection_flags)
|
||||||
/** Indicates that the track should be selected if user preferences do not state otherwise. */
|
/** Indicates that the track should be selected if user preferences do not state otherwise. */
|
||||||
public static final int SELECTION_FLAG_DEFAULT = 1;
|
public static final int SELECTION_FLAG_DEFAULT = 1;
|
||||||
/**
|
/**
|
||||||
@ -1103,6 +1104,7 @@ public final class C {
|
|||||||
ROLE_FLAG_TRICK_PLAY
|
ROLE_FLAG_TRICK_PLAY
|
||||||
})
|
})
|
||||||
public @interface RoleFlags {}
|
public @interface RoleFlags {}
|
||||||
|
// LINT.IfChange(role_flags)
|
||||||
/** Indicates a main track. */
|
/** Indicates a main track. */
|
||||||
public static final int ROLE_FLAG_MAIN = 1;
|
public static final int ROLE_FLAG_MAIN = 1;
|
||||||
/**
|
/**
|
||||||
|
@ -1321,7 +1321,9 @@ public final class Format implements Bundleable {
|
|||||||
schemes.add("unknown (" + schemeUuid + ")");
|
schemes.add("unknown (" + schemeUuid + ")");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
builder.append(", drm=[").append(Joiner.on(',').join(schemes)).append(']');
|
builder.append(", drm=[");
|
||||||
|
Joiner.on(',').appendTo(builder, schemes);
|
||||||
|
builder.append(']');
|
||||||
}
|
}
|
||||||
if (format.width != NO_VALUE && format.height != NO_VALUE) {
|
if (format.width != NO_VALUE && format.height != NO_VALUE) {
|
||||||
builder.append(", res=").append(format.width).append("x").append(format.height);
|
builder.append(", res=").append(format.width).append("x").append(format.height);
|
||||||
@ -1341,8 +1343,73 @@ public final class Format implements Bundleable {
|
|||||||
if (format.label != null) {
|
if (format.label != null) {
|
||||||
builder.append(", label=").append(format.label);
|
builder.append(", label=").append(format.label);
|
||||||
}
|
}
|
||||||
|
if (format.selectionFlags != 0) {
|
||||||
|
List<String> selectionFlags = new ArrayList<>();
|
||||||
|
// LINT.IfChange(selection_flags)
|
||||||
|
if ((format.selectionFlags & C.SELECTION_FLAG_AUTOSELECT) != 0) {
|
||||||
|
selectionFlags.add("auto");
|
||||||
|
}
|
||||||
|
if ((format.selectionFlags & C.SELECTION_FLAG_DEFAULT) != 0) {
|
||||||
|
selectionFlags.add("default");
|
||||||
|
}
|
||||||
|
if ((format.selectionFlags & C.SELECTION_FLAG_FORCED) != 0) {
|
||||||
|
selectionFlags.add("forced");
|
||||||
|
}
|
||||||
|
builder.append(", selectionFlags=[");
|
||||||
|
Joiner.on(',').appendTo(builder, selectionFlags);
|
||||||
|
builder.append("]");
|
||||||
|
}
|
||||||
|
if (format.roleFlags != 0) {
|
||||||
|
// LINT.IfChange(role_flags)
|
||||||
|
List<String> roleFlags = new ArrayList<>();
|
||||||
|
if ((format.roleFlags & C.ROLE_FLAG_MAIN) != 0) {
|
||||||
|
roleFlags.add("main");
|
||||||
|
}
|
||||||
|
if ((format.roleFlags & C.ROLE_FLAG_ALTERNATE) != 0) {
|
||||||
|
roleFlags.add("alt");
|
||||||
|
}
|
||||||
|
if ((format.roleFlags & C.ROLE_FLAG_SUPPLEMENTARY) != 0) {
|
||||||
|
roleFlags.add("supplementary");
|
||||||
|
}
|
||||||
|
if ((format.roleFlags & C.ROLE_FLAG_COMMENTARY) != 0) {
|
||||||
|
roleFlags.add("commentary");
|
||||||
|
}
|
||||||
|
if ((format.roleFlags & C.ROLE_FLAG_DUB) != 0) {
|
||||||
|
roleFlags.add("dub");
|
||||||
|
}
|
||||||
|
if ((format.roleFlags & C.ROLE_FLAG_EMERGENCY) != 0) {
|
||||||
|
roleFlags.add("emergency");
|
||||||
|
}
|
||||||
|
if ((format.roleFlags & C.ROLE_FLAG_CAPTION) != 0) {
|
||||||
|
roleFlags.add("caption");
|
||||||
|
}
|
||||||
|
if ((format.roleFlags & C.ROLE_FLAG_SUBTITLE) != 0) {
|
||||||
|
roleFlags.add("subtitle");
|
||||||
|
}
|
||||||
|
if ((format.roleFlags & C.ROLE_FLAG_SIGN) != 0) {
|
||||||
|
roleFlags.add("sign");
|
||||||
|
}
|
||||||
|
if ((format.roleFlags & C.ROLE_FLAG_DESCRIBES_VIDEO) != 0) {
|
||||||
|
roleFlags.add("describes-video");
|
||||||
|
}
|
||||||
|
if ((format.roleFlags & C.ROLE_FLAG_DESCRIBES_MUSIC_AND_SOUND) != 0) {
|
||||||
|
roleFlags.add("describes-music");
|
||||||
|
}
|
||||||
|
if ((format.roleFlags & C.ROLE_FLAG_ENHANCED_DIALOG_INTELLIGIBILITY) != 0) {
|
||||||
|
roleFlags.add("enhanced-intelligibility");
|
||||||
|
}
|
||||||
|
if ((format.roleFlags & C.ROLE_FLAG_TRANSCRIBES_DIALOG) != 0) {
|
||||||
|
roleFlags.add("transcribes-dialog");
|
||||||
|
}
|
||||||
|
if ((format.roleFlags & C.ROLE_FLAG_EASY_TO_READ) != 0) {
|
||||||
|
roleFlags.add("easy-read");
|
||||||
|
}
|
||||||
if ((format.roleFlags & C.ROLE_FLAG_TRICK_PLAY) != 0) {
|
if ((format.roleFlags & C.ROLE_FLAG_TRICK_PLAY) != 0) {
|
||||||
builder.append(", trick-play-track");
|
roleFlags.add("trick-play");
|
||||||
|
}
|
||||||
|
builder.append(", roleFlags=[");
|
||||||
|
Joiner.on(',').appendTo(builder, roleFlags);
|
||||||
|
builder.append("]");
|
||||||
}
|
}
|
||||||
return builder.toString();
|
return builder.toString();
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user