Добавить
Уведомления

Grand Prix 1 of 4 - ?️ Cupcake Party ?️ - 2023-02-10 - SuperTuxKart

00:00:00 Race No. 1 00:02:10 Race No. 2 00:04:41 Race No. 3 Just some technical FYI: I'm now using the realtime clock, also called the RTC, hardware clock, or the wallclock, as the audio-to-video synchronization reference when I'm recording; the command line that I use is the following: ffmpeg -use_wallclock_as_timestamps 1 -f pulse -i alsa_output.pci-0000_09_00.6.analog-stereo.monitor -framerate 60 -f x11grab -i :0.0 -codec:a libopus -codec:v hevc_nvenc -rc constqp -preset:v p1 -tune ull -zerolatency 1 playing_`date -Iseconds`.mkv To find the name of the audio monitor under PulseAudio, which is the sound your computer is generating and it excludes what's coming into the microphone, execute this on the Linux command line: pacmd list-sources | grep "name:" If you notice any AV-sync issues, know this to be true: I was racing with those issues. I asked ChatGPT to describe the ffmpeg command, and this elegant and technically correct answer was the result: This ffmpeg command is used to capture and encode both audio and video from a desktop screen and an audio source into a single MKV file. The encoded output file will have the format playing_YYYY-MM-DDTHH-MM-SS.mkv, where YYYY-MM-DDTHH-MM-SS is the current date and time in ISO 8601 format. Here's a breakdown of the options used in the command: -use_wallclock_as_timestamps 1: This option tells ffmpeg to use the wall clock as the reference time for the stream timestamps, instead of using the default monotonic clock. This ensures that the audio and video in the output file will be synchronized correctly. -f pulse: This option specifies that the audio input should come from PulseAudio, the default sound server on most Linux distributions. -i alsa_output.pci-0000_09_00.6.analog-stereo.monitor: This option specifies the audio input source. In this case, the audio input is coming from the device named alsa_output.pci-0000_09_00.6.analog-stereo.monitor. -framerate 60: This option specifies the frame rate of the video capture, in this case 60 frames per second. -f x11grab: This option specifies that the video input should come from an X11 screen, which is the graphical server used by most Linux distributions. -i :0.0: This option specifies the screen to be captured, in this case screen 0, display 0. -codec:a libopus: This option specifies the audio codec to use for encoding the audio stream. In this case, the Opus codec is used. -codec:v hevc_nvenc: This option specifies the video codec to use for encoding the video stream. In this case, the HEVC codec is used with Nvidia's NVENC hardware acceleration. -rc constqp: This option specifies the rate control mode to use for video encoding. In this case, constant quantization parameter (QP) rate control is used. -preset:v p1: This option specifies the preset to use for video encoding. In this case, the "p1" preset is used. -tune ull: This option specifies the tuning to use for video encoding. In this case, the "ultralow latency" tuning is used. -zerolatency 1: This option tells ffmpeg to try to minimize the latency of the output stream. Finally, the output file is named playing_YYYY-MM-DDTHH-MM-SS.mkv, where YYYY-MM-DDTHH-MM-SS is the current date and time in ISO 8601 format. Some extra comments: The audio input source is actually the audio output of the computer as a whole, since it's a ".monitor" source. The container format for the stream containing Opus audio and H.265 video is Matroska. I use the Matroska container format because it is fault tolerant: if your encoding software or computer crashes while capturing in a Matroska container, you can still play back what was written to the stream up until the failure. Also, neither the video nor the game are scaled in any way, so it's encoded at the display resolution of 2560x1600. Furthermore, some brief research revealed that Apple macOS and iOS operating systems still do not support the Matroska multimedia container format, despite Matroska being a free and open standard. Microsoft Windows natively supports Matroska since Windows 10. Also, my current computer is the Asus ROG Flow X16 GV601RM_GV601RM 1.0, with a stock configuration. With a 165 Hz refresh rate, gameplay is smoooth ?️ I'm RowdyJoe and I like to play a free and open source go-kart style racing game called SuperTuxKart: https://supertuxkart.net/Main_Page Grab a copy and join me online or sit back and enjoy the videos ?

