Update Windows 10 "broke" millions of HD webcams


    Logitech C920 - one of the webcams that are starting to fail after installing the Windows 10 Anniversary Update update

    On the Windows tech support forum, numerous users report problems with the webcam after installing the latest Anniversary Update update (Windows 10 version 1607, OS Build 14393.10 'anniversary) . After installing the update, webcams can no longer transmit video encoded in MJPEG or H.264, but work only in the uncompressed video transfer mode YUV.

    Skype is starting to fail in HD video mode, Open Broadcaster Software (OBS), various surveillance software (CCTV), etc. The problem has been confirmed for many USB webcam models, including the very popular Logitech C920 and C930e.

    The Anniversary Update Update was released on August 2, 2016, and was pleased with many new features, including the ability to use the convenient Bash shell in a Windows environment.

    Unfortunately, with all its advantages, the Anniversary Update update has one major drawback - it disables the webcam.

    Judging by the responses of technical support staff and discussion in the forum thread, Microsoft specifically limited the application to work in Windows 10 to solve performance problems when the application accesses the webcam and the MJPEG or H.264 encoding processes. The fact is that traditionally in Windows only one application is allowed to access the video stream from a webcam. If you, for example, started a call to Skype, then other applications can no longer access the webcam. To optimize access sharing, in the Windows 10 v.1607 update, Microsoft has added a new component called the Windows Camera Frame Server, which processes video streams from webcams. Now applications are not connected directly to the webcam, but are connected to the frame server of the Windows Camera Frame Server. It supports multiple connections at the same time and distributes the video stream from the camera to several connected applications. This was supposed to solve the problem of "exclusive" use of a webcam with one program. And, by the way, Windows developers had to solve this problem a long time ago, but they decided just now. More precisely, they tried to solve it.

    As a result of this “optimization”, when you try to encode a video stream in MJPEG or H.264 from a webcam, the device now turns off after a while. For example, a Skype video call on Skype hangs up about a minute after the start, or it hangs right after the start.

    Audio calls are working fine. As before, there is no problem with simultaneous access of several programs to the webcam. Also, there are no problems when connecting a webcam via USB 3, not USB 2.

    Webcams connected via USB 2 are forced to encode video in MJPEG or H.264, because the bandwidth of USB 2 at 480 Mbps is not enough to transfer uncompressed video with a resolution of 1920 × 1080 at 30 frames / sec. Therefore, coding in MJPEG or H.264 is a standard option for almost all modern webcams.

    For some reason, the Windows 10 v.1607 frame server only supports an uncompressed video stream. This is probably due to performance issues in Windows 10, when several applications simultaneously begin to perform MJPEG-to-YUV or H.264-to-YUV conversion. That is, it is theoretically more efficient to perform such a conversion once before the server distributes the video stream to applications. This scheme does not work if the program expects to receive exactly the compressed MJPEG or H.264 video stream. In this case, the program can not work normally.

    For example, Skype progressively improves the quality of video communication whenever possible, if bandwidth permits and the processor is not overloaded. So, a video call can start with lower quality (without video compression, for example, 640 × 480 YUV), but after a while Skype decides that the resources allow improving the quality - and switch to 720p or 1080p. This can happen a few seconds after the start of the video call or a minute later. On older versions of Windows, this switching is painless and inconspicuous, but with the Anniversary Update installed, switching does not work - the video freezes for a few seconds, and then the connection is interrupted.

    Many users might think that the “glitches” of the webcam can be solved by updating the drivers, they are looking for new drivers on the manufacturers websites. But in fact, the problem is not in the drivers, but in the operating system itself.

    On the tech support forum, some outraged corporate users say that video calling is critical to their employees. It is constantly used in work. With such problems, they have no choice but to forbid employees to install the Anniversary Update or even install Windows 10 and change the operating system on OS X, where there are no problems with video communication.

    Engineer Mike M from the Windows Camera division said that all comments in the thread are fixed, and a fix for this bug is queued for developers and may be released with the September update of Windows 10. Perhaps, first, only MJPEG processing will be added to the frame server, because it’s easier to handle, and the fix for H.264 comes later. The promised patch is good news. The bad news is that until September there is no official workaround to enable normal processing of the MJPEG and H.264 video streams (see the unofficial way below).

    Another bad news is that since the Anniversary Update version, Microsoft has reduced the allowed rollback of the update from the standard 30 days to 10 days., so most users are stuck on this update. It is strange that Microsoft has not even officially announced a reduction in the allowed rollback period to 10 days, nothing like this is reported in the OS update section.



    So the owners of Windows 10 only on the 11th day after the update will learn after the fact that the update can no longer be rolled back.

    Microsoft also did not report anything about updating the video processing stack from webcams when it was rolling out the update. Therefore, no one thought that there could be any problems. As you know, Microsoft does not issue detailed release notes and does not talk about all the changes made in the OS, limited only to marketing press releases with a brief description of the new great features.

    This greatly distinguishes Windows from open source operating systems, where for every new version of the kernel, absolutely all the changes made to the kernel are described in detail, and you can even see the source code of each patch. There such problems are impossible in principle.

    Now about the unofficial way to disable the new frame server in Windows 10. One of the users says that he managed to get Skype to work normally without any problems with the webcam by editing the registry. You can also try this method.

    In the section HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows Media Foundation\Platformyou need to create a DWORD-parameter "EnableFrameServerMode" and set its value to "0", then restart Skype. (Please report in the comments if this method helped solve the problem.)





    The above key is valid for 32-bit applications on 64-bit Windows. For 64-bit applications on 64-bit Windows, the same parameter in the registry with the same value should be created in the key HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Media Foundation\Platform.

    It remains to hope that none of the affected users did not have time to buy a new webcam, because the old one is “buggy”.

    Also popular now: