Discussion:
Please explain what heic installers are doing on Windows with Irfanview
(too old to reply)
david
2024-11-26 06:03:54 UTC
Permalink
Can you please explain what is happening when I install HEIC?

Background.
1. I have been using Irfanview since forever.
2. Apple owner gives me HEIC image files to view & batch edit.
3. Irfanview 32 4.70 can't open them so I google & find this.
https://www.irfanview.com/faq.htm#PAGE6

That suggests a few methods, one of which is this.
https://github.com/prsyahmi/wic_heic/releases/

That has this zip file containing "x86" & "64-bit" zips.
https://github.com/prsyahmi/wic_heic/releases/download/v1.0.3/wic_heic-v1.0.3.zip

The x86 & x64 install batch files are named "_install.bat" containing this.
echo Please run as admin
@regsvr32 "%~dp0wic_heic.dll"
pause

The x86 & x64 uninstall batch files are named "_uninstall.bat" with this.
echo Please run as admin
@regsvr32 /u "%~dp0wic_heic.dll'
pause

There is a wic_heic.dll file in the x86 & the same name in the x64 folder.
x86 folder
Name: wic_heic.dll
Size: 3945472 bytes (3853 KiB)
SHA256: 702BA6AEADBD8D36473E4D9A9C129DDB19490EF7965B0B722794726E44C55A38

x64 folder
Name: wic_heic.dll
Size: 17239552 bytes (16 MiB)
SHA256: 2D1B1B9FA0653C8EEEDB6C86282D7EBA7D5B0A3632276189AD7029EAE83BE24D

The first question is if I'm only using 32-bit Irfanview, do I need to run
both the 32-bit & 64-bit install batch files and the second question is
what happens in Windows & Irfanview when I run these batch file?

Is the HEIC magic only for Irfanview after that?
Or do all image editors get to eat this heic magic muchroom dll?

What's going on under the covers to make this heic magic mushroom work?
david
2024-11-26 06:06:37 UTC
Permalink
Can you please explain what is happening when I install HEIC?

Background.
1. I have been using Irfanview since forever.
2. Apple owner gives me HEIC image files to view & batch edit.
3. Irfanview 32 4.70 can't open them so I google & find this.
https://www.irfanview.com/faq.htm#PAGE6

That suggests a few methods, one of which is this.
https://github.com/prsyahmi/wic_heic/releases/

That has this zip file containing "x86" & "64-bit" zips.
https://github.com/prsyahmi/wic_heic/releases/download/v1.0.3/wic_heic-v1.0.3.zip

The x86 & x64 install batch files are named "_install.bat" containing this.
echo Please run as admin
@regsvr32 "%~dp0wic_heic.dll"
pause

The x86 & x64 uninstall batch files are named "_uninstall.bat" with this.
echo Please run as admin
@regsvr32 /u "%~dp0wic_heic.dll'
pause

There is a wic_heic.dll file in the x86 & the same name in the x64 folder.
x86 folder
Name: wic_heic.dll
Size: 3945472 bytes (3853 KiB)
SHA256: 702BA6AEADBD8D36473E4D9A9C129DDB19490EF7965B0B722794726E44C55A38

x64 folder
Name: wic_heic.dll
Size: 17239552 bytes (16 MiB)
SHA256: 2D1B1B9FA0653C8EEEDB6C86282D7EBA7D5B0A3632276189AD7029EAE83BE24D

The first question is if I'm only using 32-bit Irfanview, do I need to run
both the 32-bit & 64-bit install batch files and the second question is
what happens in Windows & Irfanview when I run these batch file?

Is the HEIC magic only for Irfanview after that?
Or do all image editors get to eat this heic magic muchroom dll?

What's going on under the covers to make this heic magic mushroom work?
Paul
2024-11-26 07:08:51 UTC
Permalink
Post by david
Can you please explain what is happening when I install HEIC?
Background.
1. I have been using Irfanview since forever.
2. Apple owner gives me HEIC image files to view & batch edit.
3. Irfanview 32 4.70 can't open them so I google & find this.
  https://www.irfanview.com/faq.htm#PAGE6
That suggests a few methods, one of which is this.
https://github.com/prsyahmi/wic_heic/releases/
That has this zip file containing "x86" & "64-bit" zips.
https://github.com/prsyahmi/wic_heic/releases/download/v1.0.3/wic_heic-v1.0.3.zip
The x86 & x64 install batch files are named "_install.bat" containing this.
echo Please run as admin
@regsvr32 "%~dp0wic_heic.dll"
pause
The x86 & x64 uninstall batch files are named "_uninstall.bat" with this.
echo Please run as admin
@regsvr32 /u "%~dp0wic_heic.dll'
pause
There is a wic_heic.dll file in the x86 & the same name in the x64 folder.
x86 folder
Name: wic_heic.dll
Size: 3945472 bytes (3853 KiB)
SHA256: 702BA6AEADBD8D36473E4D9A9C129DDB19490EF7965B0B722794726E44C55A38
x64 folder
Name: wic_heic.dll
Size: 17239552 bytes (16 MiB)
SHA256: 2D1B1B9FA0653C8EEEDB6C86282D7EBA7D5B0A3632276189AD7029EAE83BE24D
The first question is if I'm only using 32-bit Irfanview, do I need to run
both the 32-bit & 64-bit install batch files and the second question is
what happens in Windows & Irfanview when I run these batch file?
Is the HEIC magic only for Irfanview after that?
Or do all image editors get to eat this heic magic muchroom dll?
What's going on under the covers to make this heic magic mushroom work?
Why would you do that, when the latest GIMP has proper support.
For pictures, it shows you how many pictures are stored inside
an Apple file, and you can choose one to edit if you want,
then Export as JPG for example. Export the one you selected.

According to this, GIMP is at version 2.10 right now.

https://en.wikipedia.org/wiki/GIMP

That is on a lot of Linux distros, but there is also a Windows version.

Microsoft sells a codec for the file format (since there are royalties on it
to be paid), but using FOSS you can have it "at lower cost" :-)

The problem for Irfan to solve, is how to present a dialog to allow
the user to select 1 of N pictures stored inside a single file.

Just tossing a DLL into a folder is not sufficient as a solution,
since it might select only the picture at Index 1. That's why I would
not take a chance on some "random" DLL.

Paul
Frank Slootweg
2024-11-26 11:30:32 UTC
Permalink
[...]
Post by Paul
Post by david
Is the HEIC magic only for Irfanview after that?
Or do all image editors get to eat this heic magic muchroom dll?
What's going on under the covers to make this heic magic mushroom work?
Why would you do that, when the latest GIMP has proper support.
For pictures, it shows you how many pictures are stored inside
an Apple file, and you can choose one to edit if you want,
then Export as JPG for example. Export the one you selected.
According to this, GIMP is at version 2.10 right now.
Not to mention that 'david' crossposted this to alt.comp.os.windows-11
and Windows 11 has built-in support for HEIC (and support can be added
to (7,) 8.1 [1] and 10).

I have a rather old version of IrfanView - 4.60 of 2022 (32-bit) - on
my Windows 11 (23H2) system and that can open HEIC pictures just fine.

