Coder Social home page Coder Social logo

Comments (2)

lastzero avatar lastzero commented on May 22, 2024

Since these typically involve unknown unknowns and usually not that many pictures are affected (in my case 7 out of 100k+), it can be difficult to provide specific information that would enable end users to resolve the underlying issue(s). Also note that whenever we learn of issues with specific file formats, we will, where possible, provide a fix for them in an upcoming release. In these (most common) cases, you simply need to re-index.

The 7 affected videos in my library are clearly missing a thumbnail. As far as I can tell, these are mostly older QuickTime files that may simply not be compatible with FFmpeg:

Screenshot 2023-12-16 at 10 59 55

To find and fix the cause in this case, you would need to take a look at the following command, e.g. check the error returned by enabling trace log mode, and then check the manual for solutions (or follow any helpful advice displayed as part of the error message):

// Extract a still image to be used as preview.
if f.IsAnimated() && !f.IsWebP() && c.conf.FFmpegEnabled() {
// Use "ffmpeg" to extract a JPEG still image from the video.
result = append(result, exec.Command(c.conf.FFmpegBin(), "-y", "-ss", ffmpeg.PreviewTimeOffset(f.Duration()), "-i", f.FileName(), "-vframes", "1", jpegName))
}

In some cases, problems can also be caused by configuration mistakes (e.g. FFmpeg disabled) or problems with the file system permissions. Our docs therefore include the following checklist to help you find and resolve such issues:

from photoprism.

causa-prima avatar causa-prima commented on May 22, 2024

Thanks for the swift reply! I forgot about the checklist in my original feature request, so I updated it with my thoughts about it as an alternative that I considered.

Since these typically involve unknown unknowns and usually not that many pictures are affected (in my case 7 out of 100k+), it can be difficult to provide specific information that would enable end users to resolve the underlying issue(s).

I fully understand that. Still, the code encountered an issue somewhere, and it would be nice to know in which part of the indexing that happened to at least have some hint about what went wrong. To me, anything is better than nothing here, so I'd be much happier if I saw some error message for the cases of unknown unknowns somewhere in the hidden-files-ui without have to dive into logs.

Also note that whenever we learn of issues with specific file formats, we will, where possible, provide a fix for them in an upcoming release. In these (most common) cases, you simply need to re-index.

I'd argue that showing these issues in the hidden-files-ui would make it much easier for you to learn about these problems as well, as it could be much easier to report them for the average user.

To find and fix the cause in this case, you would need to take a look at the following command, e.g. check the error returned by enabling trace log mode

I don't think most users would be able to do that. How would I even know about that ffmpeg call and its parameters without diving into the source code?

To further add to my initial idea: As a programmer myself, I'd image it could be as easy as saving any error messages from indexing to some "error"-property for each file, and displaying that in the hidden-files-ui on each picture card. If possible, the message could be made user-friendly for known / common issues, possibly with a link to more info or steps to fix the problem. What would be the challenges with that?

from photoprism.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.