Desarrollo

Abrimos Pycharm y creamos un proyecto nuevo y lo nombramos ScreenVideo
phyton project
Instalamos las dependencias siguientes: phyton project
Una vez instalados los paquetes creamos el archivo ScreenVideo.py y escribimos el siguiente código
 
  
     import sys, time, pyaudio, wave, keyboard
from screen_recorder_sdk import screen_recorder
import shlex
import subprocess
import numpy

now = time.strftime("%Y-%m-%d-%H-%M-%S")
audio = format(now) + ".mp3"
video = format(now) + ".mp4"
salida = "salida"+format(now) + ".mp4"
screen_recorder.enable_dev_log()
params = screen_recorder.RecorderParams()
screen_recorder.init_resources(params)
print('Video Started')
filename = audio
chunk = 1024
FORMAT = pyaudio.paInt16
channels = 1
sample_rate = 44100
# record_seconds = (hours*3600+seconds)+1
p = pyaudio.PyAudio()
stream = p.open(format=FORMAT,
                    channels=channels,
                    rate=sample_rate,
                    input=True,
                    output=True,
                    frames_per_buffer=chunk)
frames = []
print("Audio Recording...")
screen_recorder.start_video_recording(video, 60, 9000000, True)
while True:
    data = stream.read(chunk)
    frames.append(data)
    if keyboard.is_pressed('ctrl+q'):
        break

while True:
    try:
        if keyboard.is_pressed('ctrl+q'):
            p.terminate()
            wf = wave.open(filename, "wb")
            wf.setnchannels(channels)
            wf.setsampwidth(p.get_sample_size(FORMAT))
            wf.setframerate(sample_rate)
            wf.writeframes(b"".join(frames))
            wf.close()
            screen_recorder.stop_video_recording()
            stream.stop_stream()
            stream.close()
            print("Audio finished recording.")
            print('Video Stopped')
            break
    except KeyboardInterrupt:
            break

comando=f'ffmpeg -i {video} -i {audio} -c:v  copy -c:a aac -map 0:v:0 -map 1:a:0 {salida}'
resultado=shlex.split(comando)
subprocess.run(resultado)      
    
   

Probando aplicación


Después de parar la aplicación estos fueron los archivos generados
phyton project