[1] At the time on Windows 8.1, I used 'CopyTrans HEIC for Windows'
(<https://www.copytrans.net/copytransheic/>) as advised in the IrfanView
FAQ.
david
2024-11-26 16:48:17 UTC
Permalink
Post by Frank Slootweg
Not to mention that 'david' crossposted this to alt.comp.os.windows-11
and Windows 11 has built-in support for HEIC (and support can be added
to (7,) 8.1 [1] and 10).
Thanks for that Windows-11-specific data, as I wasn't aware that Irfanview
on Windows 11 can handle HEIC (as I hadn't tested it on the Windows 11
laptop - only on the Windows 10 desktop) so thanks for pointing that out.

But the question isn't at all about HEIC - the question is what it going on
when someone on Windows runs a batch file that does what these files do.

echo Please run as admin
@regsvr32 "%~dp0wic_heic.dll"
pause

That does "something" to the dll, doesn't it?
And Irfanview then does "something" with that dll, doesn't it?

But what?

The fundamental Windows questions are what does that batch file accomplish?
And how then does Irfanview access whatever it is that the batch file did?

Newyana seems to have the best observations so far as to what it's doing.
Chris
2024-11-27 15:30:10 UTC
Permalink
Post by Paul
Post by david
Can you please explain what is happening when I install HEIC?
Is the HEIC magic only for Irfanview after that?
Or do all image editors get to eat this heic magic muchroom dll?
What's going on under the covers to make this heic magic mushroom work?
Why would you do that, when the latest GIMP has proper support.
For pictures, it shows you how many pictures are stored inside
an Apple file, and you can choose one to edit if you want,
then Export as JPG for example. Export the one you selected.
According to this, GIMP is at version 2.10 right now.
https://en.wikipedia.org/wiki/GIMP
That is on a lot of Linux distros, but there is also a Windows version.
Microsoft sells a codec for the file format (since there are royalties on it
to be paid),
That's only the video codec HVEC. The image format is open and royalty
free.
Frank Slootweg
2024-11-27 16:43:32 UTC
Permalink
Post by Chris
Post by Paul
Post by david
Can you please explain what is happening when I install HEIC?
Is the HEIC magic only for Irfanview after that?
Or do all image editors get to eat this heic magic muchroom dll?
What's going on under the covers to make this heic magic mushroom work?
Why would you do that, when the latest GIMP has proper support.
For pictures, it shows you how many pictures are stored inside
an Apple file, and you can choose one to edit if you want,
then Export as JPG for example. Export the one you selected.
According to this, GIMP is at version 2.10 right now.
https://en.wikipedia.org/wiki/GIMP
That is on a lot of Linux distros, but there is also a Windows version.
Microsoft sells a codec for the file format (since there are royalties on it
to be paid),
That's only the video codec HVEC. The image format is open and royalty
free.
Today, I happened to stumble on a reference from Synology (the
manufacturer of my NAS), which indicates that there also is a HEVC codec
from Microsoft that is free (of charge):

'HEVC Video Extensions from Device Manufacturer'
<https://apps.microsoft.com/detail/9n4wgh0z6vhq>

BTW, the same reference is in the IrfanView FAQ (at least in that of
the 4.60 version).
Brian Gregory
2024-12-19 16:55:23 UTC
Permalink
Post by Frank Slootweg
Today, I happened to stumble on a reference from Synology (the
manufacturer of my NAS), which indicates that there also is a HEVC codec
'HEVC Video Extensions from Device Manufacturer'
<https://apps.microsoft.com/detail/9n4wgh0z6vhq>
As I understand it that is only for systems where the device
manufacturer already included HEVC support.
--
Brian Gregory (in England).
Frank Slootweg
2024-12-20 13:23:57 UTC
Permalink
Post by Brian Gregory
Post by Frank Slootweg
Today, I happened to stumble on a reference from Synology (the
manufacturer of my NAS), which indicates that there also is a HEVC codec
'HEVC Video Extensions from Device Manufacturer'
<https://apps.microsoft.com/detail/9n4wgh0z6vhq>
As I understand it that is only for systems where the device
manufacturer already included HEVC support.
I don't think so. If that was the case, I don't think it would be
mentioned in the IrfanView FAQ, but it is, like I mentioned in the part
you snipped:

<unsnip>
BTW, the same reference is in the IrfanView FAQ (at least in that of
the 4.60 version).
</unsnip>

Here is the full information from the web-version of the IrfanView FAQ:

'Frequently Asked Questions about IrfanView'
'Section 3. Working with formats, file conversions, batch mode,
browsing'
<https://www.irfanview.com/faq.htm#PAGE6>

<quote>
Q: How to load HEIC files in IrfanView?
A: You must install the HEVC extension/codec.
1) If you have Windows 10/11, you can install it from Microsoft Store:
You need to install 2 (!!) extensions from Microsoft Store: HEVC
Video Extensions from Device Manufacturer AND HEIF Image Extensions.
or
2) Download and install the HEIC Codec, version 1.0.1 and later
(Freeware, for Win7/Win8/Win10/Win11).
HEIC Codec
or
3) Search on internet for the "CopyTrans HEIC" Windows codec and
install it (Free for personal use, for Win7/Win8/Win10/Win11).
CopyTrans HEIC Codec
</quote>

N.B. All mentioned components have links to where you can get them.
knuttle
2024-12-20 21:59:32 UTC
Permalink
Post by Frank Slootweg
Post by Brian Gregory
Post by Frank Slootweg
Today, I happened to stumble on a reference from Synology (the
manufacturer of my NAS), which indicates that there also is a HEVC codec
'HEVC Video Extensions from Device Manufacturer'
<https://apps.microsoft.com/detail/9n4wgh0z6vhq>
As I understand it that is only for systems where the device
manufacturer already included HEVC support.
I don't think so. If that was the case, I don't think it would be
mentioned in the IrfanView FAQ, but it is, like I mentioned in the part
<unsnip>
BTW, the same reference is in the IrfanView FAQ (at least in that of
the 4.60 version).
</unsnip>
'Frequently Asked Questions about IrfanView'
'Section 3. Working with formats, file conversions, batch mode,
browsing'
<https://www.irfanview.com/faq.htm#PAGE6>
<quote>
Q: How to load HEIC files in IrfanView?
A: You must install the HEVC extension/codec.
You need to install 2 (!!) extensions from Microsoft Store: HEVC
Video Extensions from Device Manufacturer AND HEIF Image Extensions.
or
2) Download and install the HEIC Codec, version 1.0.1 and later
(Freeware, for Win7/Win8/Win10/Win11).
HEIC Codec
or
3) Search on internet for the "CopyTrans HEIC" Windows codec and
install it (Free for personal use, for Win7/Win8/Win10/Win11).
CopyTrans HEIC Codec
</quote>
N.B. All mentioned components have links to where you can get them.
I found something that I needed and when downloading they came down as
HEIC images. I don't remember doing anything special and openned them
in Irfanview. I then saved the back as jpgs
Paul
2024-12-21 02:06:26 UTC
Permalink
Post by Brian Gregory
    Today, I happened to stumble on a reference from Synology (the
manufacturer of my NAS), which indicates that there also is a HEVC codec
'HEVC Video Extensions from Device Manufacturer'
<https://apps.microsoft.com/detail/9n4wgh0z6vhq>
As I understand it that is only for systems where the device
manufacturer already included HEVC support.
   I don't think so. If that was the case, I don't think it would be
mentioned in the IrfanView FAQ, but it is, like I mentioned in the part
<unsnip>
   BTW, the same reference is in the IrfanView FAQ (at least in that of
the 4.60 version).
</unsnip>
'Frequently Asked Questions about IrfanView'
'Section 3. Working with formats, file conversions, batch mode,
browsing'
<https://www.irfanview.com/faq.htm#PAGE6>
<quote>
Q: How to load  HEIC files in IrfanView?
A: You must install the HEVC extension/codec.
    You need to install 2 (!!) extensions from Microsoft Store: HEVC
    Video Extensions from Device Manufacturer  AND  HEIF Image Extensions.
    or
    2) Download and install the HEIC Codec, version 1.0.1 and later
    (Freeware, for Win7/Win8/Win10/Win11).
    HEIC Codec
    or
    3) Search on internet for the "CopyTrans HEIC" Windows codec and
    install it (Free for personal use, for Win7/Win8/Win10/Win11).
    CopyTrans HEIC Codec
</quote>
   N.B. All mentioned components have links to where you can get them.
I found something that I needed and when downloading they came down as HEIC images.  I don't remember doing anything special and openned them in Irfanview.   I then saved the back as jpgs
The HEIC is not an image format.

It is a video format. The file can have a single video frame
in it, or, it can have ten frames. Maybe we could think of
it as a film strip.

Not all image editors are architected to be video editors,
and offer an interface to pick one of the frames for editing.
As a result, many people only get to see the first frame, and
are unaware exactly how many frames are in a file. Pornographic
images could be in frame 2, frame 3 and so on. Nobody should
have invented an image format, in the year 2024, with this capability.

