GithubHelp home page GithubHelp logo

microsoft / lumia-imaging-sdk Goto Github PK

View Code? Open in Web Editor NEW
74.0 23.0 37.0 42.53 MB

Lumia Imaging SDK is a comprehensive set of GPU/CPU imaging tools and effects that run on both mobile and desktop, with high speed and memory efficiency. Samples and extras code are included.

License: MIT License

C# 100.00%

lumia-imaging-sdk's Introduction

Lumia Imaging SDK projects

Contents

1. Quick start

Quick Start is a sample project accompanying the tutorial that helps to get your first app that utilizes the Lumia Imaging SDK up and running. This sample implements the following basic tasks: picking an image from the camera roll, applying an effect to it, and processing the filtered image to be rendered and saved as a full resolution JPEG.

Quick Starts
Quick Start (C#) for Windows 10 and Windows 10 Mobile
Quick Start (Visual Basic) for Windows 10 and Windows 10 Mobile
Quick Start for Windows Phone 10 HTML5/JScript
Quick Start for Windows 8.1 and Windows Phone 8.1

2. Sample projects

Samples
Edit Showcase Edit Showcase is an example app that demonstrates the use of effects on still images. The photo is processed with the predefined effects. In addition, custom controls are implemented for manipulating the effect properties in real time. The processed image can be saved in the JPEG format into the camera roll.
Video Effect Video Effect sample is an example app that demonstrates the capabilities and performance of the Lumia Imaging SDK by allowing the user to preview and apply a number of real-time effects to camera preview. The effects are applied to the stream received from the camera and shown in the viewfinder. The effects can be changed using the buttons in the application bar. This example app supports recording and capturing of videos and photos.
Lumia Imaging SDK and Win2D Demo Lumia Imaging SDK and Win2D Demo is an example app that demonstrates the use of the Lumia Imaging SDK together with the Win2D API.
Image Sequencer Image Sequencer is an example app that demonstrates the use of the Image Aligner and GIF Renderer APIs for creating Cinemagraph-style animations in the animated GIF format. There are also some example image sequences that can be used as a basis for the alignment and animation.
Custom Effect Sample Custom Effect sample demonstrates how to create Custom Effects to do image manipulation both on the CPU and the GPU.

3. Lumia Imaging SDK Extras

This repository contains extra functionality and sample code for the Lumia Imaging SDK.

The code is provided under the MIT license, and can therefore be conveniently used and modified.

Parts contained will typically target the latest release version of the Lumia Imaging SDK, unless otherwise marked.

3.1 Philosophy

  • The projects (.csproj, .vcxproj etc) collect various classes/features, but are mainly for sample and testing purposes.
  • This repository should be considered as a set of individual classes, not as a library.
  • New revisions may not be compatible with old ones.
  • Therefore, if you find something useful, it may be easier to isolate the part you want instead of taking a dependency on all the projects included.

3.2 Managed (C#/.NET)

3.2.1 Layer system

Managed/Lumia.Imaging.Extras.Layers/

Allows to describe image processing as a list of layers, like the familiar representation found in photo editing apps.

After configuring the layers, an IImageProvider endpoint can be easily retrieved and rendered.

Features

  • Layers and Adjustment Layers
  • Layer styles (blend function, opacity, transparency mask, scaling/translation)
  • Tuned for performance and low GC pressure in interactive scenarios.
  • Flexible, construction of actual objects can be deferred etc.

3.2.2 Image sources/effects

Managed/Lumia.Imaging.Extras.ImageProviders/

NoiseImageSource A noise generator image source. Internally uses a ColorImageSource and a NoiseFilter.

HighpassEffect A "highpass" effect, similar to familiar ones in photo editing apps.

DepthofField A set of high-level scenarios showing how to set up a "DoF" effect.

HslAdjustmentEffect Example of an effect that does higher level HSL adjustments, similar to familiar ones in photo editing apps. Allows adjustments of saturation and lightness around Master, Red, Green, Blue, Cyan, Magenta and Yellow channels.

3.2.3 Utility code

Managed/Lumia.Imaging.Extras.Utility/

ImageProviderExtensions

  • GetBitmapAsync overloads that help to reuse bitmaps.
  • Rotate method, making it convenient to rotate an image provider.

BitmapExtensions

  • CopyTo/ToWriteableBitmap: Conversions to WriteableBitmap. These help in interactive scenarios, and can be useful for keeping work off the UI thread.

BufferExtensions

  • AsBufferTask: Conversion from Task<IBuffer> to a Lumia Imaging SDK IBufferProvider that can be passed into a BufferProviderImageSource. This can be useful to avoid having to await the task-of-buffer before setting up an image source.

MaybeTask<T> Value type that either holds a result or a task-of-result. This helps interactive app scenarios, keeping GC activity in check when dealing with mixed sync/async operations, as otherwise each new Task causes a heap allocation.

4. Reference

Lumia Imaging SDK

lumia-imaging-sdk's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

lumia-imaging-sdk's Issues

Bad image quality with SwapChainPanelRenderer

As in the sample EditShowCase or in the quick start for adjusting brightness in gray effect, the picture taht is rendered has a really bad quality and not sharp at all.
Is there a way to improve quality or definition ?

Thanks for your help.
sb

Consistent OutOfMemoryException when using 3.0 instead of 2.X

I recently upgraded our solution from 2.X to 3.0.

In the old version we had the following code:

  using (var source = new StorageFileImageSource(sourceFile))
      {
        using (var effect = new FilterEffect(source) { Filters = new IFilter[] { new ScaleFilter(scaleFactor), new RotationFilter(angleForRotation) } })
        {
          using (var renderer = new JpegRenderer(effect))
          {
            renderer.Quality = 0.8;
            renderer.RemoveExif = true;
            var buffer = await renderer.RenderAsync();
            using (var output = await newFile.OpenAsync(FileAccessMode.ReadWrite))
            {
              await output.WriteAsync(buffer);
              await output.FlushAsync();
            }
            processed = true;
            return path;
          }
        }
      }

and in the new version this was replaced with the following:

  using (var source = new StorageFileImageSource(sourceFile))
      using (var scale = new ScaleEffect(source, scaleFactor))
      using (var rotation = scaleFactor < 1 ? new RotationEffect(scale, angleForRotation) : new RotationEffect(source, angleForRotation))
      using (var renderer = new JpegRenderer(rotation) { Quality = 0.8 })
      {
        var buffer = await renderer.RenderAsync();
        using (var output = await newFile.OpenAsync(FileAccessMode.ReadWrite))
        {
          await output.WriteAsync(buffer);
          await output.FlushAsync();
        }
        processed = true;
        return path;
      }

This code takes an image, scales and rotates it.

On a low end Windows Phone 8.1 device (Lumia 620) the new (3.0) consistently throws an OutOfMemoryException when performing this operation at RenderAsync. The old code works just fine with the same image.

Obviously being a low end device there are going to be memory restrictions but I think there must be something else going on given the first code works fine.
To solve the issue I tried wrapping the code in a try/catch to capture the OOM exception and then try again with a smaller scale but this just kept on throwing OOM exceptions until a different generic error message appeared.

For the time being I have reverted to the old version of the SDK.

GIF exporter: previous frames do not dispose on gifs with trnasparency

Hi! I'm trying to save animated gif composed from few bitmaps with transparency and it doesn't remove previous frame from animation. How can it be fixed?

Here is the result file:

pixels

My code:
`
var outputFrames = new List();
for (inti = 0; i <= animationLength; i++)
{
CanvasRenderTarget offscreen = await Export(settings, vp, i);

                IBuffer buff = offscreen.GetPixelBytes().AsBuffer();

                SoftwareBitmap bm = SoftwareBitmap.CreateCopyFromBuffer(buff, BitmapPixelFormat.Bgra8, (int)offscreen.SizeInPixels.Width, (int)offscreen.SizeInPixels.Height);
                SoftwareBitmapImageSource bs = new SoftwareBitmapImageSource(bm);

                outputFrames.Add(bs);
            }

            using (var gifRenderer = new GifRenderer())
            {
                gifRenderer.Duration = 100;
                gifRenderer.NumberOfAnimationLoops = 10000;
                gifRenderer.UseGlobalPalette = false;
                gifRenderer.ApplyDithering = false;
                gifRenderer.Sources = outputFrames.ToArray();


                var buffer = await gifRenderer.RenderAsync();
                using (var stream = await fileToSave.OpenAsync(FileAccessMode.ReadWrite))
                {
                    await stream.WriteAsync(buffer);
                }
            }

`

Can not Run With Release Mode

I am trying to run my UWP app which references the VideoEffects.Windows(Windows 8.1) project in release mode, but it always fails. The exception is
"MCG0017: MCG0017:NotWinRTType Cannot marshal generic Windows Runtime types with a non Windows Runtime type as a generic type argument. Check the generic arguments of type 'Windows.Foundation.Collections.IIterable`1<Lumia.Imaging.IFilter>'. eWP"

But it's working in Debug Mode, please help, thanks.

Rendering Effectlist always gives InvalidcastException

I try to render multiple effects as a list (the amount and order of the effects can be dynamic).
But everytime I render more than the Source it throws an InvalidCastException.

Working code with source only:
` applicationData = ApplicationData.Current;
localFolder = applicationData.LocalFolder;
imageFile = await localFolder.GetFileAsync("pic.jpg");
IAsyncOperation stream = FileIO.ReadBufferAsync(imageFile);

        var scale = new ScaleEffect(2);
        var rotation = new RotationEffect(30);
        var blur = new BlurEffect(10);

        using (var source = new BufferProviderImageSource(stream.AsBufferProvider()))
        {
            EffectList list = new EffectList() {Source = source};
            using (WriteableBitmapRenderer renderer = new WriteableBitmapRenderer(list))
            {
                renderer.OutputOption = OutputOption.PreserveAspectRatio;
                renderer.WriteableBitmap = new WriteableBitmap(1024,768);

                WriteableBitmap wp = await renderer.RenderAsync();
                imageControl.Source = wp;
            }
        }

`

Not working with list:
` applicationData = ApplicationData.Current;
localFolder = applicationData.LocalFolder;
imageFile = await localFolder.GetFileAsync("pic.jpg");
IAsyncOperation stream = FileIO.ReadBufferAsync(imageFile);

        var scale = new ScaleEffect(2);
        var rotation = new RotationEffect(30);
        var blur = new BlurEffect(10);

        using (var source = new BufferProviderImageSource(stream.AsBufferProvider()))
        {
            EffectList list = new EffectList() {source,scale,rotation,blur};
            using (WriteableBitmapRenderer renderer = new WriteableBitmapRenderer(list))
            {
                renderer.OutputOption = OutputOption.PreserveAspectRatio;
                renderer.WriteableBitmap = new WriteableBitmap(1024,768);

                WriteableBitmap wp = await renderer.RenderAsync();
                imageControl.Source = wp;
            }
        }

`

I also tried with JpegRenderer... same result.
Additionally I can't find any complete sample using EffectList().

File not found exception

I'm consistently getting a FileNotFoundException ("The specified module could not be found", HRESULT: 0x8007007E) when my app first references any Lumia Imaging 3 SDK class. This is the Universal version on Phone 10. I've uninstalled/reinstalled VS 2015 with Update 1, deleted the Nuget package from my profile, and it makes no difference. Same error on ARM device (Lumia 1020) or x86 emulator, Release or Debug. I'd be glad to share the appx in case that reflects some missing file(s).

I've put so many hours into this! I'm fine with it being a mistake I've made, but there's not much to do other than add the Nuget reference.

Help!

exception

Synchronous Rendering

I know there's not much chance of this happening at this point, but is there any hope of getting some proper synchronous rendering options for Direct3DSurfaceRenderer?

It's especially important to keep threaded during Win2D drawing or creating video effect definitions, and frankly the operations themselves aren't asynchronous (but are presumably being put on a background thread), which we have no use for in these scenarios other than losing performance using .AsTask().Wait()

Or even better, open source the Adjustments / Artistic namespaces etc. so that someone and make them play even more conveniently with Win2D.

ImageSequencer sample missing line of code

I downloaded the current master and tried image sequencer. GifExporter crashes in the Export method on the line

int w = (int)info.ImageSize.Width;

info is null as it's not been set. All I did was to select an image set in the main menu then press the save button. To fix this I just fixed the if block above the aforementioned line so that it reads the following,

if (asyncImageResource == null)
{
    info = sanitizedImages[0] as IImageResource;
}
else
{
    info = await asyncImageResource.LoadAsync();
}

This got the sample working for me.

FileNotFoundException using your sample app

Exception thrown in StorageFileImageSource in the EditShowcase sample when trying to open an image. Error is in routine:

public Task LoadPhotoAsync(StorageFile file)
{
return m_renderer.LoadPhotoAsync(new StorageFileImageSource(file));
}

System.IO.FileNotFoundException was unhandled by user code
HResult=-2147024770
Message=The specified module could not be found. (Exception from HRESULT: 0x8007007E)
Source=mscorlib
StackTrace:
at System.StubHelpers.StubHelpers.GetWinRTFactoryObject(IntPtr pCPCMD)
at Lumia.Imaging.StorageFileImageSource..ctor(IStorageFile storageFile)
at Lumia.Imaging.EditShowcase.ViewModels.FilterExplorerViewModel.LoadPhotoAsync(StorageFile file)
at Lumia.Imaging.EditShowcase.ViewModels.FilterExplorerViewModel.d__49.MoveNext()
InnerException:

How to improve blend effect quality?

I am developing an app that put text into a background image. The textblocks are placed on a canvas control as children and I render the canvas to PNG. Then I use the BlendEffect to blend it with a background image.

Here's my code

private async void saveChainedEffects(StorageFile file)
{
    var displayInformation = DisplayInformation.GetForCurrentView();
    var renderTargetBitmap = new RenderTargetBitmap();
    await renderTargetBitmap.RenderAsync(Textify.CanvasControl);
    var width = renderTargetBitmap.PixelWidth;
    var height = renderTargetBitmap.PixelHeight;
    IBuffer textBuffer = await renderTargetBitmap.GetPixelsAsync();
    byte[] pixels = textBuffer.ToArray();

    using (InMemoryRandomAccessStream memoryRas = new InMemoryRandomAccessStream())
    {
        //Encode foregroundtext to PNG
        var encoder = await BitmapEncoder.CreateAsync(BitmapEncoder.PngEncoderId, memoryRas);

        encoder.SetPixelData(BitmapPixelFormat.Bgra8,
                             BitmapAlphaMode.Straight,
                             (uint)width,
                             (uint)height,
                             displayInformation.LogicalDpi,
                             displayInformation.LogicalDpi,
                             pixels);

        await encoder.FlushAsync();

        IImageProvider effectBackground;

        if (SelectedEffect.Name == "No Effect")
        {
            effectBackground = imageProcessorRenderer.M_Source;
        }
        else
        {
            effectBackground = (SelectedEffect.GetEffectAsync(imageProcessorRenderer.M_Source, new Size(), new Size())).Result;
        }

        StreamImageSource streamForeground = new StreamImageSource(memoryRas.AsStream());

        //Sharpening the text has unintended consequences to I set to 0d
        using (SharpnessEffect sharpnessEffect = new SharpnessEffect(streamForeground, 0d) )
        using (BlendEffect blendEffect = new BlendEffect(effectBackground, sharpnessEffect, BlendFunction.Normal, 1.0f))
        {
            string errorMessage = null;
            Debug.WriteLine("M_SourceSize (Normalized) {0}", imageProcessorRenderer.M_SourceSize);
            Debug.WriteLine("PreviewSize {0}", imageProcessorRenderer.PreviewSize);

            try
            {
                using (var filestream = await file.OpenAsync(FileAccessMode.ReadWrite))
                using (var jpegRenderer = new JpegRenderer(blendEffect) { Size = imageProcessorRenderer.M_SourceSize, Quality = 1.0, RenderOptions = RenderOptions.Mixed })
                {
                    IBuffer jpegBuffer = await jpegRenderer.RenderAsync().AsTask().ConfigureAwait(false);
                    await filestream.WriteAsync(jpegBuffer);
                    await filestream.FlushAsync();
                }
            }
            catch (Exception exception)
            {
                errorMessage = exception.Message;
            }

            if (!string.IsNullOrEmpty(errorMessage))
            {
                var dialog = new MessageDialog(errorMessage);
                await dialog.ShowAsync();
            }
        }
    }
}

Here's the image as seen on my PC screen before it's saved to JPEG

screenshots

Then when the image is saved to JPG, there's a noticeable reduction in the quality as seen below. Enlarge the image and pay attention to the edges of the font.

textifier_20160908133852

So what are my options if I want to get as close as to the original image quality?

An unhandled win32 exception with BlendEffect during property changed

The error is raised randomly in my code. There's so stacktrace available

untitled-2

It's more common when when RaisedPropertyChanged is called such as

    public IImageProvider IForeground
    {
        get { return BlendifierEffect.ForegroundSource; }
        set
        {
            if (BlendifierEffect.ForegroundSource != value)
            {
                BlendifierEffect.ForegroundSource = value;          
                updateImageBlending();
                RaisedPropertyChanged();
            }
        }
    }

So I commented out the RaisedPropertyChanged() method call but it's still being raised once in a while.

The updateImageBlending() is a method which just re-render the effect if any of the blending properties is changed.

    private async void updateImageBlending()
    {
        if (IsRendering)
        {
            return;
        }

        if (SelectedPicture == null)
        {
            return;
        }

        if (SelectedPicture.Index < 3)
        {
            return;
        }

        if (SelectedEffect == null )
        {
            IImageProcessor noEffect = FilterEffects.FirstOrDefault();

            if (noEffect != null)
            {
                RenderResult renderResult = await imageProcessorRenderer.RenderAsync(noEffect, RenderOption.RenderToSoftwareBitmap | RenderOption.RenderAtPreviewSize);
                imageProcessorRenderer.BlendBackground = renderResult.SoftwareBitmap;
                IBackground = new SoftwareBitmapImageSource(imageProcessorRenderer.BlendBackground);
            }
            else
            {
                return;
            }
        }

        Dispatcher.Dispatch(() => { IsRendering = true; });            

        SoftwareBitmap softwareBitmap = null;       
        softwareBitmapRenderer.Size = imageProcessorRenderer.PreviewSize;
        softwareBitmapRenderer.RenderOptions = RenderOptions.Cpu;
        softwareBitmap = await softwareBitmapRenderer.RenderAsync();

        Dispatcher.Dispatch(async () =>
        {
            WriteableBitmapPreview = await convertPreviewToWriteableBitmap(softwareBitmap, null);
        });


        Dispatcher.Dispatch(() => { IsRendering = false; });

    }

softwareBitmapRender takes a BlendEffect and is initialized in the beginning.

if (BlendifierEffect == null)
{
    BlendifierEffect = new BlendEffect();
    BlendifierEffect.GlobalAlpha = 0.5d;
    BlendifierEffect.BlendFunction = BlendFunction.Normal;
    BlendifierEffect.TargetOutputOption = OutputOption.PreserveAspectRatio;
    BlendifierEffect.TargetArea = new Rect(0d, 0d, Scale, Scale);
}
if (softwareBitmapRenderer == null)
{
    softwareBitmapRenderer = new SoftwareBitmapRenderer(BlendifierEffect);
}   

BlendEffect is updated as user change its properties such as

    public IImageProvider Mask
    {
        get { return BlendifierEffect.MaskSource; }
        set
        {
            if (BlendifierEffect.MaskSource != value)
            {
                BlendifierEffect.MaskSource = value;
                updateImageBlending();
            }
        }
    }

What is causing the error and how do I catch it or disable it?

MFT Exception

I started seeing an exception in my app that uses the new MFT. I came back here and tried to reproduce it and was successful.

Environmental Facts:

  • My app targets 10586, but repro same error as the demo targeting 10240
  • PC is on 14267 (I do NOT have the preview SDK installed)
  • **VideoDeviceCharacteristic _reports _AllStreamsIndependent
  • I can repro with both cameras (SurfaceBook)

Here are the steps to reproduce:

  1. Start Video MFT example app
  2. Select any effect (editable or static)
  3. Start Recording
  4. The frame will freeze and crash

Here's the debug output the following:

Starting recording...
Exception thrown: 'System.InvalidCastException' in VideoEffectSample.exe
Exception thrown: 'System.InvalidCastException' in VideoEffectSample.exe
Exception thrown: 'System.InvalidCastException' in mscorlib.ni.dll
Exception thrown: 'System.InvalidCastException' in mscorlib.ni.dll
The Windows Runtime Object can only be used in the threading context where it was created, because it implements INoMarshal or has MarshalingBehaviorAttribute(MarshalingType.None) set.
The Windows Runtime Object can only be used in the threading context where it was created, because it implements INoMarshal or has MarshalingBehaviorAttribute(MarshalingType.None) set.

Exception thrown: 'System.ArgumentException' in mscorlib.ni.dll
WinRT information: The parameter is incorrect.

Blending AutoEnhance Effect and other source throw InvalidArgumentException

I am trying to blend an existing image with another IImageProvider that has an Effect applied. I noticed there are are several Effects that throw InvalidArgumentException such as the Auto Enhance and Auto Levels. Many other Effects such as the Antique effect does not throw this error.

untitled-1

My code:

    . . .
SoftwareBitmapImageSource streamTextBitmapForeground = new SoftwareBitmapImageSource(normalizedTextSoftwareBitmap);

//using (SharpnessEffect sharpenText = new SharpnessEffect(streamTextBitmapForeground, SettingsPart.SharpnessLevel))
using (BlendEffect blendEffect = new BlendEffect(effectBackground, streamTextBitmapForeground, BlendFunction.Normal, 1.0f))
using (BitmapRenderer bitmapRenderer = new BitmapRenderer(blendEffect))
{

    Bitmap bitmap = await bitmapRenderer.RenderAsync();
    byte[] pixelBuffer = bitmap.Buffers[0].Buffer.ToArray();

    using (var stream = new InMemoryRandomAccessStream())
    {
        var pngEncoder = await BitmapEncoder.CreateAsync(BitmapEncoder.PngEncoderId, stream).AsTask().ConfigureAwait(false);

        pngEncoder.SetPixelData(BitmapPixelFormat.Bgra8,
            BitmapAlphaMode.Straight,
            (uint)bitmap.Dimensions.Width,
            (uint)bitmap.Dimensions.Height,
            displayInformation.LogicalDpi,
            displayInformation.LogicalDpi,
            pixelBuffer);

        await pngEncoder.FlushAsync().AsTask().ConfigureAwait(false);

        . . .

The error is raised at Bitmap bitmap = await bitmapRenderer.RenderAsync();

Perhaps I need to set some parameters like imagesize or something but I can't figure out what I am missing from the error message. Any ideas?

LensBlurEffect.LensBlurFocusAreaEdgeMirroring dont' work

I want there is a smooth transition between the focus area and the unfocus area.
However, whatever I try, the transition between those two area is arbitrary.

Here is my code:

//Draw a bitmap that contains a white circle in a black rect.
var bmp = new WriteableBitmap(canvasWidth, canvasHeight);
bmp.FillRectangle(0, 0, canvasWidth, canvasHeight, Colors.Black);
bmp.FillEllipseCentered((int)centerX, (int)centerY, (int)BlurCircle.ActualWidth/2, (int)BlurCircle.ActualHeight/2, Colors.White);

var src = new StorageFileImageSource(backgroundFile);
var masksrc = new BitmapImageSource((Bitmap)bmp.AsBitmap());
var blurEffect = new LensBlurEffect(src, masksrc);
blurEffect.FocusAreaEdgeMirroring = LensBlurFocusAreaEdgeMirroring.On;
blurEffect.FocusEdgeSoftening = new LensBlurFocusEdgeSoftening(30);
blurEffect.BlendKernelWidth = 255;
blurEffect.Kernels = new LensBlurPredefinedKernel[] { new LensBlurPredefinedKernel(LensBlurPredefinedKernelShape.Circle, 30) };

using(var renderer=new JpegRenderer(blurEffect)
{
      //...do render thing.
}

Multi errors while building app

I kept on getting several errors while debugging and building my app. To fix this I deleted the bin folder but have to keep doing it when the error occur.

I get cannot open symbol file most of time such as

EmbeddedBreakpoint occurred Message: Textifier.exe has triggered a breakpoint. D:\Users\Vicky\OneDrive\Dev\Textifier\Textifier\bin\x86\Debug\AppX\wntdll.pdb: Cannot find or open the PDB file. C:\Windows\SysWOW64\wntdll.pdb: Cannot find or open the PDB file. C:\WINDOWS\wntdll.pdb: Cannot find or open the PDB file. C:\WINDOWS\symbols\dll\wntdll.pdb: Cannot find or open the PDB file. C:\WINDOWS\dll\wntdll.pdb: Cannot find or open the PDB file. D:\Users\Vicky\Symbol\wntdll.pdb\82ef469b4fd2482ba7fbf5b6369477471\wntdll.pdb: Cannot find or open the PDB file. D:\Users\Vicky\Symbol\MicrosoftPublicSymbols\wntdll.pdb\82ef469b4fd2482ba7fbf5b6369477471\wntdll.pdb: Cannot find or open the PDB file.

or

D:\Users\Vicky\OneDrive\Dev\Textifier\Textifier\bin\x86\Debug\AppX\Lumia.Imaging.pdb: Cannot find or open the PDB file. D:\Users\Vicky\OneDrive\Dev\Textifier\Textifier\bin\x86\Debug\AppX\Lumia.Imaging.pdb: Cannot find or open the PDB file. E:\CI\workspace\IMAGING-SDK-Build-Master-UWP-x86\imaging-sdk-src\BuildOutput\UAP\x86\Release\Lumia.Imaging.pdb: Cannot open symbol file. C:\WINDOWS\Lumia.Imaging.pdb: Cannot find or open the PDB file. C:\WINDOWS\symbols\dll\Lumia.Imaging.pdb: Cannot find or open the PDB file. C:\WINDOWS\dll\Lumia.Imaging.pdb: Cannot find or open the PDB file. D:\Users\Vicky\Symbol\Lumia.Imaging.pdb\f52231e757a9448694a44e27f01928f81\Lumia.Imaging.pdb: Cannot find or open the PDB file. D:\Users\Vicky\Symbol\MicrosoftPublicSymbols\Lumia.Imaging.pdb\f52231e757a9448694a44e27f01928f81\Lumia.Imaging.pdb: Cannot find or open the PDB file.

Or the vccorlib140_app.dll error

Message: Exception thrown at 0x1226E234 (vccorlib140_app.dll) in Textifier.exe: 0xC0000005: Access violation reading location 0x00000008.

When trying to save to Jpeg after applying a blend effect I get

Exception thrown at 0x74A096C2 in Textifier.exe: Microsoft C++ exception: Platform::COMException ^ at memory location 0x00D3F3E0. HRESULT:0x88982F50 The component cannot be found.
WinRT information: The component cannot be found.

Exception thrown: 'System.Exception' in mscorlib.ni.dll
Exception thrown: 'System.Exception' in mscorlib.ni.dll
'Textifier.exe' (Win32): Loaded 'C:\Windows\SysWOW64\dui70.dll'. Cannot find or open the PDB file.
'Textifier.exe' (Win32): Loaded 'C:\Windows\SysWOW64\duser.dll'. Cannot find or open the PDB file.
'Textifier.exe' (Win32): Loaded 'C:\Windows\WinSxS\x86_microsoft.windows.common-controls_6595b64144ccf1df_5.82.14393.0_none_88fef4c26039fb25\comctl32.dll'. Cannot find or open the PDB file.
'Textifier.exe' (Win32): Loaded 'C:\Windows\SysWOW64\UIAnimation.dll'. Cannot find or open the PDB file.
'Textifier.exe' (Win32): Loaded 'C:\Windows\SysWOW64\atlthunk.dll'. Cannot find or open the PDB file.

How do I fix this? Thanks.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.