Too many frames skipped on Framework 16 Laptop running Arch Linux

unaware431

New Member
I am trying to record PS5 footage fed from a capture card on my Framework 16 laptop. I installed VAAPI and other necessary packages. To make the most out of the graphics module, I am using a hardware encoder.

Below are some detailed OBS Studio settings:

Sources: Video Capture Device (V4L2) - Elgato Game Capture HD60 X

Streaming: None

Output: Advanced
├─Recording Settings
│ ├─Recording Format: mkv
│ ├─Video Encoder: VAAPI AV1 on Navi 33 (Radeon RX 7600/7600 XT/7600M XT/7600S/7700S/PRO W7600)
│ └─Audio Encoder: FFmpeg FLAC (16-bit)
├─Encoder Settings
│ ├─qos: Not selected
│ ├─min-force-key-unit-interval: 0
│ ├─key-int-max: 60
│ ├─gf-group-size: 32
│ ├─ref-frames: 7
│ ├─hierarchial-level: 6
│ ├─superblock-128x128: Not selected
│ ├─min-qp: 0
│ ├─max-qp: 255
│ ├─qp: 128
│ ├─bitrate: 0
│ ├─target-percentage: 66
│ ├─target-usage: 4
│ ├─cpb-size: 0
│ ├─num-tile-cols: 1
│ ├─num-tile-rows: 1
│ ├─mbbrc: GST_VA_FEATURE_AUTO
│ ├─rate-control: Variable Bitrate
├─Track 1 Audio Bitrate: 320
└─Replay buffer: Disabled

Video
├─Base (Canvas) Resolution: 1920x1080
├─Output (Scaled) Resolution: 1920x1080
└─FPS: 60

When I ran multiple 30-second recording sessions, the videos were saved and could be played. While the audio was fine, the videos were extremely laggy. When I checked the stats, CPU was never being used more than 3% and memory 1GB. FPS was always 60 and it took 1.5ms to render each frame. Less than 1 out of 20000 frames were lost due to rendering lag, but more than half of all frames were being skipped due to encoding lag. Are my encoder and recording settings too much for a laptop to handle? If not, which settings can I change to improve performance?

Below are my latop specs:
Laptop: Framework 16
CPU: Ryzen 9 7940HS
Memory: DDR5-5600 - 64GB (2 x 32GB)
Storage: WD_BLACK SN850X NVMe M.2 2280 4TB & Western Digital SN740 NVMe - M.2 2230 - 2TB
OS: Arch Linux
Expansion Bay Module: Graphics Module (AMD Radeon RX 7700S)
 
Top