aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/Tango.RemoteDesktop/Encoders
diff options
context:
space:
mode:
authorRoy Ben Shabat <Roy.mail.net@gmail.com>2020-03-03 00:29:03 +0200
committerRoy Ben Shabat <Roy.mail.net@gmail.com>2020-03-03 00:29:03 +0200
commite02d0d2188f123618b7e394405769918a485309c (patch)
tree21dea04e83bc20cb80eaac8f5011513301d406c1 /Software/Visual_Studio/Tango.RemoteDesktop/Encoders
parent0dcd742a3c35527386a93e1b1ef761c2aeff8308 (diff)
downloadTango-e02d0d2188f123618b7e394405769918a485309c.tar.gz
Tango-e02d0d2188f123618b7e394405769918a485309c.zip
Improved GifEncoder.
Reactivated Png8BitEncoder. Refactored BitmapComparer to return the number of diffs. TestApp now use the best possible outcome.
Diffstat (limited to 'Software/Visual_Studio/Tango.RemoteDesktop/Encoders')
-rw-r--r--Software/Visual_Studio/Tango.RemoteDesktop/Encoders/GifEncoder.cs8
-rw-r--r--Software/Visual_Studio/Tango.RemoteDesktop/Encoders/Png8BitEncoder.cs8
2 files changed, 9 insertions, 7 deletions
diff --git a/Software/Visual_Studio/Tango.RemoteDesktop/Encoders/GifEncoder.cs b/Software/Visual_Studio/Tango.RemoteDesktop/Encoders/GifEncoder.cs
index abf69d9a8..a97107dad 100644
--- a/Software/Visual_Studio/Tango.RemoteDesktop/Encoders/GifEncoder.cs
+++ b/Software/Visual_Studio/Tango.RemoteDesktop/Encoders/GifEncoder.cs
@@ -6,6 +6,7 @@ using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
+using Tango.RemoteDesktop.Quantization;
namespace Tango.RemoteDesktop.Encoders
{
@@ -24,10 +25,11 @@ namespace Tango.RemoteDesktop.Encoders
public override MemoryStream ToStream(long quality)
{
MemoryStream ms = new MemoryStream();
- var gif = MakeTransparentGif(Frame.ToBitmap(), Color.Transparent);
- gif.Save(ms, ImageFormat.Gif);
- gif.Dispose();
+ var quantizer = new OctreeQuantizer(256, true);
+ var quantized = quantizer.Quantize(Frame.ToBitmap());
+ quantized.Save(ms, ImageFormat.Gif);
ms.Position = 0;
+ quantized.Dispose();
return ms;
}
diff --git a/Software/Visual_Studio/Tango.RemoteDesktop/Encoders/Png8BitEncoder.cs b/Software/Visual_Studio/Tango.RemoteDesktop/Encoders/Png8BitEncoder.cs
index a3993d76d..7caa61bcf 100644
--- a/Software/Visual_Studio/Tango.RemoteDesktop/Encoders/Png8BitEncoder.cs
+++ b/Software/Visual_Studio/Tango.RemoteDesktop/Encoders/Png8BitEncoder.cs
@@ -19,17 +19,17 @@ namespace Tango.RemoteDesktop.Encoders
public override MemoryStream ToStream()
{
MemoryStream ms = new MemoryStream();
- //var quantizer = new OctreeQuantizer(256, true);
- //var quantized = quantizer.Quantize(Frame.ToBitmap());
+ var quantizer = new OctreeQuantizer(256, true);
+ var quantized = quantizer.Quantize(Frame.ToBitmap());
ImageCodecInfo icf = GetEncoder(ImageFormat.Png);
EncoderParameters parms = new EncoderParameters(1);
EncoderParameter parm = new EncoderParameter(System.Drawing.Imaging.Encoder.ColorDepth, 8);
parms.Param[0] = parm;
- Frame.ToBitmap().Save(ms, icf, parms);
+ quantized.Save(ms, icf, parms);
ms.Position = 0;
- //quantized.Dispose();
+ quantized.Dispose();
return ms;
}