Bug Report Green pixels in lower-right not seen with direct ffmpeg capture

Ministraitor

New Member
Running OBS 19.0.3 on Ubuntu 17.04, dist-upgrade'd this morning - issue still there.

My process to capture video is to first process the raw video from the capture card using ffmpeg, then send the result to a v4l2-loopback device. Both OBS and a backup ffmpeg process then use the video stream read from this loopback device (device doesn't allow concurrent readers, v4l2-loopback does). When I look at the video in OBS, there's a horizontal block in the bottom-right corner that is bright green which does not appear in the ffmpeg video. That block is 2 pixels high and at a guess I would say 40 pixels wide but haven't measured that.

See this video for a display of the problem: https://www.youtube.com/watch?v=2Zb-3_46YIc
Youtube's rechewing at times seems to discolor the block, in the original I get from the box it's a solid green throughout.

This process I perform on 2 video streams which appear in the same scene in OBS. While the streams are of very different dimensions (1440x810 and 480x854) they both have this seemingly exact same size block in the bottom-right corner.

When I look at properties of the video inputs, the green is visible there as well. When I read straight from my capture cards (either Magewell Pro-SDI or their USB offering) the image doesn't show this problem, but the source is now its unfiltered 1920x1080 so that might account for something.

Feeding into the loopback device with this command (/dev/${1} is my capture card, video0 the loopback device):

ffmpeg -r 50 -y -nostats -f v4l2 -i "/dev/${1}" -vf "hqdn3d=6:6:20:20,scale=w=854:h=480,format=pix_fmts=yuv420p,transpose=dir=clock" -f v4l2 -r 50 /dev/video0

The larger stream doesn't get denoised or transposed, and of course the scaling values differ.

I did not have this problem when I was on the older version that installed on Ubuntu 16.04 LTS.

I'm currently working around the issue by cropping the bottom 2 pixels from the image using a Transform.

The logs aren't showing any problems and it would appear that according to OBS everything's just fine.
 

vapeahoy

Member
you probably didn't get a reply because you lack a proper description of problem in video, and as you said you crop it out using a transform, which you probably did for this vid so we can't see it.
But jumping to solution, make sure you have sync to blank off, align your displays to pure 60hz (same frequencies are paramount). Other then that you can do a force full composition in graphics driver on nvidia setups, or use vce if on amd to get rid of tearing. Mind you this will screw over any non aligned devices to your monitor on nvidia. I havent really had a problem on amd setups. The green lines are appearing as a result of cutted frames that dont make the timeshift to next frame and so if a form of sync is on you get cut out frames replaced with green. just 2 green lines seems weird. But it's probably something in this ballpark of issues.
I was also first annoyed by random popping green lines, but for me this fixed it. It's hard to help you because there is a big lack of info and you need to sort out whats what and operating at what mode/hz etc.
 
Top