rollback(default-video-speed): default video speed does not apply when playing live video

This commit is contained in:
inotia00
2023-03-14 10:37:26 +09:00
parent 0a687ea32a
commit 2a0fa0b615
2 changed files with 0 additions and 45 deletions

View File

@ -1,23 +0,0 @@
package app.revanced.patches.youtube.video.speed.bytecode.fingerprints
import app.revanced.patcher.fingerprint.method.impl.MethodFingerprint
import app.revanced.patches.youtube.misc.resourceid.patch.SharedResourceIdPatch
import org.jf.dexlib2.iface.instruction.WideLiteralInstruction
import org.jf.dexlib2.Opcode
object LiveLabelFingerprint : MethodFingerprint(
returnType = "V",
opcodes = listOf(
Opcode.IGET_OBJECT,
Opcode.IF_NEZ,
Opcode.RETURN_VOID,
Opcode.INVOKE_VIRTUAL,
Opcode.RETURN_VOID
),
customFingerprint = { methodDef ->
methodDef.implementation?.instructions?.any {
it.opcode.ordinal == Opcode.CONST.ordinal &&
(it as? WideLiteralInstruction)?.wideLiteral == SharedResourceIdPatch.chapterRepeatOnResourceId
} == true
}
)

View File

@ -17,8 +17,6 @@ import app.revanced.patches.youtube.misc.videoid.legacy.patch.LegacyVideoIdPatch
import app.revanced.patches.youtube.video.speed.bytecode.fingerprints.*
import app.revanced.util.bytecode.BytecodeHelper.updatePatchStatus
import app.revanced.util.integrations.Constants.VIDEO_PATH
import org.jf.dexlib2.Opcode
import org.jf.dexlib2.builder.instruction.BuilderInstruction35c
import org.jf.dexlib2.iface.instruction.FiveRegisterInstruction
@Name("default-video-speed-bytecode-patch")
@ -33,31 +31,11 @@ import org.jf.dexlib2.iface.instruction.FiveRegisterInstruction
@Version("0.0.1")
class VideoSpeedBytecodePatch : BytecodePatch(
listOf(
LiveLabelFingerprint,
VideoSpeedSettingsFingerprint
)
) {
override fun execute(context: BytecodeContext): PatchResult {
LiveLabelFingerprint.result?.mutableMethod?.let {
with (it.implementation!!.instructions) {
for ((index, instructions) in this.withIndex()) {
if (instructions.opcode != Opcode.INVOKE_VIRTUAL) continue
if ((instructions as BuilderInstruction35c).reference.toString() !=
"Landroid/widget/TextView;->setText(Ljava/lang/CharSequence;)V") continue
insertIndex = index + 1
it.addInstruction(
insertIndex,
"invoke-static {}, $INTEGRATIONS_VIDEO_SPEED_CLASS_DESCRIPTOR->liveVideoStarted()V"
)
break
}
}
if (insertIndex == 0) return LiveLabelFingerprint.toErrorResult()
} ?: return LiveLabelFingerprint.toErrorResult()
with(OverrideSpeedHookPatch.videoSpeedChangedResult) {
val index = scanResult.patternScanResult!!.endIndex
val register =