darktable-org / darktable

darktable is an open source photography workflow application and raw developer
https://www.darktable.org
GNU General Public License v3.0
9.77k stars 1.14k forks source link

Canon EOS Rebel T7i #5973

Closed Zanhard closed 4 years ago

Zanhard commented 4 years ago

Raw file submitted to https://raw.pixls.us/

Loading file in Darktable produces this error message: RawSpeed:Unable to find camera in database: 'Canon' 'Canon EOS REBEL T7i' '' Please consider providing samples on https://raw.pixls.us/, thanks! [rawspeed] (IMG_1678.CR2) bool rawspeed::RawDecoder::checkCameraSupported(const rawspeed::CameraMetaData*, const string&, const string&, const string&), line 174: Camera 'Canon' 'Canon EOS REBEL T7i', mode '' not supported, and not allowed to guess. Sorry.

Running version 2:3.2.1-1 (current in Arch Linux repository 2020-08-15)

johnny-bit commented 4 years ago

This is very weird - I tried on my system with pure 3.0.2, pure 3.2.1, current master and couple of my PR builds but ALL work perfectly fine with Canon EOS Rebel T7i, T7 and so on.

I'd try following: download an image from known-supported DSLR from raw.pixls.us (eg for 7D) and if that doesn't work - check file /usr/share/darktable/rawspeed/cameras.xml it should contain somewhere following:

    <Camera make="Canon" model="Canon EOS 800D">
        <ID make="Canon" model="EOS 800D">Canon EOS 800D</ID>
        <CFA width="2" height="2">
            <Color x="0" y="0">RED</Color>
            <Color x="1" y="0">GREEN</Color>
            <Color x="0" y="1">GREEN</Color>
            <Color x="1" y="1">BLUE</Color>
        </CFA>
        <Crop x="266" y="42" width="-6" height="-4"/>
        <Sensor black="2049" white="14338"/>
        <Sensor black="511" white="11892" iso_list="100"/>
        <Sensor black="511" white="14338" iso_list="200"/>
        <BlackAreas>
            <Vertical x="0" width="260"/>
            <Horizontal y="2" height="36"/>
        </BlackAreas>
        <Aliases>
            <Alias id="EOS Rebel T7i">Canon EOS Rebel T7i</Alias>
            <Alias id="EOS Kiss X9i">Canon EOS Kiss X9i</Alias>
        </Aliases>
    </Camera>
Zanhard commented 4 years ago

I downloaded another raw shot on the database, also from a T7i like mine, and that file worked fine. I have not been able to open a single raw photo I've taken since I got this camera a week ago. I also tried version 3.2.1 on Windows 10 and it also was not able to open my files. I've checked the cameras.xml file and it contains the same information as you have pasted. I'm kind of clueless as to why I was able to open the other T7i data from the database but not my own.

I can open the photos in Adobe's DNG converter, siril, rawtherapee, Canon's Digital Photo Professional, sequator, and deep sky stacker, so its not like the files are corrupt. Darktable will bring them into the lighttable, show me the metadata and the thumbnail, but will not open them in darktable (sends me back to lighttable). The error I get on screen when going to darktable is: Please check image (use exiv2 of exiftool) for corrupted data. Attached is the output from exiftool exifdata.txt I didn't see anything strange in there, personally. I don't really know what I'm looking at though.

Zanhard commented 4 years ago

I noticed that my lens serial doesn't match in the exif data of the image, but I doubt that would be an issue. The lens description itself is correct.

johnny-bit commented 4 years ago

Is your camera firmware up to date?

another possibility... can you in /usr/share/darktable/rawspeed/cameras.xml, just after

<Alias id="EOS Rebel T7i">Canon EOS Rebel T7i</Alias>
<Alias id="EOS Kiss X9i">Canon EOS Kiss X9i</Alias>

add following:

<Alias id="EOS REBEL T7i">Canon EOS REBEL T7i</Alias>

and see if it changes anything?

Also - can you share your image file that causes a problem?

Zanhard commented 4 years ago

Adding that line to cameras.xml fixed it! I guess it is case sensitive. Thank you!

github-actions[bot] commented 4 years ago

This issue did not get any activity in the past 30 days and will be closed in 365 days if no update occurs. Please check if the master branch has fixed it and report again or close the issue.

Zanhard commented 4 years ago

Have made a pull request to update cameras.xml with the added line.

LebedevRI commented 4 years ago

I'm not really sure what is actually going on here. How do you download files from the camera? Via some program? Can you please try copying files directly from the card via a card reader?

Zanhard commented 4 years ago

That is precisely what I've done, using a cardreader. When darktable reads the camera raw file (.Cr2) it finds the camera listed as "Canon EOS REBEL T7i" in the file exif data and looks in camera.xml for it but doesn't find it. The existing entry for the T7i has the word "Rebel" rather than "REBEL" and therefore does not find any matching camera, failing to open the files. By adding the alias line specified in the comment by Johnny-bit, darktable is then able to open the raw image files.

LebedevRI commented 4 years ago

That is precisely what I've done, using a cardreader.

Yes, but what do you use to actually copy the file?

Zanhard commented 4 years ago

Control + C / Control + V

I have also tried opening the files in darktable straight from the memory card plugged into the card reader and same result.