Welcome Guest! You need to login or register to make posts.

Notification

Icon
Error

Options
Go to last post Go to first unread
QuinnUK  
#1 Posted : Wednesday, January 24, 2007 10:41:17 PM(UTC)
QuinnUK

Rank: Member

Groups: Member
Joined: 1/24/2007(UTC)
Posts: 6

Hi,

I am currently evaluating Graphics Mill for .NET for use in an image conversion routine. One of the requirements is the ability to handle extremely large TIFF files (200MB - 1GB in size).

In an previous thread (http://www.aurigma.com/Forums/Topic4858-15-1.aspx) Dmitry states that the maximum image size is limited by system resources available. Available system memory is stated to be one of the primary limiting factors.

Is anyone aware of a workaround solution to allow processing of extremely large files which exceed the limits of available system memory? I am thinking of something along the lines of prehaps using physical disk swap space for accomplishing this. I am relatively new to the .NET arena and any suggestions would be greatly appreciated.

Thanks,

Phil Quinn
Dmitry  
#2 Posted : Thursday, January 25, 2007 6:06:04 PM(UTC)
Dmitry

Rank: Advanced Member

Groups: Member, Administration, Moderator
Joined: 8/3/2003(UTC)
Posts: 1,070

Thanks: 1 times
Was thanked: 12 time(s) in 12 post(s)
Hello Phil,

You can try to use large swap file on fast hard drive.
Sincerely yours,
Dmitry Sevostyanov

UserPostedImage Follow Aurigma on Twitter!
QuinnUK  
#3 Posted : Thursday, January 25, 2007 9:56:51 PM(UTC)
QuinnUK

Rank: Member

Groups: Member
Joined: 1/24/2007(UTC)
Posts: 6

Hi Dmitry,

I have followed your suggestion and increased the available swap size on the machine I'm developing on to 3GB. This is in addition to the 1GB of RAM this machine has. Unfortunately I am still encountering the following exception when attempting to process the any file upwards of around 250MB:
Code:
Aurigma.GraphicsMill.UnexpectedException: Unable to commit memory.


My code is essentially the same as that in the documentation for the TiffReader class:
Code:
string filename = @"d:\images\huge.tif";

using (Aurigma.GraphicsMill.Codecs.IFormatReader reader =
           Aurigma.GraphicsMill.Codecs.FormatManager.CreateFormatReader(filename))
{

    using (Aurigma.GraphicsMill.Bitmap bitmap = 
               new Aurigma.GraphicsMill.Bitmap())
    {
        for (int i = 0; i < reader.FrameCount - 1; i++)
        {
            using (Aurigma.GraphicsMill.Codecs.IFrame frame =
                       reader.LoadFrame(i))
            {
                frame.GetBitmap(bitmap);                
                bitmap.Save(@"d:\images\output\frame_" + i.ToString() + ".jpg");
            }
        }
    }
}


Am I missing a trick here?

Edited by user Tuesday, December 18, 2007 5:20:19 PM(UTC)  | Reason: Not specified

Dmitry  
#4 Posted : Sunday, January 28, 2007 6:16:50 PM(UTC)
Dmitry

Rank: Advanced Member

Groups: Member, Administration, Moderator
Joined: 8/3/2003(UTC)
Posts: 1,070

Thanks: 1 times
Was thanked: 12 time(s) in 12 post(s)
Hello,

It seems that GDI is unable to commit memory. Which dimensions and pixel format of TIFF image?
Sincerely yours,
Dmitry Sevostyanov

UserPostedImage Follow Aurigma on Twitter!
QuinnUK  
#5 Posted : Sunday, January 28, 2007 7:16:33 PM(UTC)
QuinnUK

Rank: Member

Groups: Member
Joined: 1/24/2007(UTC)
Posts: 6

Hi Dimtry,

The image I am attempting to process was generated using Adobe Photoshop CS2 for Windows. It has the following attributes:

Dimensions: 15000x15000 pixels
Bit Depth: 24
Frames: 1
Include layers: No
Image Compression: None
Pixel Order: Interleaved
Byte Order: IBM PC
Save Image Pyramid: No
Size: 675 035 704 bytes

Graphics Mill for .NET is able to successfully process smaller (<200MB) TIF images generated in the same manner.

Phil
Dmitry  
#6 Posted : Tuesday, January 30, 2007 7:44:03 PM(UTC)
Dmitry

Rank: Advanced Member

Groups: Member, Administration, Moderator
Joined: 8/3/2003(UTC)
Posts: 1,070

Thanks: 1 times
Was thanked: 12 time(s) in 12 post(s)
Hello,

This exception indicates that Windows GDI cannot commit memory buffer of the specified size. The feature of managing huge-size images will be added in the future versions of Graphics Mill for .NET.
Sincerely yours,
Dmitry Sevostyanov

UserPostedImage Follow Aurigma on Twitter!
QuinnUK  
#7 Posted : Tuesday, January 30, 2007 7:53:18 PM(UTC)
QuinnUK

Rank: Member

Groups: Member
Joined: 1/24/2007(UTC)
Posts: 6

Hi Dimtry,

Thank you for your help with this and for answering my question.

I would welcome a such a feature in future releases of Graphics Mill for .NET.

To solve my immediate problem I shall investigate an alternative solutions to the issue of re-encoding extremely large TIFF files.

Phil.
cjh  
#8 Posted : Tuesday, July 24, 2007 4:05:01 AM(UTC)
cjh

Rank: Member

Groups: Member
Joined: 8/3/2006(UTC)
Posts: 5

Do you know when the next version of Graphics Mill will come out, which will include support for huge file sizes? I was ready to adopt Graphics Mill for a web project I am working on, but ran up against the "unable to commit memory" error.
Alex Kon  
#9 Posted : Sunday, July 29, 2007 6:31:08 PM(UTC)
Alex Kon

Rank: Advanced Member

Groups: Administration
Joined: 1/31/2005(UTC)
Posts: 458

Was thanked: 5 time(s) in 5 post(s)
Hello,

This issue is included into the schedule, but we are not ready to give publicity to release date of the version which will support "huge" files. We have to do a lot of work for that.
Users browsing this topic
Forum Jump  
You cannot post new topics in this forum.
You cannot reply to topics in this forum.
You cannot delete your posts in this forum.
You cannot edit your posts in this forum.
You cannot create polls in this forum.
You cannot vote in polls in this forum.