12+
16 просмотров
2 года назад
12+
16 просмотров
2 года назад

00:00:00 Race No. 1 00:02:10 Race No. 2 00:04:41 Race No. 3 Just some technical FYI: I'm now using the realtime clock, also called the RTC, hardware clock, or the wallclock, as the audio-to-video synchronization reference when I'm recording; the command line that I use is the following: ffmpeg -use_wallclock_as_timestamps 1 -f pulse -i alsa_output.pci-0000_09_00.6.analog-stereo.monitor -framerate 60 -f x11grab -i :0.0 -codec:a libopus -codec:v hevc_nvenc -rc constqp -preset:v p1 -tune ull -zerolatency 1 playing_`date -Iseconds`.mkv To find the name of the audio monitor under PulseAudio, which is the sound your computer is generating and it excludes what's coming into the microphone, execute this on the Linux command line: pacmd list-sources | grep "name:" If you notice any AV-sync issues, know this to be true: I was racing with those issues. I asked ChatGPT to describe the ffmpeg command, and this elegant and technically correct answer was the result: This ffmpeg command is used to capture and encode both audio and video from a desktop screen and an audio source into a single MKV file. The encoded output file will have the format playing_YYYY-MM-DDTHH-MM-SS.mkv, where YYYY-MM-DDTHH-MM-SS is the current date and time in ISO 8601 format. Here's a breakdown of the options used in the command: -use_wallclock_as_timestamps 1: This option tells ffmpeg to use the wall clock as the reference time for the stream timestamps, instead of using the default monotonic clock. This ensures that the audio and video in the output file will be synchronized correctly. -f pulse: This option specifies that the audio input should come from PulseAudio, the default sound server on most Linux distributions. -i alsa_output.pci-0000_09_00.6.analog-stereo.monitor: This option specifies the audio input source. In this case, the audio input is coming from the device named alsa_output.pci-0000_09_00.6.analog-stereo.monitor. -framerate 60: This option specifies the frame rate of the video capture, in this case 60 frames per second. -f x11grab: This option specifies that the video input should come from an X11 screen, which is the graphical server used by most Linux distributions. -i :0.0: This option specifies the screen to be captured, in this case screen 0, display 0. -codec:a libopus: This option specifies the audio codec to use for encoding the audio stream. In this case, the Opus codec is used. -codec:v hevc_nvenc: This option specifies the video codec to use for encoding the video stream. In this case, the HEVC codec is used with Nvidia's NVENC hardware acceleration. -rc constqp: This option specifies the rate control mode to use for video encoding. In this case, constant quantization parameter (QP) rate control is used. -preset:v p1: This option specifies the preset to use for video encoding. In this case, the "p1" preset is used. -tune ull: This option specifies the tuning to use for video encoding. In this case, the "ultralow latency" tuning is used. -zerolatency 1: This option tells ffmpeg to try to minimize the latency of the output stream. Finally, the output file is named playing_YYYY-MM-DDTHH-MM-SS.mkv, where YYYY-MM-DDTHH-MM-SS is the current date and time in ISO 8601 format. Some extra comments: The audio input source is actually the audio output of the computer as a whole, since it's a ".monitor" source. The container format for the stream containing Opus audio and H.265 video is Matroska. I use the Matroska container format because it is fault tolerant: if your encoding software or computer crashes while capturing in a Matroska container, you can still play back what was written to the stream up until the failure. Also, neither the video nor the game are scaled in any way, so it's encoded at the display resolution of 2560x1600. Furthermore, some brief research revealed that Apple macOS and iOS operating systems still do not support the Matroska multimedia container format, despite Matroska being a free and open standard. Microsoft Windows natively supports Matroska since Windows 10. Also, my current computer is the Asus ROG Flow X16 GV601RM_GV601RM 1.0, with a stock configuration. With a 165 Hz refresh rate, gameplay is smoooth ?️ I'm RowdyJoe and I like to play a free and open source go-kart style racing game called SuperTuxKart: https://supertuxkart.net/Main_Page Grab a copy and join me online or sit back and enjoy the videos ?

, чтобы оставлять комментарии