I have shown this before, in a picture of the GIMP when it
edits a HEIC. It shows all the frames, and you click the
one you wish to edit. In this example, the file opened is
"example.heic" and it has two frames. GIMP is depicted showing
thumbnails for the two frames. The user clicks one, then
starts editing the materials.

[Picture]

Loading Image...

Paul
David
2024-12-21 09:37:48 UTC
Permalink
Post by Paul
Post by Brian Gregory
    Today, I happened to stumble on a reference from Synology (the
manufacturer of my NAS), which indicates that there also is a HEVC codec
'HEVC Video Extensions from Device Manufacturer'
<https://apps.microsoft.com/detail/9n4wgh0z6vhq>
As I understand it that is only for systems where the device
manufacturer already included HEVC support.
   I don't think so. If that was the case, I don't think it would be
mentioned in the IrfanView FAQ, but it is, like I mentioned in the part
<unsnip>
   BTW, the same reference is in the IrfanView FAQ (at least in that of
the 4.60 version).
</unsnip>
'Frequently Asked Questions about IrfanView'
'Section 3. Working with formats, file conversions, batch mode,
browsing'
<https://www.irfanview.com/faq.htm#PAGE6>
<quote>
Q: How to load  HEIC files in IrfanView?
A: You must install the HEVC extension/codec.
    You need to install 2 (!!) extensions from Microsoft Store: HEVC
    Video Extensions from Device Manufacturer  AND  HEIF Image Extensions.
    or
    2) Download and install the HEIC Codec, version 1.0.1 and later
    (Freeware, for Win7/Win8/Win10/Win11).
    HEIC Codec
    or
    3) Search on internet for the "CopyTrans HEIC" Windows codec and
    install it (Free for personal use, for Win7/Win8/Win10/Win11).
    CopyTrans HEIC Codec
</quote>
   N.B. All mentioned components have links to where you can get them.
I found something that I needed and when downloading they came down as HEIC images.  I don't remember doing anything special and openned them in Irfanview.   I then saved the back as jpgs
The HEIC is not an image format.
It is a video format. The file can have a single video frame
in it, or, it can have ten frames. Maybe we could think of
it as a film strip.
Not all image editors are architected to be video editors,
and offer an interface to pick one of the frames for editing.
As a result, many people only get to see the first frame, and
are unaware exactly how many frames are in a file. Pornographic
images could be in frame 2, frame 3 and so on. Nobody should
have invented an image format, in the year 2024, with this capability.
I have shown this before, in a picture of the GIMP when it
edits a HEIC. It shows all the frames, and you click the
one you wish to edit. In this example, the file opened is
"example.heic" and it has two frames. GIMP is depicted showing
thumbnails for the two frames. The user clicks one, then
starts editing the materials.
[Picture]
https://i.postimg.cc/ZRWpTL1q/GIMP-opens-Apple-formats.gif
Paul
FWIW, Paul, all of my *photos* in Apple Photos are HEIC

HTH
--
David
David
2024-12-21 09:40:26 UTC
Permalink
Post by David
Post by Paul
Post by knuttle
Post by Brian Gregory
     Today, I happened to stumble on a reference from Synology (the
manufacturer of my NAS), which indicates that there also is a HEVC codec
'HEVC Video Extensions from Device Manufacturer'
<https://apps.microsoft.com/detail/9n4wgh0z6vhq>
As I understand it that is only for systems where the device
manufacturer already included HEVC support.
    I don't think so. If that was the case, I don't think it would be
mentioned in the IrfanView FAQ, but it is, like I mentioned in the part
<unsnip>
    BTW, the same reference is in the IrfanView FAQ (at least in
that of
the 4.60 version).
</unsnip>
    Here is the full information from the web-version of the
'Frequently Asked Questions about IrfanView'
'Section 3. Working with formats, file conversions, batch mode,
browsing'
<https://www.irfanview.com/faq.htm#PAGE6>
<quote>
Q: How to load  HEIC files in IrfanView?
A: You must install the HEVC extension/codec.
     1) If you have Windows 10/11, you can install it from Microsoft
     You need to install 2 (!!) extensions from Microsoft Store: HEVC
     Video Extensions from Device Manufacturer  AND  HEIF Image
Extensions.
     or
     2) Download and install the HEIC Codec, version 1.0.1 and later
     (Freeware, for Win7/Win8/Win10/Win11).
     HEIC Codec
     or
     3) Search on internet for the "CopyTrans HEIC" Windows codec and
     install it (Free for personal use, for Win7/Win8/Win10/Win11).
     CopyTrans HEIC Codec
</quote>
    N.B. All mentioned components have links to where you can get them.
I found something that I needed and when downloading they came down
as HEIC images.  I don't remember doing anything special and openned
them in Irfanview.   I then saved the back as jpgs
The HEIC is not an image format.
It is a video format. The file can have a single video frame
in it, or, it can have ten frames. Maybe we could think of
it as a film strip.
Not all image editors are architected to be video editors,
and offer an interface to pick one of the frames for editing.
As a result, many people only get to see the first frame, and
are unaware exactly how many frames are in a file. Pornographic
images could be in frame 2, frame 3 and so on. Nobody should
have invented an image format, in the year 2024, with this capability.
I have shown this before, in a picture of the GIMP when it
edits a HEIC. It shows all the frames, and you click the
one you wish to edit. In this example, the file opened is
"example.heic" and it has two frames. GIMP is depicted showing
thumbnails for the two frames. The user clicks one, then
starts editing the materials.
    [Picture]
    https://i.postimg.cc/ZRWpTL1q/GIMP-opens-Apple-formats.gif
   Paul
FWIW, Paul, all of my *photos* in Apple Photos are HEIC
HTH
How To Convert HEIC To JPG or PNG on Mac in Seconds


Frank Slootweg
2024-12-21 12:12:54 UTC
Permalink
Paul <***@needed.invalid> wrote:
[...]
Post by Paul
The HEIC is not an image format.
It is a video format. The file can have a single video frame
in it, or, it can have ten frames. Maybe we could think of
it as a film strip.
Indeed HEIC (uppercase) is not an image *format*, it's an image
*codec* (High-Efficiency Image Codec, note *Image*). But it's not a
video format, it uses a video *encoding* format.

It's "HEIC: HEVC in HEIF", High Efficiency Video Coding in High
Efficiency Image File Format (note *Image*).

HEIC is a codec, HEVC is an encoding format and HEIF is a container
format.

So while the encoding format is (also) for video, a .heic file
contains an image or a series of images. MIME subtypes image/heic and
image/heic-sequence.

So HEIC is not "a video format". The 'I' stands for 'Image', not the
V' of 'Video'.

'HEIC: HEVC in HEIF'
<https://en.wikipedia.org/wiki/High_Efficiency_Image_File_Format#HEIC:_HEVC_in_HEIF>

[...]
Frank Slootweg
2024-12-21 11:15:07 UTC
Permalink
knuttle <***@yahoo.com> wrote:
[...]
Post by knuttle
I found something that I needed and when downloading they came down as
HEIC images. I don't remember doing anything special and openned them
in Irfanview. I then saved the back as jpgs
That was probably on Windows *11* (note the crosspost to
alt.comp.os.windows-10).

As has been mentioned before, Windows 11 has built-in HEIC support.
Paul
2024-12-21 12:14:18 UTC
Permalink
Post by Frank Slootweg
[...]
Post by knuttle
I found something that I needed and when downloading they came down as
HEIC images. I don't remember doing anything special and openned them
in Irfanview. I then saved the back as jpgs
That was probably on Windows *11* (note the crosspost to
alt.comp.os.windows-10).
As has been mentioned before, Windows 11 has built-in HEIC support.
My Win11 *Home* menu, offers to "Edit in Notepad", which is surely
an interesting option for an image format.

Inside, I see my example.heic is full of metadata goodness.

