Edición fácil, magia de video, manipulación de texto para crear una película maravillosa (cortar el video con subtítulos)

AutoCut: cortar video con subtítulos

AutoCut genera automáticamente subtítulos para tus videos. Luego, elige la oración que desea conservar y AutoCut cortará y guardará el segmento correspondiente en su video. No necesita usar un software de edición de video, solo edite el archivo de texto para completar el corte.

Ejemplo de uso

Suponga que su video grabado se coloca en 2022-11-04/esta carpeta. entonces corre

autocut -d 2022-11-04

Sugerencia: si usa OBS para grabar la pantalla, puede cambiar el espacio 设置->高级->录像->文件名格式a /, es decir %CCYY-%MM-%DD/%hh-%mm-%ss. Luego, los archivos de video se colocarán en la carpeta nombrada por fecha.

AutoCut continuará extrayendo y cortando subtítulos de videos en esta carpeta. Por ejemplo, acaba de terminar una grabación de video, guárdela en formato 11-28-18.mp4. AutoCut generará 11-28-18.md. Después de seleccionar la oración que desea conservar, AutoCut la cortará 11-28-18_cut.mp4y generará 11-28-18_cut.mduna vista previa del resultado.

Puede utilizar cualquier editor de Markdown. Por ejemplo, a menudo uso VS Code y Typora. La imagen de abajo está 11-28-18.mdeditada .

[Falló la transferencia de la imagen del enlace externo, el sitio de origen puede tener un mecanismo anti-leeching, se recomienda guardar la imagen y subirla directamente (img-UmUqdopq-1681631536330)(imgs/typora.jpg)]

Una vez hecho todo, seleccione el video que se autocut.mdempalmará y AutoCut generará autocut_merged.mp4el archivo de subtítulos correspondiente.

Instalar

Primero instale el paquete de Python

pip install git+https://github.com/mli/autocut.git

prueba de instalación local

git clone https://github.com/mli/autocut
cd autocut
pip install .

Lo anterior instalará pytorch . Si necesita GPU para ejecutarse y la versión instalada predeterminada no coincide, puede instalar Pytorch primero. Si tiene problemas para instalar Whipser, consulte la documentación oficial .

Además, necesitas instalar ffmpeg

# on Ubuntu or Debian
sudo apt update && sudo apt install ffmpeg

# on Arch Linux
sudo pacman -S ffmpeg

# on MacOS using Homebrew (https://brew.sh/)
brew install ffmpeg

# on Windows using Scoop (https://scoop.sh/)
scoop install ffmpeg

Instalación de la ventana acoplable

Primero clone el proyecto localmente.

git clone https://github.com/mli/autocut.git

Instalar la versión de la CPU

Vaya al directorio raíz del proyecto y cree la imagen de la ventana acoplable.

docker build -t autocut .

Ejecute el siguiente comando para crear un contenedor docker, puede usarlo directamente.

docker run -it --rm -v E:\autocut:/autocut/video autocut /bin/bash

Entre ellos -vestá el E:\autocutmapear la carpeta que almacena el video en el host al /autocut/videodirectorio . E:\autocutEs el directorio donde el host almacena los videos. Debe cambiarse al directorio donde el host almacena los videos.

Instalar la versión GPU

El uso de la aceleración de GPU requiere que el host tenga una tarjeta gráfica Nvidia e instale el controlador correspondiente. Luego, en el directorio raíz del proyecto, ejecute el siguiente comando para crear la imagen de la ventana acoplable.

docker build -f ./Dockerfile.cuda -t autocut-gpu .

Cuando se usa la aceleración de GPU, se deben agregar parámetros para ejecutar el contenedor docker --gpus all.

docker run --gpus all -it --rm -v E:\autocut:/autocut/video autocut-gpu

Más opciones de uso

Transcribir un video para generar .srty .mddar como resultado.

autocut -t 22-52-00.mp4
  1. Si no está satisfecho con la calidad de la transcripción, puede utilizar un modelo más grande, p.

    autocut -t 22-52-00.mp4 --whisper-model large
    

    El valor predeterminado es small. Los mejores modelos son mediumy large, pero se recomienda GPU para una mejor velocidad. Más rápido tinyy base, pero la calidad de la transcripción se verá reducida.

cortar un video

autocut -c 22-52-00.mp4 22-52-00.srt 22-52-00.md
  1. La tasa de bits de video predeterminada es --bitrate 10m, puede aumentarla o disminuirla según sea necesario.

  2. Si no está acostumbrado a los archivos de formato Markdown, también puede eliminar oraciones innecesarias directamente en srtel archivo y simplemente no pasar mdel nombre del archivo al cortar. eso esautocut -c 22-52-00.mp4 22-52-00.srt

  3. Si solo existe srtel archivo y no es conveniente editarlo, puede usar el siguiente comando para generar mdel archivo y luego mdeditarlo , pero en este momento se srtgenerará completamente de acuerdo con y no aparecerá ningún texto de solicitud no speechcomo .

    autocut -m test.srt test.mp4
    autocut -m test.mp4 test.srt # 支持视频和字幕乱序传入
    autocut -m test.srt # 也可以只传入字幕文件
    

algunos consejos

  1. Las transcripciones de videos fluidos serán de mayor calidad debido a la distribución de datos de entrenamiento de Whisper. Para un video, puede seleccionar aproximadamente la oración primero y luego cortarla nuevamente en el video cortado.
  2. Los subtítulos generados a partir del video final a menudo requieren una pequeña edición. Puede editar mdel archivo directamente ( srtmás compacto que el archivo, con video incrustado). Luego use autocut -s 22-52-00.md 22-52-00.srtpara generar subtítulos actualizados 22-52-00_edited.srt. Tenga en cuenta que si la oración está seleccionada o no, se ignorará aquí, pero todo se convertirá a srt.
  3. Los subtítulos generados a partir del video final a menudo requieren una pequeña edición. Pero hay demasiadas líneas en blanco srtdentro . Puede usar autocut -s 22-52-00.srtpara generar una versión compacta 22-52-00_compact.srtpara facilitar la edición (este formato no es legal, pero los editores, como VS Code, seguirán resaltando la sintaxis). Cuando finalice la edición, autocut -s 22-52-00_compact.srtvuelva al formato normal.
  4. Es muy conveniente editar Markdown con Typora y VS Code. Todos ellos tienen teclas de acceso directo correspondientes para marcar una o más líneas. Pero parece que hay algo mal con la vista previa del video de VS Code.
  5. El video se exporta a través de ffmpeg. En el chip Apple M1, no puede usar la GPU, lo que resulta en una exportación más lenta que el software de video profesional.

problema comun

  1. ¿La salida tiene caracteres ilegibles?

    La codificación de salida predeterminada de AutoCut es utf-8Asegúrese de que su editor también use utf-8la codificación . Puede --encodingespecificar . Sin embargo, debe tenerse en cuenta que el formato de codificación al generar archivos de subtítulos y al usar la edición de archivos de subtítulos debe ser coherente. Por ejemplo usa gbk.

    autocut -t test.mp4 --encoding=gbk
    autocut -c test.mp4 test.srt test.md --encoding=gbk
    

    Si se utilizan otros formatos de codificación (como gbketc. mdpara generar un archivo y se abre con Typora, Typora puede transcodificar automáticamente el archivo a otros formatos de codificación. En este momento, al editar con el formato de codificación especificado en el momento de la generación , es posible que la codificación no sea compatible. Espere un error. Por lo tanto, después de editar con Typora, puede modificarlo al formato de codificación que necesita a través de VSCode, guardarlo y luego usar la función de edición.

  2. ¿Cómo usar la GPU para transcribir?

    Cuando tiene una GPU Nvidia y está instalada la versión correspondiente de PyTorch, la transcripción se realiza en la GPU. Puede usar el comando para verificar si GPU es compatible actualmente.

    python -c "import torch; print(torch.cuda.is_available())"
    

    De lo contrario, puede instalar manualmente la versión PyTorch de GPU correspondiente antes de instalar AutoCut.

  3. Al usar la GPU, se informa un error de que la memoria de video no es suficiente.

    El modelo grande de susurro requiere una cierta cantidad de memoria GPU. Si no tiene suficiente memoria de video, puede usar un modelo más pequeño, por ejemplo small, . Si aún desea usar modelos grandes, puede forzar el uso de la CPU --devicecon . Por ejemplo

    autocut -t 11-28-18.mp4 --whisper-model large --device cpu
    
  4. ¿Se puede pipinstalar ?

    Debido a que el susurro de dependencia de AutoCut no se ha publicado en PyPI, por lo que solo se puede publicar de pip install git+https://github.com/mli/autocut.gitesta . Los estudiantes que lo necesiten pueden verificar si el modelo de susurro se puede descargar directamente desde el hub huggingface, para deshacerse de la dependencia del paquete susurro.

Dirección del proyecto: https://github.com/mli/autocut/blob/main/README.md

Supongo que te gusta

Origin blog.csdn.net/ws327443752/article/details/130183567
Recomendado
Clasificación