Grabadora de escritorio con ruedas? [cerrado]

11

Quiero una pieza de software de Windows que registre constantemente lo que estoy haciendo en mi escritorio, descartando imágenes de más de [30] segundos de antigüedad. Su grabación sería rodante.

La idea es que de alguna manera puedo presionar un botón y ver "lo que acaba de pasar".

No quiero tener que cuidarlo. Es decir, no quiero una pieza de software diseñada para screencasting (que no estoy tratando de hacer). Mi sesgo en contra de eso se basa en mi (¿quizás incorrecto?) Suposición de que regularmente tendría que iniciar / detener la grabación durante todo el día.

La idea es que esta pieza de software consumiría menos recursos (que una grabadora de screencast) en mi caja, ya que solo mantiene una cantidad muy limitada de material de archivo en la memoria (y una baja calidad incluso sería aceptable), porque descarta fotogramas con bastante rapidez después de ser capturados.

¿Dónde puedo encontrar una pieza de software con características como esta?

lanza
fuente
2
Háganos saber su plataforma. En Linux, escribir un script que haga exactamente eso usando ffmepg sería trivial.
brice
He editado la pregunta para reflejar que necesito una solución de Windows.
Lanza
Me encantaría tener exactamente esto, ¿a alguien se le ocurre una solución de Windows?
Kieran
Estoy de acuerdo. No puedo creer que esto aún no exista. Game DVR de Xbox One ha tenido esta funcionalidad exacta durante años, al igual que GoPros ("grabación en bucle") y otras videocámaras ("pregrabación").
Aldaviva
Resulta que Open Broadcaster Software tiene esta característica exacta, se llama "Replay Buffer". Habilítelo en Configuración> Salida y elija una duración, luego presione "Iniciar búfer de reproducción". Querrá asignar una tecla de acceso rápido a Replay Buffer - Save Replay, que escribe un video de los últimos N segundos en su ruta de grabación. Para su información, en realidad no necesita transmitir su transmisión en cualquier lugar solo para usar OBS para la grabación, por lo que puede usarla solo localmente y no transmitir a Twitch ni nada.
Aldaviva

Respuestas:

1
  • Instale la grabadora de captura de pantalla: https://github.com/rdp/screen-capture-recorder-to-video-windows-free
  • Coloque el directorio ffmpeg que instala en su ruta. En mi máquina que era: C: \ Archivos de programa (x86) \ Screen Capturer Recorder \ configuration_setup_utility \ vendor \ ffmpeg \ bin
  • Ejecute el siguiente script por lotes:

El script por lotes:

echo off
:loop
ffmpeg -loglevel info -t 300 -f dshow -video_device_number 0 -i video="screen-capture-recorder" -vcodec libx264 -pix_fmt yuv420p -s hd720 -preset ultrafast -vsync vfr -acodec libmp3lame -f mpegts - | ffmpeg -f mpegts -i - -c copy "current.mp4"
del old.mp4
mv current.mp4 old.mp4
goto loop
Kieran
fuente
¡Increíble gracias! Tuve que cambiar mvpara move /Yluego funcionó. También sería -t 30 por 30 s.
xr280xr
Además, especifique mkv como formato de archivo en lugar de mp4 si desea ver el video mientras aún se está grabando.
lanza
4

Suponiendo que ejecutas algún tipo de Windows y no necesitas una grabación casi en tiempo real, creo que lo que quieres es TimerSnapper.

http://www.timesnapper.com/

Toma capturas de pantalla de su escritorio cada pocos segundos y las almacena. Realmente está diseñado para ayudar a los desarrolladores a realizar un seguimiento de lo que trabajaron durante el día. Creo que tiene una cantidad de tiempo configurable por el usuario para guardar las capturas de pantalla, pero dudo que sea tan bajo como 30 segundos. Es mejor tener demasiados datos que muy pocos.

Hay una versión anterior que es gratuita y hay una versión profesional más nueva con muchas más funciones.

Steve Hiner
fuente
1

OK, en Linux, el siguiente script creará tres archivos .avi en / tmp / que mantendrán los últimos instantes grabados.

#!/bin/bash
while true; do
    ffmpeg -f x11grab -s 1280x800 -r 60 -i :0.0 -f avi /tmp/rolling.avi &> /dev/null &
    disown
    PID=$!
    sleep 30; 
    kill -KILL $PID
    cp /tmp/rolling_1.avi /tmp/rolling_2.avi
    cp /tmp/rolling.avi /tmp/rolling_1.avi
    rm /tmp/rolling.avi 
done

Obviamente, tendrá que reemplazar los argumentos de ffmpeg para su resolución de pantalla, etc.

Un agradecimiento a b0fh y ~ quack por ayudarme con algunos problemas de notificación de bash en este hilo.

brice
fuente
esto registrará 30 segundos, luego borre y comience nuevamente. Quiere 30 segundos continuos (así que solo el tiempo que desea repetir siempre obtiene 30 segundos desde que presionó el botón)
t123
0

Algún software diseñado para grabar TV tiene esta capacidad, ¿tal vez pueda enrutar la entrada desde su software de captura de pantalla?

Chris Nava
fuente