Switch to libffmpegthumbnailer for video thumbnails
Currently, CD-Index uses its own ffmpeg-based code to extract thumbnails from video files. However, its work is not ideal. Thus, the following issues were discovered so far:
- Some thumbnails are all green (often, it’s the first screen in a set) or contain artifacts. Interesting, but this happens less often, if
cdindexis run under Valgrind (i.e., runs slower).
- Libswscale crashes sometimes, in this way preventing CD-Index to complete its job. This is somehow related to invalid video frames and happens on very old video files usually.
- Sometimes the own code fails to extract frames. This also happens on old video files only.
All these issues do not apply to ffmpegthumbnailer tool, which comes with libffmpegthumbnailer, what probably means, that authors of the library found ways to resolve them. So, instead of trying to do the same, I should probably switch to this library.
#1 Updated by Andriy Lesyuk about 6 years ago
- Status changed from Open to In Progress
- Target version set to 1.00b
Usage of libffmpegthumbnailer will have the following issues:
- If libffmpegthumbnailer fails to seek, it falls back to the first frame and does not let the calling code know, that it did so. This will result in all three thumbnails to be taken for the first frame in such (rare) cases (i.e., they will be identical).
- Currently, fetching frames is also used to determine, if the video is interlaced. So, if CD-Index moves to libffmpegthumbnailer, it will still need to fetch a frame just to do this.