"x265 (build 79) - 1.9:[Linux][GCC 5.3.1][64 bit] 8bit+10bit+12bit - H.265/HEVC codec
- Copyright 2013-2015 (c) Multicoreware Inc - http://x265.org - options: 1280x856
==> fps=25/1
bitdepth=8 wpp ctu=64 min-cu-size=8 max-tu-size=32 tu-intra-depth=2 tu-inter-depth=2
me=3 subme=3 merange=57 rect amp max-merge=3 temporal-mvp no-early-skip rdpenalty=0
no-tskip no-tskip-fast strong-intra-smoothing no-lossless no-cu-lossless
no-constrained-intra no-fast-intra open-gop no-temporal-layers interlace=0 keyint=250
min-keyint=25 scenecut=40 rc-lookahead=30 lookahead-slices=4 bframes=8 bframe-bias=0
b-adapt=2 ref=4 limit-refs=2 limit-modes weightp weightb aq-mode=1 qg-size=32
aq-strength=1.00 cbqpoffs=0 crqpoffs=0 rd=6 psy-rd=2.00 rdoq-level=2 psy-rdoq=1.00
signhide deblock sao no-sao-non-deblock b-pyramid cutree no-intra-refresh rc=crf
crf=12.0 qcomp=0.60 qpmin=0 qpmax=51 qpstep=4 ipratio=1.40 pbratio=1.30
"

It didn't open in my Irfanview, but the information pane says "HEVC"
for the type. The program figured that much out.

Clipchamp thinks the sample is a video which is four seconds long
and consists of repeating the first image. The second image is not presented.
But Clipchamp does present the image at least, so it has some amount of decoding.

Paint did not work. Not a surprise.

Photos App presets a completely black rectangle. a very good quality black.
I must compliment Microsoft on their ability to get such a good looking black.
The program has no controls showing. The "X" works to exit the program. OK.

*******

On the Win11 *Pro* setup across from me:

Paint - opens the first frame only, not showing the second
Photos App - opens the first frame only, not showing the second (hey, no black rectangle)
Clipchamp - shows me an advert for signing in with an MSA
- it won't open the content or run the program, without seeing some ID

I would guess some fancy codec is present on the Windows 11 Pro setup,
but not the licensed, activated, and MSA-ed Windows 11 Home machine.
But at least Clipchamp on the Home setup (because it snarfed my MSA
for itself), it decodes the first frame and pretends it is a
four second long video.

Conclusion: Alien technology from Roswell.
Probably taken off a dead alien by the X-Files stars.

I must toddle off to Youtube now, and make a video about
"how I can convert an HEIC into a JPEG in seconds". With
the FOSS GIMP of course, which would have worked on either
machine.

Using the Windows 11 Home setup, I can use bash shell, which
has GIMP 2.10 in it, and it opens immediately to show the
two frames in the example file. I can edit either picture in the
example. The FOSS bypass works a treat.

Paul
Frank Slootweg
2024-12-21 15:33:24 UTC
Permalink
Post by Paul
Post by Frank Slootweg
[...]
Post by knuttle
I found something that I needed and when downloading they came down as
HEIC images. I don't remember doing anything special and openned them
in Irfanview. I then saved the back as jpgs
That was probably on Windows *11* (note the crosspost to
alt.comp.os.windows-10).
As has been mentioned before, Windows 11 has built-in HEIC support.
My Win11 *Home* menu, offers to "Edit in Notepad", which is surely
an interesting option for an image format.
Inside, I see my example.heic is full of metadata goodness.
I don't know where you got that example.heic file from, but it
probably isn't a simple image/picture/photo/<whatever> file.
Post by Paul
It didn't open in my Irfanview, but the information pane says "HEVC"
for the type. The program figured that much out.
IrfanView (4.60) opens and displays the .heic photo just fine.
Post by Paul
Clipchamp thinks the sample is a video which is four seconds long and
consists of repeating the first image. The second image is not
presented. But Clipchamp does present the image at least, so it has
some amount of decoding.
Clipchamp requires a Microsoft Account or other sign-in. No can do.
Post by Paul
Paint did not work. Not a surprise.
Paint opens and displays the .heic photo just fine.
Post by Paul
Photos App presets a completely black rectangle. a very good quality black.
I must compliment Microsoft on their ability to get such a good looking black.
The program has no controls showing. The "X" works to exit the program. OK.
The Photos app opens and displays the .heic photo just fine. It's the
default for this type of file.
Post by Paul
*******
Paint - opens the first frame only, not showing the second
Photos App - opens the first frame only, not showing the second (hey, no black rectangle)
Clipchamp - shows me an advert for signing in with an MSA
- it won't open the content or run the program, without seeing some ID
I would guess some fancy codec is present on the Windows 11 Pro setup,
but not the licensed, activated, and MSA-ed Windows 11 Home machine.
But at least Clipchamp on the Home setup (because it snarfed my MSA
for itself), it decodes the first frame and pretends it is a
four second long video.
Conclusion: Alien technology from Roswell.
Probably taken off a dead alien by the X-Files stars.
Conclusion: It seems your (Home versus) setups are mixed up. My
Windows 11 Home works just fine.
Your concusion seems to be quite off the mark.
Post by Paul
I must toddle off to Youtube now, and make a video about
"how I can convert an HEIC into a JPEG in seconds". With
the FOSS GIMP of course, which would have worked on either
machine.
Did you try IrfanView on your Windows 11 Pro machine? As Paint and
Photos seem to work on that machine (for a single image), IrfanView will
probably as well and can do the conversion to JPEG.

[...]
Paul
2024-12-21 16:22:38 UTC
Permalink
Post by Frank Slootweg
Did you try IrfanView on your Windows 11 Pro machine? As Paint and
Photos seem to work on that machine (for a single image), IrfanView will
probably as well and can do the conversion to JPEG.
[...]
It's possible my sample is from here.

https://github.com/strukturag/libheif/tree/master/examples

example.heic

With any luck, when you open it with your tool flow,
you will see the two images inside the single file.
A tool is not good enough, unless it can open every
contorted output of an Apple device -- properly.

[Picture]

Loading Image...

The scroll bar on the right of the GIMP interface (an interface
produced custom just for .heic), allows a multitude of Apple
frames to be displayed, and the operator can pick the one
they want to edit.

*******

Using your Apple-generated HEIC and your copy of Windows Notepad,
please open your sample.heic in Notepad and copy out the metadata section
with the details of the CODEC used for its packing.

You've seen my example with the "FPS 25/1" which is the
standard method of presenting two integer numbers, which
when divided, allows fractional frame rates. It's the
method they use, to encode 29.97FPS in a video file, they
use two integer numbers that when divided, equal 29.97. The
one in the example then, is 25/1 = 25.000 FPS . The FPS is
irrelevant, but it's part of the provided metadata.

I believe the github project I selected, might have been
an effort to write a driver for the file format. And maybe some
other formats.

I don't have an iPhone, and I can't improve on the situation
by generating a photo locally.

Paul
Frank Slootweg
2024-12-21 18:44:51 UTC
Permalink
Post by Paul
Post by Frank Slootweg
Did you try IrfanView on your Windows 11 Pro machine? As Paint and
Photos seem to work on that machine (for a single image), IrfanView will
probably as well and can do the conversion to JPEG.
[...]
It's possible my sample is from here.
https://github.com/strukturag/libheif/tree/master/examples
example.heic
With any luck, when you open it with your tool flow,
you will see the two images inside the single file.
A tool is not good enough, unless it can open every
contorted output of an Apple device -- properly.
[Picture]
https://i.postimg.cc/RFGmQnP9/gimp-deb-ubuntu2404-HEIC.gif
I downloaded it and can indeed view the first image in Irfanview,
Photos and Paint. I can not see the second image, or at least I don't
know how I could do that with these tools, i.e. which commands to use.
Post by Paul
The scroll bar on the right of the GIMP interface (an interface
produced custom just for .heic), allows a multitude of Apple
frames to be displayed, and the operator can pick the one
they want to edit.
*******
Using your Apple-generated HEIC and your copy of Windows Notepad,
please open your sample.heic in Notepad and copy out the metadata section
with the details of the CODEC used for its packing.
For my iPhone .heic file, the metadata is completely different than
for the example.heic file. It's difficult to copy, but for my file it
mainly contains meta, hdlr, pict, dinf, dref,url, pitm, =iinf, many,
many repetitions of infe and hvc1 and finally Exif, iref and ldimg.

The 'hvc1' is probably the most relevant, because, as I mentioned, a
HEIC image uses HEVC (High Efficiency Video Coding) as its encoding
format.
Post by Paul
You've seen my example with the "FPS 25/1" which is the
standard method of presenting two integer numbers, which
when divided, allows fractional frame rates. It's the
method they use, to encode 29.97FPS in a video file, they
use two integer numbers that when divided, equal 29.97. The
one in the example then, is 25/1 = 25.000 FPS . The FPS is
irrelevant, but it's part of the provided metadata.
I think the example.heic file *is* a *video*. Many of the metadata
attributes you posted point to *video*, not image. For example not only
fps=25/1, but also skip, interlace, scenecut, lookahead, bframes, etc..
However the biggest giveaways are 'x265' and 'H.265/HEVC codec'.

"In most ways, HEVC is an extension of the concepts in H.264/MPEG-4 AVC."
(<https://en.wikipedia.org/wiki/High_Efficiency_Video_Coding#Concept>)
H.264/MPEG-4 and AVC are used in *videos*, not images.

As you said, Clipchamp thinks it's 4 seconds long. On my system,
Windows Media Player Legacy indeed plays the first picture for 4
seconds. I have no other video player. The Media Player app doesn't grok
the file, probably because the incorrect extension. And I can't use
the Clipchamp app (no MSA). I renamed the file to .mp4 and .m4v, because
that should be the extension, but that did not help either. (See
<https://en.wikipedia.org/wiki/High_Efficiency_Video_Coding#Operating_system_support>)

All in all, I think example.heic is a video, not an image, and hence
should not have a .heic extension. Why the originator of that file used
'High-Efficiency *Image* Codec' as the extension of a *video* file, is
beyond me.
Post by Paul
I believe the github project I selected, might have been
an effort to write a driver for the file format. And maybe some
other formats.
I don't have an iPhone, and I can't improve on the situation
by generating a photo locally.
Paul
2024-12-21 20:30:08 UTC
Permalink
Post by Frank Slootweg
Post by Paul
Using your Apple-generated HEIC and your copy of Windows Notepad,
please open your sample.heic in Notepad and copy out the metadata section
with the details of the CODEC used for its packing.
For my iPhone .heic file, the metadata is completely different than
for the example.heic file. It's difficult to copy, but for my file it
mainly contains meta, hdlr, pict, dinf, dref,url, pitm, =iinf, many,
many repetitions of infe and hvc1 and finally Exif, iref and ldimg.
The 'hvc1' is probably the most relevant, because, as I mentioned, a
HEIC image uses HEVC (High Efficiency Video Coding) as its encoding
format.
I tried a Google on the first identifier I saw in Notepad.
You can see this is an Apple inspired sewer, complete with
a dev comment that "Some parts of the spec seem to be much
more complicated than necessary to me". Well, yes, it's an
attempt to "shadow" what has come before. They couldn't
just make one simple format, now could they. It has to be
a book the size of War and Peace.

ftypmif1

https://github.com/strukturag/libheif/issues/83

Generally speaking, four character ASCII sequences without
null termination are "4CC" codes. These are common in the
definition of a number of multimedia formats, and go back
quite a ways historically. The format consists of packets.
Traditionally...

4CC Length DataDataData 4CC Length DataDataData
<------- Packet --------> <------- Packet -------->

Formats can support variants, and a 4CC that is not recognized
by a parser is ignored. This allows, for example, the injection
of "EXIF" packets, and nobody notices and nothing crashes.
Since the packet has a Length field, the parser can
simply step-along to the next 4CC value and try again.

In mine, the "mdat" could be an indication of a MetaData Comment
kind of packet. That's why your Notepad check of a legitimate
Apple file, may have skipped putting as many "mdat" packets
into the file.

My file, after about 0x770 hex or so, looks more like a binary file
and less of a packet thing. It seems to be only partially packet based.
And that does not make a lot of sense.

https://en.wikipedia.org/wiki/High_Efficiency_Image_File_Format

It's a "frand" format ("fair and reasonable"),

"the holders of these patent rights have assured the ISO and IEC
that they are willing to negotiate licenses under reasonable
and non-discriminatory terms."

so the "who is making a payment to MPEGLA" side of this format,
seems of no concern to thinking people. However, patented formats
normally have ripple effects on how "competitor" ecosystems
can safely support them, without being sued and billed for
the "reasonable" patent fee. The stink over GIF, lasted a long
time, and its patent structure is tiny by comparison to the
submerged iceberg that is MPEGLA.

*******

If I were to try to make sense of this, I would need sufficient
sample files, to cause /etc/magic to disgorge every file type
detection it has stored inside it. That might be one way of seeing
what an Apple is, and whether even /etc/magic has sufficient
logic for the "complex" spec.

For text files, /etc/magic has *at least 100* text file types
it can declare. If you run all the files in the Firefox source
tarball through it, use the file command on all four hundred
thousand source files, about 100 text file formats emerge. That's
an example of an "interesting exercise" in just how complicated
life is. Once I got this information, I stopped trying to convert
the line endings to something more sane ;-/

That's the value of these exercises, realizing you've met your match,
and throwing in the towel.

Paul
Paul
2024-12-21 21:27:58 UTC
Permalink
Post by Frank Slootweg
All in all, I think example.heic is a video, not an image, and hence
should not have a .heic extension. Why the originator of that file used
'High-Efficiency *Image* Codec' as the extension of a *video* file, is
beyond me.
I got some more samples. This is the output of the Linux "file" command.

file *.heic

chef-with-trumpet.heic: ISO Media, HEIF Image HEVC Main or Main Still Picture Profile
classic-car.heic: ISO Media, HEIF Image HEVC Main or Main Still Picture Profile
example.heic: ISO Media, HEIF Image
greyhounds-looking-for-a-table.heic: ISO Media, HEIF Image HEVC Main or Main Still Picture Profile
soundboard.heic: ISO Media, HEIF Image HEVC Main or Main Still Picture Profile

The stills are from an Android, an iPhone, from the iPad, and at
the type resolution that Linux provides (sufficient to vector
to a picture application), they all have the "same" format.
They did not have the same color profile, and each one resulted
in a notification on the screen regarding what the
recipient wanted to do with the color profile (keep or convert).

The example.heic is definitely different, but the Linux typing is non-committal.

Paul

Carlos E.R.
2024-11-26 11:36:09 UTC
Permalink
Post by david
Can you please explain what is happening when I install HEIC?
You posted the question twice.

...
Post by david
The first question is if I'm only using 32-bit Irfanview, do I need to run
both the 32-bit & 64-bit install batch files and the second question is
what happens in Windows & Irfanview when I run these batch file?
Is the HEIC magic only for Irfanview after that?
Or do all image editors get to eat this heic magic muchroom dll?
A dll can only be used by a program that is designed to use it.
Post by david
What's going on under the covers to make this heic magic mushroom work?
--
Cheers, Carlos.
Newyana2
2024-11-26 13:15:07 UTC
Permalink
Post by Carlos E.R.
Post by david
Is the HEIC magic only for Irfanview after that?
Or do all image editors get to eat this heic magic muchroom dll?
A dll can only be used by a program that is designed to use it.
Yes, but in most cases anyone who knows about the DLL
can use it. So it's not just for IrfanView. In this case it's
presumably just wrapping Apple's code in a Windows-accessible
form.

It's presented as a COM DLL, with a COM interface, but I tried
registering the DLL and there seems to be no typelib, while there
are dozens of named functions available, so I'm not sure that
registering is actually necessary. One such function is
heif_decode_image. The trick, of course, is that the calling
process needs to know how to call that function. With OSS that's
often the sticking point. The authors, more often
than not, can't be bothered to fully document their work.
EndlessSept
2024-11-27 00:50:17 UTC
Permalink
Post by Carlos E.R.
Post by david
Can you please explain what is happening when I install HEIC?
You posted the question twice.
He's an attention troll - suggest reduced diet of replies.
Newyana2
2024-11-26 13:04:26 UTC
Permalink
Post by david
The x86 & x64 install batch files are named "_install.bat" containing this.
echo Please run as admin
@regsvr32 "%~dp0wic_heic.dll"
pause
The x86 & x64 uninstall batch files are named "_uninstall.bat" with this.
echo Please run as admin
@regsvr32 /u "%~dp0wic_heic.dll'
pause
That's a COM DLL. You only need the one for the bitness. But
a big reason for COM was discoverability. Any software that wants
to use the DLL can discover it through the Registry. So yes, it's
only for Irfan View. But if you happen to get another program that
uses the same library then that program can use the one that's
in the system folder. If you want to register the 64-bit DLL as well
that's not a problem.

The BAT file is simply registering and unregistering the DLL by
recording its class names, typelib, etc in the Registry. Software
that wants to use it can then find it. But such software would
have to be written to use it.
R.Wieser
2024-11-26 13:44:00 UTC
Permalink
Newyana2,
So yes, it's only for Irfan View.
Damn... There I was, hoping it added an image format handler to the ones
exposed by GDI+.

(never been able to find info on how its supposed to be done - assuming its
even possible)

Regards,
Rudy Wieser
Newyana2
2024-11-26 15:15:15 UTC
Permalink
Post by R.Wieser
Newyana2,
So yes, it's only for Irfan View.
Damn... There I was, hoping it added an image format handler to the ones
exposed by GDI+.
(never been able to find info on how its supposed to be done - assuming its
even possible)
GDI+ can handle JPG. Windows Image Acquisition (WIA) API can
do quite a bit. I think it also handles PNG. I'm not sure offhand.
WIA can be used late-bound in script. GDI+ is monstrously designed.
You'll want source code to tackle that. WOIA can be figured out with
the help file. Although MS have made that difficult. You can't just
go and download wia.chm anymore. You can't even download the
help2 format. You have to download the whole developer package
and then pick it apart to get the help.

I looked into HEIF awhile back for my own webpage editor. I decided
to skip it. I found a small Google converter for webp. But HEIF is Apple,
it's not really used except by iPhone dimwits who don't know any
better. So now if I get one I just write back and ask them to please
send in JPG format... "And give my best to Timmy Cook next time
he stops by to vacuum out your wallet." :)
R.Wieser
2024-11-26 15:54:20 UTC
Permalink
Newyana2,
Post by Newyana2
GDI+ can handle JPG.
JPG, PNG, GIF, BMP are the ones that I've worked with.
Post by Newyana2
GDI+ is monstrously designed.
:-) Tell me about it. I hade a case where I wanted to load a BMP image,
adding properties to it and than save it as JPG. I couldn't get it to work
(JPG supports properties, BMP however doesn't). I first had to convert the
BMP to JPG, save it, re-load the saved JPG and only than add the properties.
:-|

Oh, and it also adds the already existing "old style" JPG comments to the
(EXIF) properties *using the same property-ID*. Ofcourse without any way to
access the anything beyond the first occurence of such a duplicated
property-ID.
Post by Newyana2
I found a small Google converter for webp
I found a DLL for that, and wanted to wrap it into whatever is needed to add
it to GDI+ - hoping that Windows "thumbnail" view in exporer would be able
to show those images too (currently I'm using a seperate viewer for that).

Alas, I could not find any information about how to do that.

Regards,
Rudy Wieser
Newyana2
2024-11-26 17:48:46 UTC
Permalink
Post by R.Wieser
Post by Newyana2
I found a small Google converter for webp
I found a DLL for that, and wanted to wrap it into whatever is needed to add
it to GDI+ - hoping that Windows "thumbnail" view in exporer would be able
to show those images too (currently I'm using a seperate viewer for that).
Alas, I could not find any information about how to do that.
I'm not aware of any way to add functionality to GDI+. It's
coming from a system DLL. You can't just go adding extensions or
functions. You can write an Explorer Bar that uses your own code,
but you can't just rewrite Windows.
R.Wieser
2024-11-26 18:55:39 UTC
Permalink
Newyana2,
Post by Newyana2
I'm not aware of any way to add functionality to GDI+. It's
coming from a system DLL. You can't just go adding extensions or
functions.
The thing is that in GDI+ the image formats are referenced by their GUIDs,
which you can iterate.

Which made me think that perhaps other image formats could be adde, just
like you can extend VBScript and JS by adding a GUID and DLL into the CLSID
tree of the registry.

So yes, I *can* "just go adding extensions". :-) At least, that is how it
works for scripting engines. Perhaps GDI+ has a similar mechanism, and both
of us are unaware of how to use it.

Wishfull thinking ? Perhaps. But AFAICS well within the realm of
possibilities.

Regards,
Rudy Wieser
R.Wieser
2024-11-26 19:28:40 UTC
Permalink
Newyana2,
Post by Newyana2
You can't just go adding extensions
https://stackoverflow.com/questions/455018/extending-the-list-of-supported-image-formats-in-gdi

That thread, from long ago, seems to have found that it /should/ be possible
to extend the image-codecs GDI+ uses, but had the same kind of trouble
finding documentation about how to do it.

Isn't it fantastic how people sometimes think they know absolutily certain
how something can't be done ? :-)

Its also why I stopped believing people on their word (no offence intended
or implied).

Regards,
Rudy Wieser
david
2024-11-26 22:43:39 UTC
Permalink
Post by R.Wieser
it /should/ be possible
to extend the image-codecs GDI+ uses, but had the same kind of trouble
finding documentation about how to do it.
You two talk about "GDI+" as if the rest of us know what it is! :)

I had no clue - so I googled - and this is what came up first:
https://learn.microsoft.com/en-us/windows/win32/gdiplus/-gdiplus-gdi-start

Windows GDI+ is a class-based API for C/C++ programmers. It enables
applications to use graphics and formatted text on both the video display
and the printer. Applications based on the Microsoft Win32 API do not
access graphics hardware directly. Instead, GDI+ interacts with device
drivers on behalf of applications. GDI+ is also supported by Microsoft
Win64.

And this.
https://learn.microsoft.com/en-us/windows/win32/gdiplus/-gdiplus-about-gdi--about
Windows GDI+ is the portion of the Windows XP operating system or Windows
Server 2003 operating system that provides two-dimensional vector graphics,
imaging, and typography. GDI+ improves on Windows Graphics Device Interface
(GDI) (the graphics device interface included with earlier versions of
Windows) by adding new features and by optimizing existing features.

So is this GDI+ stuff what Windows uses to draw on the screen?
Carlos E.R.
2024-11-27 01:41:36 UTC
Permalink
Post by david
So is this GDI+ stuff what Windows uses to draw on the screen?
Yes.
--
Cheers, Carlos.
Paul
2024-11-27 03:21:42 UTC
Permalink
Post by david
So is this GDI+ stuff what Windows uses to draw on the screen?
Yes.
https://learn.microsoft.com/en-us/windows/win32/gdiplus/-gdiplus-about-gdi--about

"Lines, Curves, and Shapes

Images, Bitmaps, and Metafiles
"

Seems to be mostly 2D constructs, done with the CPU.

The methodology would have been invented a long long time ago.

While you can find threads like this, this isn't the best way to
get the architecture picture. Direct2D is presumably hardware
accelerated operation on the video card. It would include
Bresenhams Algorithm for line draw, and BitBLT (XOR two pixmaps).

https://stackoverflow.com/questions/13281964/gdi-versus-direct2d

I would think you could draw a long line at a weird angle faster
on the CPU, than on the video card. It's textures where the video
card can be a champ. Direct2D, they've stopped trying to make
the video card go faster when doing stuff like that. The GPU we
designed at work, yonks ago, the one that could knock out
an eyeball, that thing does 2D just as fast as a modern video card.
Which tells you the modern stuff hasn't seen any improvements to
speak of. 3D has seen a lot of improvements over the years.

And when an article makes certain claims about Chrome or Firefox,
it's really hard to tell exactly what browsers are using. They both
have access to Google ANGLE, which is a way of getting OpenGL
out of Direct3D on Windows only, rather than calling OpenGL itself
(which is also available everywhere). Google has added WebGL to ANGLE,
which you might not get from OpenGL access itself.

There are now, too many graphics standards for comfort, and
it makes tracing what is going on with your screen, pretty
difficult today. Hard to blame a specific thing.

Paul
Newyana2
2024-11-27 04:04:09 UTC
Permalink
Post by david
So is this GDI+ stuff what Windows uses to draw on the screen?
Gdi.dll is the basic graphics library, going back to Win95. It deals
with working on bitmap images especially. Gdiplus.dll was added
much later, adding additional functionality.

This is what's called the API -- application programming interface.
The basic role of an OS is to be a platform for software. It deals with
the low level functioning of the hardware, making various operations
available to programmers. There's a library for Registry read/write, file
I/O functions, networking, and so on. Graphics is one of those
categories.

Over the years, Microsoft add various new libraries for new
functionality.

At some level, all software is using those libraries that make up
Windows, and they may also use 3rd-party libraries. If someone writes
code to use gdiplus.dll functions then they can depend on those
functions working on all Windows computers back to at least Vista.
Other functions, such as getting the path to the Temp folder, or the
GDI functions, work all the way back to Win95. Other 3rd-party libraries,
like the heic DLL, have to be installed and then one needs to know
how to use them.

Things like .Net, Java, windows scripting, and so on are simply
wrappers around the Windows API, making it easier to access. But
the highest efficiency is attained by calling into the API libraries
directly.

You could think of it like a diner. The customer asks for a steak. The
waiter knows how to take the order and bring it to the cook's window.
The cook knows how to cook a steak. Somewhere there's a rancher
who raised the cattle. The cook is like the Win32 API, making food
resources useful. You call into the kitchen and say, "I need a steak,
medium rare" and the cook passes it out to the order window. You
call into the Windows API and say, "I need a 24-bit bitmap 600x600
pixels to draw on." The API handles that.

At the most basic level this is about manipulating binary data with
math. We store, retrieve, read data at memory addresses in RAM.
We call functions to have the CPU perform operations on numeric
values represented by bits. At the most basic level, that's all computing.
The OS provides a higher level abstraction in order to make those
operations more useful.
Paul
2024-11-27 05:42:47 UTC
Permalink
Post by david
So is this GDI+ stuff what Windows uses to draw on the screen?
  Gdi.dll is the basic graphics library, going back to Win95. It deals
with working on bitmap images especially. Gdiplus.dll was added
much later, adding additional functionality.
   This is what's called the API -- application programming interface.
The basic role of an OS is to be a platform for software. It deals with
the low level functioning of the hardware, making various operations
available to programmers. There's a library for Registry read/write, file
I/O functions, networking, and so on. Graphics is one of those
categories.
    Over the years, Microsoft add various new libraries for new
functionality.
  At some level, all software is using those libraries that make up
Windows, and they may also use 3rd-party libraries. If someone writes
code to use gdiplus.dll functions then they can depend on those
functions working on all Windows computers back to at least Vista.
Other functions, such as getting the path to the Temp folder, or the
GDI functions, work all the way back to Win95. Other 3rd-party libraries,
like the heic DLL, have to be installed and then one needs to know
how to use them.
  Things like .Net, Java, windows scripting, and so on are simply
wrappers around the Windows API, making it easier to access. But
the highest efficiency is attained by calling into the API libraries
directly.
  You could think of it like a diner. The customer asks for a steak. The
waiter knows how to take the order and bring it to the cook's window.
The cook knows how to cook a steak. Somewhere there's a rancher
who raised the cattle. The cook is like the Win32 API, making food
resources useful. You call into the kitchen and say, "I need a steak,
medium rare" and the cook passes it out to the order window. You
call into the Windows API and say, "I need a 24-bit bitmap 600x600
pixels to draw on." The API handles that.
  At the most basic level this is about manipulating binary data with
math. We store, retrieve, read data at memory addresses in RAM.
We call functions to have the CPU perform operations on numeric
values represented by bits. At the most basic level, that's all computing.
The OS provides a higher level abstraction in order to make those
operations more useful.
As an attack surface, the things that kept getting patched
on windows included: kernel, gdiplus, atmfm (something to do with kernel
level font generation?). Practically every Patch Tuesday corrected
some exploit related to those.

This information comes from the wsusoffline effort. The people on that
team, they would examine the various KB that Microsoft offered for
an OS. They would identify the packages that had those three
items being patched in them. If one of those packages was installed
early in an attempt to patch up the OS, it meant Windows Update
could truncate some supersedence trees faster. And then the
OS would appear responsive while patching. Versus how it
responded if you just used Microsoft tools for the job.
(On Vista SP2, updates would never finish there, unless you
used WsusOffline instead.)

While gdiplus may appear to be a lowly library, the Black Hats
love fuzzing it and breaking into it.

A windows user doesn't need to know this stuff, except when they do.
Any time that Windows Update gets "slow", that's when the acid flashbacks
come back. The Windows Update problem was never fixed, so it can come
back whenever it feels like it. It has been doing this, since WinXP.

Paul
Newyana2
2024-11-27 12:29:49 UTC
Permalink
Post by Paul
As an attack surface, the things that kept getting patched
on windows included: kernel, gdiplus, atmfm (something to do with kernel
level font generation?). Practically every Patch Tuesday corrected
some exploit related to those.
This information comes from the wsusoffline effort. The people on that
team, they would examine the various KB that Microsoft offered for
an OS. They would identify the packages that had those three
items being patched in them. If one of those packages was installed
early in an attempt to patch up the OS, it meant Windows Update
could truncate some supersedence trees faster. And then the
OS would appear responsive while patching. Versus how it
responded if you just used Microsoft tools for the job.
(On Vista SP2, updates would never finish there, unless you
used WsusOffline instead.)
While gdiplus may appear to be a lowly library, the Black Hats
love fuzzing it and breaking into it.
A windows user doesn't need to know this stuff, except when they do.
Any time that Windows Update gets "slow", that's when the acid flashbacks
come back. The Windows Update problem was never fixed, so it can come
back whenever it feels like it. It has been doing this, since WinXP.
I remember the problem of Windows being attacked by JPG files.
Just when you think it's safe to go in the water. :)

Though I think the major issue has always been script in browsers,
along with Flash when that was around, and remote execution software
and services. Somehow people haven't learned that. But I guess no
one wants to give up Remote Desktop, file sharing, online banking,
and now online services.
Paul
2024-11-27 13:00:28 UTC
Permalink
But I guess no one wants to give up Remote Desktop, file sharing, online banking,
and now online services.
Would you like to know what the three digit password is on my bank account ?
So would I :-)

My jaw dropped, when I'm at the bank and the teller starts
doing a pitch for online banking. She says "lets set it up".
She asks me "think of a three digit number that is easy
to remember". And me, not really understanding what this
cunning plan was, give her a three digit number. Then she
tells me that's my password. Talk about a "luggage combo
in Space Balls". I'm thinking of all the hackerz out there,
waiting the retry period and typing "123" again. And after about
999 tries, they're in. You hear a little "click" as the luggage opens.

I sure hope they closed that luggage interface. I received
no further communications from the bank.

"1 2 3 - Like taking candy from a baby"



Paul
Newyana2
2024-11-27 14:49:06 UTC
Permalink
Post by Paul
But I guess no one wants to give up Remote Desktop, file sharing, online banking,
and now online services.
Would you like to know what the three digit password is on my bank account ?
So would I :-)
My jaw dropped, when I'm at the bank and the teller starts
doing a pitch for online banking. She says "lets set it up".
She asks me "think of a three digit number that is easy
to remember". And me, not really understanding what this
cunning plan was, give her a three digit number. Then she
tells me that's my password. Talk about a "luggage combo
in Space Balls". I'm thinking of all the hackerz out there,
waiting the retry period and typing "123" again. And after about
999 tries, they're in. You hear a little "click" as the luggage opens.
I sure hope they closed that luggage interface. I received
no further communications from the bank.
I actually went to my bank to block the possibility of online
banking. They first said it was impossible. On another visit
they said I could call the big wheels at the corporate office.
I called and was able to block online banking.
...w¡ñ§±¤ñ
2024-11-27 18:10:05 UTC
Permalink
Post by Paul
But I guess no one wants to give up Remote Desktop, file sharing, online banking,
and now online services.
Would you like to know what the three digit password is on my bank account ?
So would I :-)
My jaw dropped, when I'm at the bank and the teller starts
doing a pitch for online banking. She says "lets set it up".
She asks me "think of a three digit number that is easy
to remember". And me, not really understanding what this
cunning plan was, give her a three digit number. Then she
tells me that's my password. Talk about a "luggage combo
in Space Balls". I'm thinking of all the hackerz out there,
waiting the retry period and typing "123" again. And after about
999 tries, they're in. You hear a little "click" as the luggage opens.
I sure hope they closed that luggage interface. I received
no further communications from the bank.
"1 2 3 - Like taking candy from a baby"
http://youtu.be/vTfNK4rN-dg
Paul
Time to change banks. My online bank requires a username, 12 digit
password(UC, LC, digits, special characters) and a 7 digit code sent via
SMS for browser access. The app can also be setup on iOS(Phone) with
username/pw/SMS code for fingerprint only access.
--
...w¡ñ§±¤ñ
Paul
2024-11-27 22:53:14 UTC
Permalink
Post by Paul
But I guess no one wants to give up Remote Desktop, file sharing, online banking,
and now online services.
Would you like to know what the three digit password is on my bank account ?
So would I :-)
My jaw dropped, when I'm at the bank and the teller starts
doing a pitch for online banking. She says "lets set it up".
She asks me "think of a three digit number that is easy
to remember". And me, not really understanding what this
cunning plan was, give her a three digit number. Then she
tells me that's my password. Talk about a "luggage combo
in Space Balls". I'm thinking of all the hackerz out there,
waiting the retry period and typing "123" again. And after about
999 tries, they're in. You hear a little "click" as the luggage opens.
I sure hope they closed that luggage interface. I received
no further communications from the bank.
"1 2 3 - Like taking candy from a baby"
http://youtu.be/vTfNK4rN-dg
    Paul
