Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. General Programming
  3. C / C++ / MFC
  4. Capturing Video Surface

Capturing Video Surface

Scheduled Pinned Locked Moved C / C++ / MFC
question
6 Posts 4 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • C Offline
    C Offline
    Chiew Heng Wah
    wrote on last edited by
    #1

    I can screen capture a window surface. But not a video surface being played on Media Player. I get only the frame of the Media Player and a "black" surface where the current video frame should be. This "black" surface is seeming like a "transparent" layer (I am guessing here) upon which the video frames are rendered. I am guessing it is the DirectShow surface. How can I capture the video frame?:confused:

    J 1 Reply Last reply
    0
    • C Chiew Heng Wah

      I can screen capture a window surface. But not a video surface being played on Media Player. I get only the frame of the Media Player and a "black" surface where the current video frame should be. This "black" surface is seeming like a "transparent" layer (I am guessing here) upon which the video frames are rendered. I am guessing it is the DirectShow surface. How can I capture the video frame?:confused:

      J Offline
      J Offline
      Joey Bloggs
      wrote on last edited by
      #2

      Some of these may help 1. Right click on your desktop into Display Properies, Settings, Advanced disable video overlay on your video card. 2. Run Dxdiag.exe go to the display page and disable Direct Draw hardware acceleration

      C U 2 Replies Last reply
      0
      • J Joey Bloggs

        Some of these may help 1. Right click on your desktop into Display Properies, Settings, Advanced disable video overlay on your video card. 2. Run Dxdiag.exe go to the display page and disable Direct Draw hardware acceleration

        C Offline
        C Offline
        Chiew Heng Wah
        wrote on last edited by
        #3

        Isn't there another way without changing to software emulation? :((

        K 1 Reply Last reply
        0
        • C Chiew Heng Wah

          Isn't there another way without changing to software emulation? :((

          K Offline
          K Offline
          Kochise
          wrote on last edited by
          #4

          Nope, no ways ;) Try also to make sure the bitmap displayed have the same format than the screen (if you grab a 16-bits/peixel picture and try to display it on a 32-bits/pixel screen, you'll get a blank/black screen). If it is a code you own and thus you can modify, you should convert the grabbed picture to the screen format before display... Kochise In Cod we trust !

          C 1 Reply Last reply
          0
          • K Kochise

            Nope, no ways ;) Try also to make sure the bitmap displayed have the same format than the screen (if you grab a 16-bits/peixel picture and try to display it on a 32-bits/pixel screen, you'll get a blank/black screen). If it is a code you own and thus you can modify, you should convert the grabbed picture to the screen format before display... Kochise In Cod we trust !

            C Offline
            C Offline
            Chiew Heng Wah
            wrote on last edited by
            #5

            Thanks.

            1 Reply Last reply
            0
            • J Joey Bloggs

              Some of these may help 1. Right click on your desktop into Display Properies, Settings, Advanced disable video overlay on your video card. 2. Run Dxdiag.exe go to the display page and disable Direct Draw hardware acceleration

              U Offline
              U Offline
              User 1616484
              wrote on last edited by
              #6

              is there anyway to set the hardware acceleration in c++?

              1 Reply Last reply
              0
              Reply
              • Reply as topic
              Log in to reply
              • Oldest to Newest
              • Newest to Oldest
              • Most Votes


              • Login

              • Don't have an account? Register

              • Login or register to search.
              • First post
                Last post
              0
              • Categories
              • Recent
              • Tags
              • Popular
              • World
              • Users
              • Groups