JPEXS Free Flash Decompiler Issue Tracker

If you are looking for the decompiler itself, visit https://github.com/jindrapetrik/jpexs-decompiler

NEW : We have got a new blog where we post some interesting SWF internals info.

List of issuesList of issues

#1347 Exported JPG images can't be opened
Author: user fancool
Date created:
Type: bug
Visibility: Everybody
Assigned to:
Labels: Broken JPEGExportImages
State: closed Help

> What steps will reproduce the problem? Export images via GUI or command line interface from the attached SWF file. > What is the expected output? What do you see instead? The image in it is exported as below. Image viewers can't open it. > What version of the product are you using? Is it "nightly build"? Which operating system do you have? 10.0.0 on Windows 8.1 Enterprise > Please provide any additional information below. If the problem is related to a SWF file, attach it here, otherwise we can't help you. This problem occurs to me quite often, not just for this particular SWF file. I will be very grateful if you could fix it!
Download1.swf (42 KiB)Download1.jpg (318 KiB)
developer
hmm... interesting. the result looks good, but usually the image view applications cannot open it, but Java can decode it. There is a workaroud: when you export it, select png format.
user
To found out what's going wrong, I exported the image using another decompiler software (which can export it correctly), and compared the results. It seems that JPEXS Free Flash Decompiler exported everything correctly, except for the header. See "ffdec.png" for the header of the image exported by JPEXS Free Flash Decompiler, and see "other_decompiler.png" for the header of the image exported by other decompiler.
developer
This is exactly the same problem as in #1153 Your Jpeg2 tag has wrong inner data. Sometimes SWFs can have erroneous header in Jpeg data, but only in the beginning of the data. From SWF specification: "The data in this tag begins with the JPEG SOI marker 0xFF, 0xD8 and ends with the EOI marker 0xFF, 0xD9. Before version 8 of the SWF file format, SWF files could contain an erroneous header of 0xFF, 0xD9, 0xFF, 0xD8 before the JPEG SOI marker." FFDec removes it if it is the first 4 bytes. In 1_other_decompiler.jpg there are more differences than needed. It is enough to remove the 4 extra bytes (ffdec_original.jpg => ffdec_fixed.jpg) How did you create this SWF file? If it was created with official Adobe Flash/Animate, then we should solve this problem, but it is not easy. It is not enough to simply remove the ffd9ffd9 bytes from the data, because it may contain this byte sequance in a valid place. So the data should be processed somehow. Ok, FFDec could recompress the image (since it can load that), but I'd prefer to export the original bytes.
developer
Forgot to attach the files
user
Thank you for the information! Now I know where the problem is. Since these SWF movies are not my own works, I'll need to do some research to find out their creation process. I'll make another post when I obtain more information.
admin
This was fixed in nightly 1828. The JPEG file is reorganized to properly display.
State: new→upgraded
admin
State: upgraded→closed