Time to change banks. My online bank requires a username, 12 digit password(UC, LC, digits, special characters) and a 7 digit code sent via SMS for browser access. The app can also be setup on iOS(Phone) with username/pw/SMS code for fingerprint only access.
This was some time ago. Maybe 1997-2000 timeframe.
My bank was doing some catching up, because a couple
other banks were doing online banking at the time.

Paul
Carlos E.R.
2024-11-27 12:51:34 UTC
Permalink
Post by david
So is this GDI+ stuff what Windows uses to draw on the screen?
  Gdi.dll is the basic graphics library, going back to Win95.
I think it goes back to version 3 at least. It is their basic design. If
the dll wasn't there, the GDI concept was.
It deals
with working on bitmap images especially. Gdiplus.dll was added
much later, adding additional functionality.
--
Cheers, Carlos.
R.Wieser
2024-11-27 07:05:30 UTC
Permalink
David,
Post by david
You two talk about "GDI+" as if the rest of us know what it is! :)
Apologies. :-)
Post by david
So is this GDI+ stuff what Windows uses to draw on the screen?
GDI+ is for the more complex drawing stuff, and extends GDI. Basic drawing
stuff (drawing windows and controls on them) can also be found in User32.
Post by david
Windows GDI+ is a class-based API for C/C++ programmers.
Not quite. Although at that time Windows tried to push the object model
with its methods, its API also exposed functions to do the same things.
IOW, you could do stuff either way.

