This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DLPLCR4500EVM: Artifact in pattern sequence mode, HDMI video port, vsync trigger mode

Part Number: DLPLCR4500EVM
Other Parts Discussed in Thread: DLPC350

Hi 
I’ve noticed an artifact on three Lightcrafter 4500 units and two Lightcrafter PRO4500 units, Pattern Sequence mode, pattern source: video port (HDMI), trigger mode: vsync
  • I’m trying to display a moving sinusoidal intensity pattern (sinusoidal intensity pattern along one spatial dimension, repeated along the orthogonal spatial dimension, moving like a wave along the first spatial dimension, repeatedly).
  • Instead of a smooth sinusoidal intensity pattern, I’m seeing multiple narrow bands of the wrong intensity, scattered throughout the pattern. This is not a subtle artifact. It is strong enough to make the pattern unusable. 
    • Bands do not appear on computer monitor (I’ve tried two computers, each with different operating systems, GPUs, and monitors)
    • Bands appear on Lightcrafters that have different sets of cables (power/usb/HDMI) 
    • Like the sinusoidal pattern, the bands do not vary along the dimension orthogonal to the dimension across which the sinusoid is drawn 
    • The intensity of an individual band can be either greater or lesser than intended, and does not appear to depend on whether it is located in the rising or falling phase of the sinusoid
    • It’s hard to tell, but the band intensity may always be at maximum or minimum intensity
    • Bands becomes more obvious as I increase frame rate (vsync period) - bands appear around 60 Hz, and at 100 Hz, are very obvious
    •  as the sinusoid’s spatial and temporal frequency increase (fewer than two sinusoidal periods across the entire image, moving at at least 1 Hz)  
    • Bands are much less obvious when bit depth is set to 6 bit in the Lightcrafter GUI (across full range of exposure periods, pattern periods, number of patterns, etc)
    • Bands only appear in moving patterns (static version of the same pattern does not produce bands) 
    • Bands appear at particular positions along the sinusoidal pattern, and move with the sinusoid, remaining in those positions as the sinusoid moves across the screen
    • Bands are inverse mirror symmetric (if there is a darker-than-intended band in a particular location of the rising phase of sinusoid, there will be a lighter-than-intended band in the same relative location on the falling phase of sinusoid)
    • Bands are equal in width, judging by eye (roughly 5-8 pixels?? This is a guess)
    • Bands appear regardless of the sinusoid’s orientation or direction of motion 
    • Spacing between bands appears random 
    • Bands are most obvious and most numerous furthest from the peak/trough of the sinusoid (in the “greyest" areas)  
    • Bands only appear when the texture resolution is high (roughly 5 pixels or fewer per texel)
  • I don’t have the ability to take a photo of the artifact, but I found a photo online that looks very similar. This photo (at bottom) claims to show a DXT compression artifact, maybe totally unrelated, maybe not. This photo does not show a sinusoidal pattern, but it does show an intensity gradient, with scattered bands throughout.
  • It seems like the Lightcrafter is having trouble representing particular grey values (since the banding moves with the sinusoid, and is inverse-mirror symmetric). The fact that it only appears obvious in 8 bit, and becomes more obvious as the sinusoid gets larger in period and moves relatively quickly, means that when the grey value transitions from one frame to another become very small, the DMD fails, but only if the frame rate is relatively fast (60+ Hz). Because the artifact does not appear on the computer monitor, I think the problem is related to how the Lightcrafter interprets the data.  
  • Finally, when displaying these moving sinusoids, the motion does not always appear smooth. There are occasional skips in the motion, and these skips are most obvious under circumstances when the bands are also most obvious, described above. So this may be a related artifact. 
Here is some detail on my setup (and a photo of my GUI): 
  • Operating system: Windows 10 (bands also appear on Ubuntu 16.04.5 LTS)
  • Hardware: NVIDIA Quadro K2200 (DisplayPort output) to DisplayPort -> HDMI adapter to HDMI -> mini HDMI cable to DLP4500 EVM
  • Images are designed in OpenGL using Microsoft Visual Studio 14.0 
  • Lightcrafter GUI version 3.0.1
  • Pattern sequence mode 
  • LED: manual, blue, current 75 (bands appear using any combination of LEDs, at any current)
  • pattern source: video port
  • Trigger mode: vsync
  • Pattern exposure, pattern period: bands appear across full range of these values given 10 ms vsync (anywhere from 8333-10000 us)
    • In general I’m (arbitrarily) using pattern exposure 9500 us, pattern period 9500 us
    • Bands appear whether pattern period is shorter than or equal to pattern exposure
  • Color depth: 8 bit (bands are much less obvious in 6 bit, across range of exposure/pattern periods)
    • Bands appear using any contiguous range of bit planes (R0-R7, B0-B7, etc.)
  • Clear DMD after exposure (bands appear regardless of whether we clear DMD after exposure)
  • One pattern per vsync period 
  • Lightcrafter is identified as 2nd monitor, and is not the “primary” monitor (in NVIDIA control panel)
  • Lightcrafter in portrait orientation (bands also appear in landscape)  
  • Custom resolution 912x1140@100Hz
    • Timing in NVIDIA control panel custom resolution
      • horizontal
        • active pixels: 912
        • front porch: 54
        • sync width: 64
        • total pixels 1040
        • positive pulse
      • vertical
        • active pixels: 1140
        • front porch: 17
        • sync width: 10
        • total pixels: 1170
        • positive pulse
I have been working on this for some time now, and would appreciate any help. Thanks!
Carl
PICTURE OF MY LIGHTCRAFTER GUI SETUP 
THIS IS NOT A PICTURE OF MY ARTIFACT, JUST A VERY SIMILAR IMAGE I FOUND ONLINE 
  • Here is a link to the forum where I got the picture, which is halfway down the page: https://www.hard-light.net/forums/index.php?topic=85344.0

  • Hi Carl, 

    Welcome to E2E Forums! 

    We'll help you with your query. Kindly help us reproduce this behavior at our end. Could you kindly provide us the pattern sequence configuration you are using, and also some of the images you sent to the DLPC350 through the PC during your experiment? This will help us reproduce the issue at our end faster. 

    Thanks & Regards,

    Hirak.

  • Hi Hirak

    Thanks for your reply. You ask me to provide the pattern sequence configuration, but in my post I described all the steps I take to set up the Lightcrafter in the GUI. Can you help me understand how to find the information you need? Below is a picture of how I configure the Lightcrafter in the GUI. As for the images I'm sending to the Lightcrafter, they look just like the sinusoidal pattern shown below, although in my case the sinusoid is moving (in one direction, at constant speed). So for the example pattern below, the sinusoid would move (translate) up or down, and the bands would be horizontally oriented (like the sinusoid), and would move along with the sinusoid. Note the image below doesn't have any bands (I'm unable to take a photo of the artifact). Please let me know if you need anything else, like the OpenGL code I use to generate the images I send to the Lightcrafter. Thanks!

    Carl

      

  • Hi Carl, 

    Thanks for the info, I can understand your pattern configuration from the screenshot. We'll look into this and get back to you soon!

    Thanks & Regards,
    Hirak.

  • Hi Carl, this is taking a bit more time. Kindly wait for a few more days. Thanks for your patience.

    Thanks & Regards,

    Hirak.

  • Hi Carl, 

    We have started looking into this. We tried scrolling the image on the DLPC350 in pattern mode with the same pattern config you are using. But unfortunately we are unable to reproduce. Do you see artifacts in the still image as well? Also, can you provide a video or some other material we can play on the LCR4500 to reproduce the issue?

    Thanks & Regards,
    Hirak.

  • Hi Hirak 

    Thanks for looking into this. I do not see the artifact in still images. I only see the artifact in moving images. To produce the images, I'm using Microsoft Visual Studio community edition (which is free) on Windows 10, and custom-written c++ code with many OpenGL calls. If you want, I can provide a minimal version of the code which you can run to reproduce the issue. Would that work? You say you tried scrolling the image - what image? Do you mean you took the image I provided above and sent it to the Lightcrafter? If so, that seems like it might be very different than the way I generate the images (but I'm no expert). You can email me if you want to set up a phone call to discuss how we can reproduce the artifact on your end, since those details are probably not interesting to the readers of this forum. Resolving this is essential my project and I appreciate your help.

      

  • Hi Carl, 

    Yes, actually I took the image provided by you, and tried to scroll it up and down using mouse wheel on LCR4500 screen expecting to see an artifact. I could not. if you can send me the small application to generate the pattern you use to reproduce that would be great! We can also move it to private messaging if you want. 

    Thanks & Regards,

    Hirak.

  • Do you still need the answer to your query? I'll be temporarily closing this thread due to inactivity, you can reopen anytime. 

    Thanks & Regards,

    Hirak.

  • Yes, please. Can we switch to private messaging to discuss how to reproduce the artifact on your end? Once we've resolved the issue, we can post the solution to this thread publicly. Please send me a private message when you are ready to move forward. Thanks,

    Carl

  • Also, yes, I will send you a small application that can hopefully reproduce the issue on your end, once I know where to send it. Thanks,

    Carl  

  • And yes, I can send you a small application that can hopefully reproduce the issue on your end, once I know where to send it. Thanks,

    Carl 

  • Hi Hirak 

    Are you able to send me a private message so we can discuss some of the implementation details? Thanks 

  • Hi Carl, 

    I have sent you a friendship request. Kindly check and accept this invitation. 

    Thanks & Regards,

    Hirak

  • Hi, Since we moved to private conversation I will be closing this thread. You  can reopen by replying to it anytime. 

    Thanks & Regards,

    Hirak.