Sound is skipping

I have an old board. It is called a 78LMT-USB3. I have an AMD Phenom II X4 940 3.0 GHz quad-core processors, and 12GB of RAM. I am running FreeBSD 15.0.

My audio: Realtek® ALC892 codec, High Definition Audio, 2/4/5.1/7.1-channel (Note 4), Support for S/PDIF Out

Low end by today's standards, but I used to be able to get video and sound with no problem.

Now, my audio skips. I have googled the problem, but their solutions do not seem to work. Google tells me to do this:

# sysctl hw.snd.latency=7

It does not work at all. I have tried all the other latency settings, nothing works.

Any ideas?
 
Maybe some progress.
I have tried these two settings:

hw.iommu.enable="0" in /boot/loader.com
kern.timecounter.hardware=HPET in /etc/sysctl

In the chromium browser, the sound is still skipping, although maybe not quite as bad.
VLC seems to play the audio and video just fine.
On my PC, playing video with my jellyfin server is just awful. Although my jellyfin client on my roku does just fine.

I don't know if this matters, but the audio on my motherboard is supposed to be: Realtek ALC892 audio codec.
But in /dev/sndstat, the audio is listed as:
Installed devices:
pcm0: <ATI RS690/780 (HDMI)> (play)
pcm1: <Realtek ALC887 (Rear Analog)> (play/rec)
pcm2: <Realtek ALC887 (Front Analog)> (play/rec) default
pcm3: <Realtek ALC887 (Onboard Digital)> (play)
 
I do not seem to have a sound daemon or mplayer.
$ ps aux | grep -E 'sndiod|pulse|pipewire'
$
$ mplayer
bash: mplayer: command not found
 
I opened Chromium. In the URL I entered: chrome://gpu/

The results seemed a little mixed:

Graphics Feature Status
- Canvas: Hardware accelerated
- Direct Rendering Display Compositor: Disabled
- Compositing: Hardware accelerated
- Multiple Raster Threads: Enabled
- OpenGL: Enabled
- Rasterization: Hardware accelerated
- Raw Draw: Disabled
- Skia Graphite: Disabled
- TreesInViz: Disabled
- Video Decode: Hardware accelerated
- Video Encode: Software only. Hardware acceleration disabled
- Vulkan: Disabled
- WebGL: Hardware accelerated
- WebGPU: Hardware accelerated
- WebGPU interop: Disabled
- WebNN: Disabled


Problems Detected
- Accelerated video encode has been disabled, either via blocklist, about:flags or the command line.
- Disabled Features: video_encode
 
So, this is the board. https://www.gigabyte.com/Motherboard/GA-78LMT-USB3-rev-60/sp
There are 3 or 4 revisions, but they all appear to have realtek sound chips. Rev. 6 has an ALC892.

There are a couple of reports of this chip working from the past, for example

The ALC892 was a pretty widely used chip. It should be supported by snd_hda. Seems like your kernel thinks you have an ALC887, but that is probably compatible with the 892. A bit odd though.

Can you try installing mpg123.
# pkg install mpg123

Then, see if you can play a basic .mp3 file. If you don't have any, download something from the web, for example from

$ mpg123 name.mp3

Can you play a basic mp3 file without the skipping?

If that works, install mpv
# pkg install mpv

Then see if you can play any mp3's using mpv.

If that works, install yt_dlp.

Then choose any random youtube url, for example
View: https://www.youtube.com/watch?v=6TWJaFD6R2s

and see if you can stream the video with
$ mpv url

You should be able to stream both video and sound smoothly with mpv.

Did any of those tests exhibit the skipping?
 
I opened Chromium. In the URL I entered: chrome://gpu/

The results seemed a little mixed:

Graphics Feature Status
- Canvas: Hardware accelerated
- Direct Rendering Display Compositor: Disabled
- Compositing: Hardware accelerated
- Multiple Raster Threads: Enabled
- OpenGL: Enabled
- Rasterization: Hardware accelerated
- Raw Draw: Disabled
- Skia Graphite: Disabled
- TreesInViz: Disabled
- Video Decode: Hardware accelerated
- Video Encode: Software only. Hardware acceleration disabled
- Vulkan: Disabled
- WebGL: Hardware accelerated
- WebGPU: Hardware accelerated
- WebGPU interop: Disabled
- WebNN: Disabled


Problems Detected
- Accelerated video encode has been disabled, either via blocklist, about:flags or the command line.
- Disabled Features: video_encode
You should look hardware acceleration in settings under performance that will give you the option to turn it off. The gpu troubleshooting information is normal since your ATI Radeon HD 3000 GPU is legacy now same as mine so it will be blacklisted but should suffice for compositing rendering content.

Are you also seeing visual stutters or lag during online video playback, if so at what quality? If you right click on a youtube video you can debug to provide you the codec info to check if you are using a efficient codec for your hardware.
 
So, this is the board. https://www.gigabyte.com/Motherboard/GA-78LMT-USB3-rev-60/sp
There are 3 or 4 revisions, but they all appear to have realtek sound chips. Rev. 6 has an ALC892.

There are a couple of reports of this chip working from the past, for example

The ALC892 was a pretty widely used chip. It should be supported by snd_hda. Seems like your kernel thinks you have an ALC887, but that is probably compatible with the 892. A bit odd though.

Can you try installing mpg123.
# pkg install mpg123

Then, see if you can play a basic .mp3 file. If you don't have any, download something from the web, for example from

$ mpg123 name.mp3

Can you play a basic mp3 file without the skipping?

If that works, install mpv
# pkg install mpv

Then see if you can play any mp3's using mpv.

If that works, install yt_dlp.

Then choose any random youtube url, for example
View: https://www.youtube.com/watch?v=6TWJaFD6R2s

and see if you can stream the video with
$ mpv url

You should be able to stream both video and sound smoothly with mpv.

Did any of those tests exhibit the skipping?

mpv123 worked fine. I tried the 55 second sound file, no problem. VLC also played the 55 second file just fine. I also tried some video mp4 files with vlc, they also worked fine.

When I tried mpv, I got this:
libavcodec: build version 62.28.102 incompatible with runtime version 62.28.100

When I tried to install yt_dlp, I got this:
pkg: No packages available to install matching 'yt_dlp' have been found in the repositories
I tried doing an pkg update, that did not help.

When I tried mpv url, I got this:
libavcodec: build version 62.28.102 incompatible with runtime version 62.28.100
 
You should look hardware acceleration in settings under performance that will give you the option to turn it off. The gpu troubleshooting information is normal since your ATI Radeon HD 3000 GPU is legacy now same as mine so it will be blacklisted but should suffice for compositing rendering content.

Are you also seeing visual stutters or lag during online video playback, if so at what quality? If you right click on a youtube video you can debug to provide you the codec info to check if you are using a efficient codec for your hardware.

When I try to watch videos at 1920 × 1080 on my Jellyfin server, it's just ridiculous. But if I try to play the same file from my roku, using my Jellyfin server, it plays just fine. The videos also play just fine with VLC - the sound is fine also.

Video plays pretty well with Chromium, it's just the sound that skips. I think it may be better with the latest version of Firefox. Earlier versions of Firefox were awful, which is why I started using Chromium.
 
It sounds like nothing fundemental is broken in your sound system, since mpg123 works and vlc works. Something is mal-installed which is why your libavcodec seems to be out of sync with mpv. You could try uninstalling libavcodec and then re-install mpv, it should pull in the correct version of libavcodec as a dependency. I'm not sure how it has got out of sync. The libavcodec is provided by the ffmpeg package. Try uninstalling ffmpeg and mpv, and then reinstalling them.

# pkg remove ffmpeg mpv
# pkg install ffmpeg mpv
- and see if that sorts out the dependencies correctly.
Somewhere along the line, you seem to have got a version of ffmpeg that is not version compatible with mpv. So the problem is a software misconfiguration, not something fundamental in a device driver or the sound layer. At least, that's how it appears.

The problem with the browser is probably similar, some kind of software misconfiguration. Your mpv should definitely be able to play videos correctly, and so should the web browser. I would get mpv working first, then re-test the browser.

Or you could just use vlc and not worry about it, although it's better to get everything working properly.
 
On my system, mpv <url> gives me output like this:

$ mpv
View: https://www.youtube.com/watch?v=0muHFBSiybw



It plays smoothly, both sound and video in sync, full-screen.

mpv produces the following output to stdout:-

EDL: source file 'https://manifest.googlevideo.com/api/manifest/hls_playlist/expire/1787019273/ei/qGuDarzRPPOahcIPwZvkqAM/ip/31.54.121.79/id/0muHFBSiybw.1/itag/96/source/yt_live_broadcast/requiressl/yes/ratebypass/yes/live/1/sgoap/gir=yes;itag=140/sgovp/gir=yes;itag=137/rqh/1/hls_chunk_host/rr4---sn-cu-aigss.googlevideo.com/xpc/EgVo2aDSNQ==/bui/AR3QkAnNLPgPSh9VrE4MBlrevcTBK77r9ztTN5DMpeQ4tqRxhLLvpjRbtBH4SqaLA9luMfcQpYhHJoV-/spc/KBGBcplIGM0uNmJ5CY8_VwEpgxX_0Ov41TD-TTutIn703Gu7Ag/vprv/1/reg/0/playlist_type/DVR/met/1786997673,/mh/K-/mm/44/mn/sn-cu-aigss/ms/lva/mv/u/mvi/4/pl/25/rms/lva,lva/dover/11/pacing/0/epbp/1/keepalive/yes/fexp/51565115,51946837,52089683/mt/1786997073/sparams/expire,ei,ip,id,itag,source,requiressl,ratebypass,live,sgoap,sgovp,rqh,xpc,bui,spc,vprv,reg,playlist_type/sig/AE0s2JYwRQIhALcGpuCVrAThsN1eRugtbqiIk-5UTBNIdnH-191RbesbAiAnFo08R38lUAkMHgW41chyYAXBHj0fHF-2LqjLL6Gk9g==/lsparams/hls_chunk_host,met,mh,mm,mn,ms,mv,mvi,pl,rms/lsig/APaTxxMwRgIhAJOjYps5Wtms55qurAYI_dJ2U7UN1dFD8PTWyNWwuLbjAiEA1h06_ZtyyxN3CLQfpOs1JPVZDMra-SPEO1gpyo9JpS4=/playlist/index.m3u8' has unknown duration.
● Video --vid=1 (h264 1920x1080 30 fps)
● Audio --aid=1 (aac 2ch 44100 Hz)
○ Subs --sid=1 --slang=live_chat 'json' (null) [external]
File tags:
Date: 20260812
Uploader: Lofi Girl
Channel_URL: https://www.youtube.com/channel/UCSJ4gkVC6NrvII8umztf0Ow
[vo/gpu/libplacebo] Found no suitable device, giving up.
[vo/gpu/libplacebo] Failed initializing vulkan device
/usr/local/lib/dri/hybrid_drv_video.so init failed, got status -1.
Using hardware decoding (vaapi).
AO: [oss] 44100Hz stereo 2ch float
VO: [gpu] 1920x1080 vaapi[nv12]
AV: 19:09:33 / 19:09:45 (100%) A-V: -0.000 Dropped: 68 Cache: 11s/2MB

And I have the following in ~/.config/mpv/mpv.conf

~/.config/mpv$ cat mpv.conf
vo=gpu
profile=gpu-hq
#profile=opengl-hq
#NB get error messages using auto-safe, but using hwdec=vaapi works fine
#hwdec=auto-safe
hwdec=vaapi
user-agent="Mozilla/5.0"
## Cache
cache=yes
demuxer-seekable-cache=yes
demuxer-max-bytes=2147483647
demuxer-max-back-bytes=2147483647
## Subtitle Settings
embeddedfonts=yes # Use embedded fonts (if available).
sub-auto=fuzzy # External subs don't have to match the file name exactly to autoload.
slang=eng,en # Set subtitle language to english.
sub-visibility=no # Disable display of subtitles, but still load them if available.
# Youtube Support
#ytdl-format=bestvideo[height<=?1440][fps<=?60][vcodec!=?vp9]+bestaudio/best
#ytdl-format=bestvideo[height<=?2160][fps<=?60][vcodec!=?vp9]+bestaudio/best
ytdl-format=bestvideo[height<=?720][fps<=?30][vcodec!=?vp9]+bestaudio/best

So I'm using the 'gpu' driver, that's using an intel gpu, you probably want to check the mpv manpage, the choice of driver depends on what hardware you have.. The last line is to cause yt_dlp to select the stream most appropriate to the screen resolution of your monitor, in my case on an X220 thinkpad the screen is 720p, so the active line is the one with 'height=720'.

There's a guide to mpv.conf here
 
Back
Top