使用视频所在目录下的第一个 .override.ttf 文件作为字幕字体
模仿 bilibili 的长按快进逻辑(基于 https://github.com/n1nja88888/mpv-fastfoward )
使用视频所在目录下的第一个 .override.ttf 文件作为字幕字体
模仿 bilibili 的长按快进逻辑(基于 https://github.com/n1nja88888/mpv-fastfoward )
| import os | |
| import shutil | |
| from pathlib import Path | |
| from traceback import print_exc | |
| def rmall(p: Path): | |
| print('removing', p) | |
| try: | |
| if os.path.isdir(p): | |
| shutil.rmtree(p) |
| #include <stdio.h> | |
| #include <string.h> | |
| #include <stdlib.h> | |
| #include <unistd.h> | |
| #include <pthread.h> | |
| #include <err.h> | |
| #include <errno.h> | |
| #include <fcntl.h> | |
| #include <sys/wait.h> | |
| #include <signal.h> |
| #include <cstdio> | |
| #include <fcntl.h> | |
| #include <sys/mman.h> | |
| #include <unistd.h> | |
| #include <cstring> | |
| #include <cerrno> | |
| #include <string> | |
| #include <utility> |
| package com.android.settings.bootloader; | |
| import android.content.Context; | |
| import android.database.Cursor; | |
| import android.net.Uri; | |
| import android.os.Build; | |
| import android.text.TextUtils; | |
| import android.util.Log; | |
| import com.android.settings.AESUtil; | |
| import com.android.settings.bootloader.Utils; |
| #!/usr/bin/python | |
| ################################################################################ | |
| # | |
| # Universal JDWP shellifier | |
| # | |
| # @_hugsy_ | |
| # | |
| # And special cheers to @lanjelot | |
| # https://github.com/IOActive/jdwp-shellifier/blob/e82ec26193861ba58179aae7f3fa93654b7abc8a/jdwp-shellifier.py |
| package io.github.a13e300.demo.maho | |
| import android.app.PendingIntent | |
| import android.content.BroadcastReceiver | |
| import android.content.Context | |
| import android.content.Intent | |
| import android.content.IntentFilter | |
| import android.content.pm.PackageInstaller | |
| import android.content.pm.PackageInstaller.EXTRA_STATUS | |
| import android.content.pm.PackageInstaller.STATUS_PENDING_USER_ACTION |
| function injector(url) { | |
| console.log("injected"); | |
| let im = document.querySelector("img"); | |
| function loaded() { | |
| let canvas = document.createElement("canvas"); | |
| canvas.width = im.naturalWidth; | |
| canvas.height = im.naturalHeight; | |
| var ctx = canvas.getContext("2d"); | |
| ctx.drawImage(im, 0, 0); |
| import os | |
| # find icons in %AppData%\Microsoft\Windows\Start Menu\Programs\JetBrains Toolbox | |
| template_add = r'''Windows Registry Editor Version 5.00 | |
| [HKEY_CLASSES_ROOT\Directory\Background\shell\{prog_name}] | |
| @="Open with {name}" | |
| "Icon"="\"{current}\\icons\\{prog_name}.ico\"" |