Skip to content

Failure to encode video frame on AMD RYZEN AI MAX+ 395 w/ Radeon 8060S #3017

@talpadk

Description

@talpadk

Description

When the HMD connects to the alvr server it sometimes displays a dark flat square with the steamvr landscape.
But it never starts streaming the a functional VR environment.

ALVR also opens two small windows that complain about it not being able encode the video frames
(I do wonder where the App on the HMD gets that initial image from if the video encoding fails)

From the logs "tab":

14:33:02.073 WARNING Beware, using just integrated graphics might lead to very poor performance in SteamVR and VR games.
14:33:02.073 WARNING For more information, please refer to the wiki: https://github.com/alvr-org/ALVR/wiki/Linux-Troubleshooting

14:33:02.073 WARNING Make sure you have put the following line in your SteamVR launch options and restart it:
/home/talpa/.local/share/Steam/steamapps/common/SteamVR/bin/vrmonitor.sh %command%
14:33:02.076 INFO GPU Encoder vendor: Mesa Gallium driver 25.2.2-1 for Radeon 8060S Graphics (radeonsi, gfx1151, LLVM 19.1.7, DRM 3.64, 6.16.5)
14:33:04.527 INFO Server connected
14:33:28.129 INFO Initial socket buffer size: send: 87040B, recv: 131072B
14:33:28.162 INFO Initial socket buffer size: send: 212992B, recv: 212992B
14:33:28.162 INFO Set socket send buffer succeeded: 425984
14:33:28.162 INFO Set socket recv buffer succeeded: 425984
14:33:28.164 INFO Render Target: 4288 2144
14:33:28.164 INFO Refresh Rate: 72
14:33:28.188 INFO CEncoder::Run
14:33:28.188 INFO CEncoder Listening
14:33:28.191 INFO Received new playspace with size: [2.121238, 2.121238]
14:33:28.252 INFO CEncoder client connected, pid 12626, cmdline /home/talpa/.local/share/Steam/steamapps/common/SteamVR/bin/linux64/vrcompositor
14:33:28.310 INFO Using Vulkan device Radeon 8060S Graphics (RADV GFX1151)
14:33:28.311 INFO Using device path /dev/dri/renderD128
14:33:28.312 INFO FrameRender: Input size 4288x2144
14:33:28.312 INFO FrameRender: Output size 2560x1120
14:33:28.334 INFO Using VAAPI encoder
14:33:28.645 ERROR Encoder: Failed to start picture processing: 1 (operation failed).
14:33:28.651 ERROR error in encoder thread: av_buffersrc_add_frame failed Input/output error
14:33:46.173 INFO Client disconnected. Cause: Broken pipe (os error 32)

General Troubleshooting

  • [ x] I carefully followed the instructions in the README and successfully completed the setup wizard
  • [x ] I read the ALVR GitHub Wiki

Added the launch option for steamvr:

/home/talpa/.local/share/Steam/steamapps/common/SteamVR/bin/vrmonitor.sh %command%
according to https://github.com/alvr-org/ALVR/wiki/Linux-Troubleshooting

My best guess at the location that emmits the error:

alvr/server_openvr/cpp/platform/linux/EncodePipelineVAAPI.cpp
395: throw alvr::AvException("av_buffersrc_add_frame failed", err);

Environment

Sway as the window manager (wayland protocol)

vaapi according to vainfo

Trying display: wayland
libva info: VA-API version 1.22.0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/radeonsi_drv_video.so
libva info: Found init function __vaDriverInit_1_22
libva info: va_openDriver() returns 0
vainfo: VA-API version: 1.22 (libva 2.22.0)
vainfo: Driver version: Mesa Gallium driver 25.2.2-1 for Radeon 8060S Graphics (radeonsi, gfx1151, LLVM 19.1.7, DRM 3.64, 6.16.5)
vainfo: Supported profile and entrypoints
VAProfileH264ConstrainedBaseline: VAEntrypointVLD
VAProfileH264ConstrainedBaseline: VAEntrypointEncSlice
VAProfileH264Main : VAEntrypointVLD
VAProfileH264Main : VAEntrypointEncSlice
VAProfileH264High : VAEntrypointVLD
VAProfileH264High : VAEntrypointEncSlice
VAProfileHEVCMain : VAEntrypointVLD
VAProfileHEVCMain : VAEntrypointEncSlice
VAProfileHEVCMain10 : VAEntrypointVLD
VAProfileHEVCMain10 : VAEntrypointEncSlice
VAProfileJPEGBaseline : VAEntrypointVLD
VAProfileVP9Profile0 : VAEntrypointVLD
VAProfileVP9Profile2 : VAEntrypointVLD
VAProfileAV1Profile0 : VAEntrypointVLD
VAProfileAV1Profile0 : VAEntrypointEncSlice
VAProfileNone : VAEntrypointVideoProc