Regards,
Rudy Wieser
Newyana2
2024-11-27 12:43:06 UTC
Permalink
Post by R.Wieser
Post by david
Windows GDI+ is a class-based API for C/C++ programmers.
Not quite. Although at that time Windows tried to push the object model
with its methods, its API also exposed functions to do the same things.
IOW, you could do stuff either way.
I thought that sounded odd, too. But the C++ people love classes.
Maybe what the sentence meant was, "as contrasted to the .Net
object model". In other words, what GDI+ is from the point of
view of a DotNetter.
EndlessSept
2024-11-27 00:48:42 UTC
Permalink
Post by david
Can you please explain
<blathering idiocy snipped>

Why are you posting "computer" questions on a photo group?

Don't answer - just stop posting on r.p.d unless it has to do with
photography with digital camera and downstream processes. (not computer
incompetence).

Pro tip: real photographers do not, ever, use Irfanview ...

Most avoid Windows for that matter (though not all).
david
2024-11-28 16:59:37 UTC
Permalink
Post by EndlessSept
Pro tip: real photographers do not, ever, use Irfanview ...
I'm not a pro photographer. I'm just trying to work with HEIC files.
I'm sick of this abnormal nonstandard hugely inefficient HEIC format.

I finally got HEIC working on Windows with Irfanview but what I found out
was a folder with just twenty five or so HEIC files takes *forever* to just
open up in Windows 10 - whereas that same folder converted to a normal
format (such as JPEG) takes less than a second to display just the file
names.

HEIC is so inefficient that I deleted all the HEIC files once I converted
them to a normal JPEG format using the efficient Irfanview batch converter.

That's how bad the HEIC format is, in terms of efficiency, even as each
individual HEIC file is puny in size (less than a megabyte) compared to the
equivalent normal JPEG file which is multiple megabytes in size.

It's not size that makes HEIC so inefficient a file format.
It's something else.

My recommendation is to avoid HEIC files like you'd avoid a rabid dog.

If someone sends you HEIC files, ask them to convert them to a normal
format before sending them. That's my advice born of my new experiences.
Paul
2024-11-28 20:16:53 UTC
Permalink
Post by david
Post by EndlessSept
Pro tip: real photographers do not, ever, use Irfanview ...
I'm not a pro photographer. I'm just trying to work with HEIC files.
I'm sick of this abnormal nonstandard hugely inefficient HEIC format.
I finally got HEIC working on Windows with Irfanview but what I found out
was a folder with just twenty five or so HEIC files takes *forever* to just
open up in Windows 10 - whereas that same folder converted to a normal
format (such as JPEG) takes less than a second to display just the file
names.
HEIC is so inefficient that I deleted all the HEIC files once I converted
them to a normal JPEG format using the efficient Irfanview batch converter.
That's how bad the HEIC format is, in terms of efficiency, even as each
individual HEIC file is puny in size (less than a megabyte) compared to the
equivalent normal JPEG file which is multiple megabytes in size.
It's not size that makes HEIC so inefficient a file format.
It's something else.
My recommendation is to avoid HEIC files like you'd avoid a rabid dog.
If someone sends you HEIC files, ask them to convert them to a normal
format before sending them. That's my advice born of my new experiences.
Never throw away samples of exotic file types!

You need samples of things, to vet computer programs.

For example, the 2.10 version of GIMP, should open HEIC,
and if the HEIC file contains two pictures, the custom
GIMP interface shows you previews of them, so you can
select which image you want to edit.

Even if this is not a preferred tool for editing, it
can still be used just for converting those images.

https://www.gimp.org/

*******

I found a sample here, a while back. That's what I use.

https://github.com/strukturag/libheif/tree/master/examples

example.heic fix iinf box version in example image Jul 9, 2024

Name: example.heic
Size: 718,114 bytes (701 KiB)
SHA256: 7F8B363E4936C0666A25F64F3A92FDA10BD8E5453BE4592530B65A55DD98F3F2

file example.heic
example.heic: ISO Media, HEIF Image

Still returns the same detection, as the previous sample of the same file.

[Picture] "A file ending in .heic , with two images stored inside the one file"

Loading Image...

If your proposed conversion software is working, it should
find *two* images inside that sample file, and offer to
create two output files with them.

Paul
Loading...