I searched over this forum and couldn't find any information about this. However with enough trial and error I eventually found the problem.
First, I have a Hikvision camera and had problems with h.264 and h.265 playback both via VLC. The bottom line, I found I needed the network caching set to at least 300ms to avoid missing tons of frames (for h.265). For some reason I had this value set very low to avoid adding latency to network streams.
In my debugging, I was able to play the stream using vsplayer (the hikvision player) without issue in Windows. However in Linux when I tried using VLC I would get usually 1 full initial frame immediately, and then the video would "freeze". After some time, it would occasionally play about 1 frame per second which would actually render.
So long story short, if you can't get your camera to play smoothly in VLC, check the caching setting and increase it.
First, I have a Hikvision camera and had problems with h.264 and h.265 playback both via VLC. The bottom line, I found I needed the network caching set to at least 300ms to avoid missing tons of frames (for h.265). For some reason I had this value set very low to avoid adding latency to network streams.
In my debugging, I was able to play the stream using vsplayer (the hikvision player) without issue in Windows. However in Linux when I tried using VLC I would get usually 1 full initial frame immediately, and then the video would "freeze". After some time, it would occasionally play about 1 frame per second which would actually render.
So long story short, if you can't get your camera to play smoothly in VLC, check the caching setting and increase it.