Hardware

Asus ROG Flow Z13 (2025)

CPU: AMD RYZEN AI MAX+ 395

GPU: Radeon 8060S (iGPU)

GPU Driver Version:

Both kernel 6.15.9 and 6.16.5

firmware-amd-graphics/unstable,unstable,now 20250808-1 all [installed]
Binary firmware for AMD/ATI graphics and NPU chips

libdrm-amdgpu1/unstable,now 2.4.125-2 amd64 [installed,automatic]
Userspace interface to amdgpu-specific kernel DRM services -- runtime

Installation

ALVR Version: 20,14.1

ALVR Settings File:
Tried a few different configurations but the current one is:

{
"server_version": "20.14.1",
"openvr_config": {
"eye_resolution_width": 1536,
"eye_resolution_height": 1536,
"target_eye_resolution_width": 1536,
"target_eye_resolution_height": 1536,
"tracking_ref_only": false,
"enable_vive_tracker_proxy": false,
"minimum_idr_interval_ms": 100,
"adapter_index": 0,
"codec": 0,
"h264_profile": 0,
"refresh_rate": 72,
"use_10bit_encoder": false,
"use_full_range_encoding": true,
"encoding_gamma": 1.0,
"enable_hdr": false,
"force_hdr_srgb_correction": false,
"clamp_hdr_extended_range": false,
"enable_amf_pre_analysis": false,
"enable_vbaq": false,
"enable_amf_hmqb": false,
"use_amf_preproc": false,
"amf_preproc_sigma": 4,
"amf_preproc_tor": 7,
"encoder_quality_preset": 2,
"rate_control_mode": 0,
"filler_data": false,
"entropy_coding": 1,
"force_sw_encoding": false,
"sw_thread_count": 0,
"controller_is_tracker": false,
"controllers_enabled": true,
"body_tracking_vive_enabled": false,
"body_tracking_has_legs": false,
"enable_foveated_encoding": true,
"foveation_center_size_x": 0.45,
"foveation_center_size_y": 0.4,
"foveation_center_shift_x": 0.4,
"foveation_center_shift_y": 0.1,
"foveation_edge_ratio_x": 4.0,
"foveation_edge_ratio_y": 5.0,
"enable_color_correction": false,
"brightness": 0.0,
"contrast": 0.0,
"saturation": 0.0,
"gamma": 0.0,
"sharpening": 0.0,
"linux_async_compute": false,
"linux_async_reprojection": false,
"nvenc_quality_preset": 1,
"nvenc_tuning_preset": 2,
"nvenc_multi_pass": 1,
"nvenc_adaptive_quantization_mode": 1,
"nvenc_low_delay_key_frame_scale": -1,
"nvenc_refresh_rate": -1,
"enable_intra_refresh": false,
"intra_refresh_period": -1,
"intra_refresh_count": -1,
"max_num_ref_frames": -1,
"gop_length": -1,
"p_frame_strategy": -1,
"nvenc_rate_control_mode": -1,
"rc_buffer_size": -1,
"rc_initial_delay": -1,
"rc_max_bitrate": -1,
"rc_average_bitrate": -1,
"nvenc_enable_weighted_prediction": false,
"capture_frame_dir": "",
"amd_bitrate_corruption_fix": false,
"use_separate_hand_trackers": true,
"_controller_profile": 10,
"_server_impl_debug": false,
"_client_impl_debug": false,
"_server_core_debug": false,
"_client_core_debug": false,
"_connection_debug": false,
"_sockets_debug": false,
"_server_gfx_debug": false,
"_client_gfx_debug": false,
"_encoder_debug": false,
"_decoder_debug": false
},
"client_connections": {
"9152.client": {
"display_name": "Pico 4 Ultra",
"current_ip": null,
"manual_ips": [],
"trusted": true,
"connection_state": "Disconnected"
}
},
"session_settings": {
"video": {
"passthrough": {
"enabled": false,
"content": {
"Blend": {
"premultiplied_alpha": true,
"threshold": 0.5
},
"RgbChromaKey": {
"red": 0,
"green": 255,
"blue": 0,
"distance_threshold": 85,
"feathering": 0.05
},
"HsvChromaKey": {
"hue_start_max_deg": 70.0,
"hue_start_min_deg": 80.0,
"hue_end_min_deg": 160.0,
"hue_end_max_deg": 170.0,
"saturation_start_max": 0.2,
"saturation_start_min": 0.3,
"saturation_end_min": 1.0,
"saturation_end_max": 1.1,
"value_start_max": 0.0,
"value_start_min": 0.1,
"value_end_min": 1.0,
"value_end_max": 1.1
},
"variant": "Blend"
}
},
"bitrate": {
"gui_collapsed": false,
"mode": {
"ConstantMbps": 30,
"Adaptive": {
"gui_collapsed": true,
"saturation_multiplier": 0.95,
"max_throughput_mbps": {
"enabled": false,
"content": 100
},
"min_throughput_mbps": {
"enabled": false,
"content": 5
},
"max_network_latency_ms": {
"enabled": false,
"content": 8
},
"encoder_latency_limiter": {
"enabled": true,
"content": {
"max_saturation_multiplier": 0.9
}
},
"decoder_latency_limiter": {
"enabled": true,
"content": {
"gui_collapsed": false,
"max_decoder_latency_ms": 30,
"latency_overstep_frames": 90,
"latency_overstep_multiplier": 0.99
}
}
},
"variant": "ConstantMbps"
},
"adapt_to_framerate": {
"enabled": false,
"content": {
"framerate_reset_threshold_multiplier": 2.0
}
},
"history_size": 256,
"image_corruption_fix": false
},
"preferred_codec": {
"variant": "H264"
},
"foveated_encoding": {
"enabled": true,
"content": {
"gui_collapsed": true,
"force_enable": false,
"center_size_x": 0.45,
"center_size_y": 0.4,
"center_shift_x": 0.4,
"center_shift_y": 0.1,
"edge_ratio_x": 4.0,
"edge_ratio_y": 5.0
}
},
"color_correction": {
"enabled": false,
"content": {
"brightness": 0.0,
"contrast": 0.0,
"saturation": 0.5,
"gamma": 1.0,
"sharpening": 0.5
}
},
"max_buffering_frames": 2.0,
"buffering_history_weight": 0.9,
"enforce_server_frame_pacing": true,
"encoder_config": {
"gui_collapsed": true,
"quality_preset": {
"variant": "Speed"
},
"enable_vbaq": false,
"rate_control_mode": {
"variant": "Cbr"
},
"h264_profile": {
"variant": "High"
},
"entropy_coding": {
"variant": "Cavlc"
},
"filler_data": false,
"use_10bit": false,
"server_overrides_use_10bit": false,
"use_full_range": true,
"server_overrides_use_full_range": false,
"encoding_gamma": 1.0,
"server_overrides_encoding_gamma": false,
"hdr": {
"gui_collapsed": true,
"enable_hdr": false,
"server_overrides_enable_hdr": false,
"force_hdr_srgb_correction": false,
"clamp_hdr_extended_range": false
},
"nvenc": {
"gui_collapsed": true,
"quality_preset": {
"variant": "P1"
},
"tuning_preset": {
"variant": "LowLatency"
},
"multi_pass": {
"variant": "QuarterResolution"
},
"adaptive_quantization_mode": {
"variant": "Spatial"
},
"low_delay_key_frame_scale": -1,
"refresh_rate": -1,
"enable_intra_refresh": false,
"intra_refresh_period": -1,
"intra_refresh_count": -1,
"max_num_ref_frames": -1,
"gop_length": -1,
"p_frame_strategy": -1,
"rate_control_mode": -1,
"rc_buffer_size": -1,
"rc_initial_delay": -1,
"rc_max_bitrate": -1,
"rc_average_bitrate": -1,
"enable_weighted_prediction": false
},
"amf": {
"gui_collapsed": true,
"enable_hmqb": false,
"use_preproc": false,
"preproc_sigma": 4,
"preproc_tor": 7,
"enable_pre_analysis": false
},
"software": {
"gui_collapsed": true,
"force_software_encoding": false,
"thread_count": 0
}
},
"force_software_decoder": false,
"mediacodec_extra_options": {
"gui_collapsed": false,
"key": "",
"value": {
"ty": {
"variant": "Int32"
},
"value": "0"
},
"content": [
[
"operating-rate",
{
"ty": {
"variant": "Int32"
},
"value": "2147483647"
}
],
[
"priority",
{
"ty": {
"variant": "Int32"
},
"value": "0"
}
],
[
"vendor.qti-ext-dec-low-latency.enable",
{
"ty": {
"variant": "Int32"
},
"value": "1"
}
]
]
},
"transcoding_view_resolution": {
"Scale": 1.0,
"Absolute": {
"width": 1536,
"height": {
"set": false,
"content": 1080
}
},
"variant": "Absolute"
},
"emulated_headset_view_resolution": {
"Scale": 1.0,
"Absolute": {
"width": 1536,
"height": {
"set": false,
"content": 1080
}
},
"variant": "Absolute"
},
"preferred_fps": 60.0,
"adapter_index": 0,
"clientside_foveation": {
"enabled": false,
"content": {
"mode": {
"Static": {
"level": {
"variant": "High"
}
},
"Dynamic": {
"max_level": {
"variant": "High"
}
},
"variant": "Dynamic"
},
"vertical_offset_deg": 0.0
}
},
"clientside_post_processing": {
"enabled": false,
"content": {
"super_sampling": {
"variant": "Quality"
},
"sharpening": {
"variant": "Quality"
}
}
},
"upscaling": {
"enabled": false,
"content": {
"edge_direction": true,
"edge_threshold": 4.0,
"edge_sharpness": 2.0,
"upscale_factor": 1.5
}
}
},
"audio": {
"game_audio": {
"enabled": true,
"content": {
"gui_collapsed": true,
"device": {
"set": false,
"content": {
"NameSubstring": "",
"Index": 0,
"variant": "NameSubstring"
}
},
"mute_when_streaming": true,
"buffering": {
"gui_collapsed": true,
"average_buffering_ms": 50,
"batch_ms": 10
}
}
},
"microphone": {
"enabled": true,
"content": {
"gui_collapsed": true,
"devices": {
"Custom": {
"sink": {
"NameSubstring": "",
"Index": 0,
"variant": "NameSubstring"
},
"source": {
"NameSubstring": "",
"Index": 0,
"variant": "NameSubstring"
}
},
"variant": "Automatic"
},
"buffering": {
"gui_collapsed": true,
"average_buffering_ms": 50,
"batch_ms": 10
}
}
}
},
"headset": {
"position_recentering_mode": {
"Local": {
"view_height": 1.5
},
"variant": "LocalFloor"
},
"rotation_recentering_mode": {
"variant": "Yaw"
},
"controllers": {
"enabled": true,
"content": {
"gui_collapsed": false,
"tracked": true,
"hand_skeleton": {
"enabled": true,
"content": {
"steamvr_input_2_0": true,
"predict": false
}
},
"multimodal_tracking": false,
"hand_tracking_interaction": {
"enabled": false,
"content": {
"only_touch": false,
"pinch_touch_distance": 0.0,
"pinch_trigger_distance": 0.25,
"curl_touch_distance": 2.0,
"curl_trigger_distance": 2.5,
"joystick_deadzone": 40.0,
"joystick_offset_horizontal": 0.0,
"joystick_offset_vertical": 0.0,
"joystick_range": 1.0,
"activation_delay": 50,
"deactivation_delay": 100,
"repeat_delay": 100
}
},
"steamvr_pipeline_frames": 2.1,
"haptics": {
"enabled": true,
"content": {
"gui_collapsed": true,
"intensity_multiplier": 1.0,
"amplitude_curve": 1.0,
"min_duration_s": 0.01
}
},
"emulation_mode": {
"Custom": {
"serial_number": "ALVR Controller",
"button_set": {
"gui_collapsed": false,
"element": "/user/hand/left/input/a/click",
"content": []
}
},
"variant": "Pico4"
},
"extra_openvr_props": {
"gui_collapsed": true,
"element": {
"key": {
"variant": "TrackingSystemNameString"
},
"value": ""
},
"content": []
},
"linear_velocity_cutoff": 0.05,
"angular_velocity_cutoff": 10.0,
"left_controller_position_offset": {
"gui_collapsed": true,
"content": [
0.0,
0.0,
-0.11
]
},
"left_controller_rotation_offset": {
"gui_collapsed": true,
"content": [
0.0,
0.0,
0.0
]
},
"left_hand_tracking_position_offset": {
"gui_collapsed": true,
"content": [
0.04,
-0.02,
-0.13
]
},
"left_hand_tracking_rotation_offset": {
"gui_collapsed": true,
"content": [
0.0,
-45.0,
-90.0
]
},
"button_mappings": {
"set": false,
"content": {
"gui_collapsed": false,
"key": "/user/hand/left/input/a/click",
"value": {
"gui_collapsed": false,
"element": {
"destination": "/user/hand/left/input/a/click",
"mapping_type": {
"HysteresisThreshold": {
"value": 0.5,
"deviation": 0.05
},
"BinaryToScalar": {
"off": 0.0,
"on": 1.0
},
"Remap": {
"min": 0.0,
"max": 1.0
},
"variant": "Passthrough"
},
"binary_conditions": {
"gui_collapsed": true,
"element": "/user/hand/left/input/trigger/touch",
"content": []
}
},
"content": []
},
"content": []
}
},
"button_mapping_config": {
"gui_collapsed": true,
"click_threshold": {
"value": 0.5,
"deviation": 0.05
},
"touch_threshold": {
"value": 0.1,
"deviation": 0.05
},
"force_threshold": 0.8
}
}
},
"emulation_mode": {
"Custom": {
"serial_number": "Unknown"
},
"variant": "Custom"
},
"extra_openvr_props": {
"gui_collapsed": true,
"element": {
"key": {
"variant": "TrackingSystemNameString"
},
"value": ""
},
"content": []
},
"tracking_ref_only": false,
"enable_vive_tracker_proxy": false,
"face_tracking": {
"enabled": false,
"content": {
"gui_collapsed": true,
"sources": {
"eye_tracking_fb": true,
"face_tracking_fb": true,
"eye_expressions_htc": true,
"lip_expressions_htc": true,
"face_tracking_pico": true
},
"sink": {
"VrchatEyeOsc": {
"port": 9000
},
"variant": "VrchatEyeOsc"
}
}
},
"body_tracking": {
"enabled": false,
"content": {
"gui_collapsed": true,
"sources": {
"body_tracking_fb": {
"enabled": true,
"content": {
"full_body": true
}
},
"body_tracking_bd": {
"enabled": true,
"content": {
"BodyTracking": {
"high_accuracy": true,
"prompt_calibration_on_start": true
},
"variant": "BodyTracking"
}
}
},
"sink": {
"VrchatBodyOsc": {
"port": 9000
},
"variant": "FakeViveTracker"
},
"tracked": true
}
},
"vmc": {
"enabled": false,
"content": {
"gui_collapsed": true,
"host": "127.0.0.1",
"port": 39539,
"publish": true,
"orientation_correction": true
}
},
"max_prediction_ms": 100
},
"connection": {
"stream_protocol": {
"variant": "Udp"
},
"client_discovery": {
"enabled": true,
"content": {
"auto_trust_clients": false
}
},
"wired_client_type": {
"Custom": "alvr.client",
"variant": "Store"
},
"wired_client_autolaunch": true,
"enable_on_connect_script": false,
"enable_on_disconnect_script": false,
"allow_untrusted_http": false,
"avoid_video_glitching": false,
"packet_size": 1400,
"stream_port": 9944,
"web_server_port": 8082,
"osc_local_port": 9942,
"server_send_buffer_bytes": {
"Custom": 100000,
"variant": "Maximum"
},
"server_recv_buffer_bytes": {
"Custom": 100000,
"variant": "Maximum"
},
"client_send_buffer_bytes": {
"Custom": 100000,
"variant": "Maximum"
},
"client_recv_buffer_bytes": {
"Custom": 100000,
"variant": "Maximum"
},
"max_queued_server_video_frames": 1024,
"statistics_history_size": 256,
"minimum_idr_interval_ms": 100,
"dscp": {
"set": false,
"content": {
"ClassSelector": 7,
"AssuredForwarding": {
"class": 4,
"drop_probability": {
"variant": "Low"
}
},
"variant": "ExpeditedForwarding"
}
}
},
"extra": {
"steamvr_launcher": {
"open_close_steamvr_with_dashboard": false
},
"capture": {
"startup_video_recording": false,
"rolling_video_files": {
"enabled": false,
"content": {
"duration_s": 5
}
},
"capture_frame_dir": ""
},
"logging": {
"show_notification_tip": true,
"prefer_backtrace": false,
"notification_level": {
"variant": "Warning"
},
"client_log_report_level": {
"enabled": true,
"content": {
"variant": "Error"
}
},
"show_raw_events": {
"enabled": false,
"content": {
"hide_spammy_events": false
}
},
"log_to_disk": false,
"log_tracking": false,
"log_button_presses": false,
"log_haptics": false,
"debug_groups": {
"server_impl": false,
"client_impl": false,
"server_core": false,
"client_core": false,
"connection": false,
"sockets": false,
"server_gfx": false,
"client_gfx": false,
"encoder": false,
"decoder": false
}
},
"patches": {
"linux_async_compute": false,
"linux_async_reprojection": false
},
"velocities_multiplier": 1.0,
"open_setup_wizard": false,
"new_version_popup": {
"enabled": true,
"content": {
"hide_while_version": "21.0.0-dev10"
}
}
}
}
}

SteamVR Version: 2.12

Install Type:
tar.gz and I also tied to compile alvr_streamer from source

OS Name and Version Debian GNU/Linux forky/sid

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions