<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Caleb Mundati</title>
    <description>The latest articles on DEV Community by Caleb Mundati (@mundatic).</description>
    <link>https://dev.to/mundatic</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4234840%2F8692503d-7813-484b-8841-e11f6138894e.jpg</url>
      <title>DEV Community: Caleb Mundati</title>
      <link>https://dev.to/mundatic</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/mundatic"/>
    <language>en</language>
    <item>
      <title>Fix Loggy3 Stuck on "Starting Recording" on Windows — DirectX Error 0x887A0004</title>
      <dc:creator>Caleb Mundati</dc:creator>
      <pubDate>Mon, 09 Nov 2026 09:56:17 +0000</pubDate>
      <link>https://dev.to/mundatic/fix-loggy3-stuck-on-starting-recording-on-windows-directx-error-0x887a0004-38b6</link>
      <guid>https://dev.to/mundatic/fix-loggy3-stuck-on-starting-recording-on-windows-directx-error-0x887a0004-38b6</guid>
      <description>&lt;p&gt;I recently installed Loggy3 on my Windows laptop, but couldn't get past the first recording setup.&lt;/p&gt;

&lt;p&gt;Every time I clicked &lt;strong&gt;Start Recording&lt;/strong&gt;, the app would show &lt;strong&gt;Starting...&lt;/strong&gt; and remain stuck there. The recording timer never appeared, and clicking Stop just took me back to the &lt;strong&gt;Record your first recording&lt;/strong&gt; screen.&lt;/p&gt;

&lt;p&gt;After quite a bit of troubleshooting, I managed to identify the issue and fix it. I'm sharing the steps in case anyone else runs into the same problem.&lt;/p&gt;

&lt;h2&gt;
  
  
  The problem
&lt;/h2&gt;

&lt;p&gt;The symptoms were pretty consistent:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Clicking Start Recording showed a recording/starting status, but no timer.&lt;/li&gt;
&lt;li&gt;The recording never became active.&lt;/li&gt;
&lt;li&gt;Clicking Stop returned me to the onboarding screen.&lt;/li&gt;
&lt;li&gt;Running the app as administrator didn't help.&lt;/li&gt;
&lt;li&gt;Restarting Windows, clearing application files and changing internet connections made no difference.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Windows' built-in screen recording worked perfectly using &lt;code&gt;Win + Alt + R&lt;/code&gt;, so the computer wasn't completely unable to record its screen.&lt;/p&gt;

&lt;h3&gt;
  
  
  My system
&lt;/h3&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Component&lt;/th&gt;
&lt;th&gt;Details&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;OS&lt;/td&gt;
&lt;td&gt;Windows&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Application&lt;/td&gt;
&lt;td&gt;Loggy3 v0.10.0&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;CPU&lt;/td&gt;
&lt;td&gt;Intel Core i5-8250U&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Integrated GPU&lt;/td&gt;
&lt;td&gt;Intel UHD Graphics 620&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Dedicated GPU&lt;/td&gt;
&lt;td&gt;NVIDIA GeForce MX150&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Display&lt;/td&gt;
&lt;td&gt;1920 × 1080&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;This is a hybrid-GPU laptop, where the integrated Intel GPU drives the display while NVIDIA is available for applications requiring additional graphics performance.&lt;/p&gt;

&lt;h2&gt;
  
  
  Finding the actual error
&lt;/h2&gt;

&lt;p&gt;After trying the usual fixes without success, I decided to check Loggy3's logs.&lt;/p&gt;

&lt;p&gt;On Windows, Loggy3 stores diagnostic logs under:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;%USERPROFILE%\.loggy3\logs
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The files I found were:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;app-log.jsonl
kernel-log.jsonl
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The interesting one was &lt;code&gt;kernel-log.jsonl&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;You can inspect the most recent recording-related errors using PowerShell:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight powershell"&gt;&lt;code&gt;&lt;span class="nv"&gt;$path&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="nv"&gt;$&lt;/span&gt;&lt;span class="nn"&gt;env&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="nv"&gt;USERPROFILE&lt;/span&gt;&lt;span class="s2"&gt;\.loggy3\logs\kernel-log.jsonl"&lt;/span&gt;&lt;span class="w"&gt;

