36 lines
1.1 KiB
Python
36 lines
1.1 KiB
Python
"""Добавляет пользовательские скорости воспроизведения видео
|
|
|
|
"custom_speed": {
|
|
"enabled": true,
|
|
"speeds": [9.0]
|
|
}
|
|
"""
|
|
|
|
__author__ = "wowlikon <wowlikon@gmail.com>"
|
|
__version__ = "1.0.0"
|
|
from typing import Any, Dict, List
|
|
|
|
from pydantic import Field
|
|
|
|
from utils.config import PatchTemplate
|
|
from utils.public import insert_after_id, insert_after_public
|
|
from utils.smali_parser import float_to_hex
|
|
|
|
|
|
class Patch(PatchTemplate):
|
|
priority: int = Field(frozen=True, exclude=True, default=0)
|
|
speeds: List[float] = Field(
|
|
[9.0], description="Список пользовательских скоростей воспроизведения"
|
|
)
|
|
|
|
def apply(self, base: Dict[str, Any]) -> bool:
|
|
assert float_to_hex(1.5) == "0x3fc00000"
|
|
|
|
last = "speed75"
|
|
for speed in self.speeds:
|
|
insert_after_public(last, f"speed{int(float(speed)*10)}")
|
|
insert_after_id(last, f"speed{int(float(speed)*10)}")
|
|
last = f"speed{int(float(speed)*10)}"
|
|
|
|
return False
|