&lt;/span&gt;&lt;span class="n"&gt;Get-Content&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$path&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-Tail&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;100&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="n"&gt;ForEach-Object&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="kr"&gt;try&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nv"&gt;$entry&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="bp"&gt;$_&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;ConvertFrom-Json&lt;/span&gt;&lt;span class="w"&gt;

        &lt;/span&gt;&lt;span class="kr"&gt;if&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;$entry&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;severity&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-in&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;@(&lt;/span&gt;&lt;span class="s2"&gt;"warn"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"error"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"fatal"&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
            &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;PSCustomObject&lt;/span&gt;&lt;span class="p"&gt;]@{&lt;/span&gt;&lt;span class="w"&gt;
                &lt;/span&gt;&lt;span class="nx"&gt;Severity&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$entry&lt;/span&gt;&lt;span class="err"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;severity&lt;/span&gt;&lt;span class="w"&gt;
                &lt;/span&gt;&lt;span class="nx"&gt;Event&lt;/span&gt;&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$entry&lt;/span&gt;&lt;span class="err"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;event&lt;/span&gt;&lt;span class="w"&gt;
                &lt;/span&gt;&lt;span class="nx"&gt;Message&lt;/span&gt;&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$entry&lt;/span&gt;&lt;span class="err"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;message&lt;/span&gt;&lt;span class="w"&gt;
            &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kr"&gt;catch&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Format-List&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  The error
&lt;/h3&gt;

&lt;p&gt;The logs repeatedly showed:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;IDXGIOutput1::DuplicateOutput is temporarily unavailable

The specified device interface or feature level
is not supported on this system. (0x887A0004)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Followed by:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;input capture failed:
input capture stopped before screen capture became ready
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Another log entry confirmed:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;capture_became_ready: false
session_complete: false
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;These messages explained why the timer wasn't starting.&lt;/p&gt;

&lt;p&gt;Loggy3 was failing to initialize screen capture through the DirectX Desktop Duplication API.&lt;/p&gt;

&lt;p&gt;The application was also repeatedly retrying the recording initialization, roughly every five seconds.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why changing the GPU initially didn't work
&lt;/h2&gt;

&lt;p&gt;My laptop has two graphics adapters:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Intel UHD Graphics 620&lt;/li&gt;
&lt;li&gt;NVIDIA GeForce MX150&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I first went into Windows Graphics Settings and changed Loggy3 to use Intel integrated graphics.&lt;/p&gt;

&lt;p&gt;That didn't solve it.&lt;/p&gt;

&lt;p&gt;I also tried selecting the dedicated NVIDIA GPU. Still nothing.&lt;/p&gt;

&lt;p&gt;The missing piece was that &lt;strong&gt;Loggy3 uses a separate executable for its recording engine&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Inspecting the installation directory revealed:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Loggy3/
├── loggy3-gui.exe
├── loggy3-kernel.exe
├── replay_windows.exe
└── uninstall.exe
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The GUI and the recording kernel are separate programs.&lt;/p&gt;

&lt;p&gt;I had only changed the GPU preference for &lt;code&gt;loggy3-gui.exe&lt;/code&gt;, while the DirectX failure was occurring in the recording kernel.&lt;/p&gt;

&lt;h2&gt;
  
  
  The fix that worked
&lt;/h2&gt;

&lt;p&gt;The solution was to explicitly configure &lt;strong&gt;both Loggy3's interface and recording kernel to use the integrated Intel GPU&lt;/strong&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 1: Close Loggy3
&lt;/h3&gt;

&lt;p&gt;Make sure the application is completely closed.&lt;/p&gt;

&lt;p&gt;You can also use PowerShell:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight powershell"&gt;&lt;code&gt;&lt;span class="n"&gt;Get-Process&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;loggy3-gui&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;loggy3-kernel&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-ErrorAction&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;SilentlyContinue&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="n"&gt;Stop-Process&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-Force&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Step 2: Open Windows Graphics Settings
&lt;/h3&gt;

&lt;p&gt;Navigate to:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Settings → System → Display → Graphics&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Choose the option to add a desktop application.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 3: Add the recording kernel
&lt;/h3&gt;

&lt;p&gt;Browse to your Loggy3 installation directory.&lt;/p&gt;

&lt;p&gt;In my case, it was:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;%USERPROFILE%\Loggy3\loggy3-kernel.exe
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Select the executable, open &lt;strong&gt;Options&lt;/strong&gt;, and choose:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Power saving — Intel UHD Graphics 620&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Click Save.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 4: Configure the GUI as well
&lt;/h3&gt;

&lt;p&gt;Repeat the process for:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;%USERPROFILE%\Loggy3\loggy3-gui.exe
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Assign it to:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Power saving — Intel UHD Graphics 620&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The resulting configuration should look like this:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Executable&lt;/th&gt;
&lt;th&gt;GPU preference&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;loggy3-gui.exe&lt;/td&gt;
&lt;td&gt;Power saving (Intel)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;loggy3-kernel.exe&lt;/td&gt;
&lt;td&gt;Power saving (Intel)&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  Step 5: Restart Loggy3
&lt;/h3&gt;

&lt;p&gt;Launch Loggy3 normally, then click Start Recording.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;That was it. The recording started successfully and the timer finally appeared.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;No driver reinstall, Windows reset or application reinstall was necessary.&lt;/p&gt;

&lt;h2&gt;
  
  
  What's actually happening?
&lt;/h2&gt;

&lt;p&gt;Loggy3's recording kernel uses Windows' DirectX Desktop Duplication functionality to capture the screen.&lt;/p&gt;

&lt;p&gt;On hybrid-GPU systems, desktop duplication can fail with &lt;code&gt;0x887A0004&lt;/code&gt; when the application's graphics configuration isn't compatible with the display being captured.&lt;/p&gt;

&lt;p&gt;In my case, the laptop display was driven by Intel UHD Graphics 620, and explicitly assigning Loggy3's recording kernel to Intel resolved the failure.&lt;/p&gt;

&lt;p&gt;I can't confirm exactly which adapter the kernel was selecting before the change, but the GPU preference configuration was the difference between repeated capture failures and successful recording.&lt;/p&gt;

&lt;p&gt;Also, other screen recording tools working doesn't necessarily rule out a DirectX Desktop Duplication issue. Different applications can use different capture APIs.&lt;/p&gt;

&lt;h2&gt;
  
  
  Quick takeaway
&lt;/h2&gt;

&lt;p&gt;If you're using Loggy3 on Windows and clicking Start Recording leaves it stuck on Starting without a timer:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Check &lt;code&gt;%USERPROFILE%\.loggy3\logs\kernel-log.jsonl&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Look for &lt;code&gt;IDXGIOutput1::DuplicateOutput&lt;/code&gt; and &lt;code&gt;0x887A0004&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Check whether your laptop has both integrated and dedicated graphics.&lt;/li&gt;
&lt;li&gt;In Windows Graphics Settings, assign &lt;strong&gt;both &lt;code&gt;loggy3-gui.exe&lt;/code&gt; and &lt;code&gt;loggy3-kernel.exe&lt;/code&gt;&lt;/strong&gt; to the integrated GPU.&lt;/li&gt;
&lt;li&gt;Restart Loggy3 and test again.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The most important part is &lt;strong&gt;configuring &lt;code&gt;loggy3-kernel.exe&lt;/code&gt;&lt;/strong&gt;, not just the main application.&lt;/p&gt;

&lt;p&gt;This fixed the problem on my Intel UHD 620 / NVIDIA MX150 laptop running Loggy3 v0.10.0. Other hardware or software configurations may behave differently.&lt;/p&gt;

&lt;p&gt;Hopefully this saves someone else the time I spent figuring it out!&lt;/p&gt;

</description>
      <category>loggy3</category>
      <category>debugging</category>
      <category>microsoft</category>
    </item>
  </channel>
</rss>
