6.0.0 video thumbnailer...

Maik Qualmann metzpinguin at gmail.com
Sat Mar 10 15:55:29 GMT 2018


Everything fine with the video thumbnail size. The size of 128 is just a 
preset value. We set the correct size, 256 or for HiDPI then 512 pixels.

Maik

Am Samstag, 10. März 2018, 09:47:22 CET schrieben Sie:
> Hmm, the thumbnail size is setting in the video thumbnailerjob.cpp. I know
> that the QImage size is always 256 from a site. I check it again with HiDPI
> support.
> 
> Maik
> 
> 2018-03-10 9:13 GMT+01:00 Gilles Caulier <caulier.gilles at gmail.com>:
> > Maik,
> > Look well in ffmpeg thumnailer code :
> > 
> > https://cgit.kde.org/digikam.git/tree/libs/threadimageio/
> > ffmpegthumbnailer/videothumbnailer.cpp?h=development/6.0.0#n56
> > 
> > The video thumbnail size is set at 128, which is too low. It must be set
> > externally when user switch to Hdpi support (typically 512 in this case)
> > 
> > Gilles
> > 
> > 2018-03-08 19:28 GMT+01:00 Maik Qualmann <metzpinguin at gmail.com>:
> >> After a restart, the thumbnail is rotated correctly again, was also
> >> dependent
> >> on the size, so in the cache.
> >> 
> >> Maik
> >> 
> >> Am Donnerstag, 8. März 2018, 19:24:52 CET schrieben Sie:
> >> > Yes, QtAV and ffmepegthumbnailer do not rotate themselves. Dolphin uses
> >> 
> >> the
> >> 
> >> > same code from ffmpegthumbnailer here and the videos are not rotated.
> >> 
> >> At the
> >> 
> >> > first scan digiKam rotate the thumbnail because it now knows the
> >> > orientation, why not after F5 - I do not know.
> >> > 
> >> > Maik
> >> > 
> >> > Am Donnerstag, 8. März 2018, 19:16:29 CET schrieb Gilles Caulier:
> >> > > Hum wrong interpretation from me. This depend of current thumbnail
> >> 
> >> size
> >> 
> >> > > displayed on icon view and image in cache. You need to reset the
> >> > > thumbnails
> >> > > DB and try as well... The results are... strange...
> >> > > Gilles
> >> > > 
> >> > > 2018-03-08 19:12 GMT+01:00 Gilles Caulier <caulier.gilles at gmail.com>:
> >> > > > yes, but i think this code is not necessary. Did you download the
> >> 
> >> video
> >> 
> >> > > > samples from GDrive and try to import these files in your
> >> 
> >> collection ?
> >> 
> >> > > > Look
> >> > > > the orientation of thumbnails and the preview.
> >> > > > 
> >> > > > Gilles
> >> > > > 
> >> > > > 2018-03-08 19:07 GMT+01:00 Maik Qualmann <metzpinguin at gmail.com>:
> >> > > >> Hi Gilles,
> >> > > >> 
> >> > > >> great, you are really fast. The QtAV widget does not rotate on its
> >> 
> >> own.
> >> 
> >> > > >> I
> >> > > >> added this feature a few days ago, as the orientation of the video
> >> 
> >> in
> >> 
> >> > > >> DMetadata with your new FFMpeg code was available.
> >> > > >> 
> >> > > >> Maik
> >> > > >> 
> >> > > >> Am Donnerstag, 8. März 2018, 15:57:48 CET schrieb Gilles Caulier:
> >> > > >> > Else, i tested with the collection of video files from GDrive :
> >> > > >> > 
> >> > > >> > https://drive.google.com/drive/folders/10-SJNtJZZQd_LIchfav-> >>
> >> > > >> 
> >> > > >> YQ9a-pNsQStT
> >> > > >> 
> >> > > >> > The thumbnailer work as expected and there is no problem as QtAv
> >> > > >> > frame
> >> > > >> > extractor generate.
> >> > > >> > 
> >> > > >> > Note : the thumbnails orientation don't need to be changed.
> >> > > >> > Sound
> >> > > >> > like
> >> > > >> > ffmpeg autorotate the stream automatically. There are few video
> >> 
> >> taken
> >> 
> >> > > >> > vertically in the collection and without to use exif rotation
> >> 
> >> flag
> >> 
> >> > > >> value,
> >> > > >> 
> >> > > >> > all is displayed in right direction as well.
> >> > > >> > 
> >> > > >> > Note2 : The video preview is also auto-rotated by QtAv widget.
> >> > > >> > No
> >> > > >> > need
> >> > > >> 
> >> > > >> to
> >> > > >> 
> >> > > >> > double rotation of video while playing. Just test with video
> >> 
> >> sample
> >> 
> >> > > >> > to
> >> > > >> > reproduce the problem.
> >> > > >> > 
> >> > > >> > Gilles Caulier
> >> > > >> > 
> >> > > >> > 2018-03-08 15:51 GMT+01:00 Gilles Caulier <
> >> 
> >> caulier.gilles at gmail.com>:
> >> > > >> > > Maik,
> >> > > >> > > 
> >> > > >> > > The new video thumbnailer code based on ffmpeg is reviewed and
> >> > > >> 
> >> > > >> optimized,
> >> > > >> 
> >> > > >> > > excepted the last deprecated warning messages.
> >> > > >> > > 
> >> > > >> > > These last one are relevant of change of FFMPEG API. It's not
> >> 
> >> only
> >> 
> >> > > >> some
> >> > > >> 
> >> > > >> > > method call changes (+arguments). The type of structures have
> >> 
> >> also
> >> 
> >> > > >> > > changed.
> >> > > >> > > Typically :
> >> > > >> > > 
> >> > > >> > > - AVPicture struct must be changed as AVFrame or a utils
> >> > > >> > > method
> >> > > >> > > from
> >> > > >> > > libavutil must be used.
> >> > > >> > > 
> >> > > >> > > - AVCodecContext struct must be changed as AVCodecParameters.
> >> > > >> > > 
> >> > > >> > > This must be done before to change deprecated methods. A
> >> > > >> > > simple
> >> > > >> 
> >> > > >> migration
> >> > > >> 
> >> > > >> > > of deprecated methods introduce more warnings due to use other
> >> > > >> 
> >> > > >> internal
> >> > > >> 
> >> > > >> > > structures.
> >> > > >> > > 
> >> > > >> > > The most tedious method to port is avcodec_decode_video2()
> >> 
> >> which
> >> 
> >> > > >> > > must
> >> > > >> 
> >> > > >> e
> >> > > >> 
> >> > > >> > > replaced by 2 calls :  avcodec_send_packet() and
> >> > > >> 
> >> > > >> avcodec_receive_frame().
> >> > > >> 
> >> > > >> > > The last one must be pooled with a loop. It's not simple...
> >> > > >> > > 
> >> > > >> > > Gilles
> >> > > >> > > 
> >> > > >> > > 2018-03-06 22:06 GMT+01:00 Gilles Caulier
> >> 
> >> <caulier.gilles at gmail.com>:
> >> > > >> > >> No, i use last stable QtAv 1.12.0 from Mageia6...
> >> > > >> > >> 
> >> > > >> > >> Gilles
> >> > > >> > >> 
> >> > > >> > >> 2018-03-06 21:20 GMT+01:00 Maik Qualmann <
> >> 
> >> metzpinguin at gmail.com>:
> >> > > >> > >>> Gilles,
> >> > > >> > >>> 
> >> > > >> > >>> do you use QtAV from the git/master? If so, it may be due to
> >> 
> >> a
> >> 
> >> > > >> > >>> new
> >> > > >> > >>> signal in
> >> > > >> > >>> the video frame extractor compared to version 1.12. I could
> >> 
> >> fix
> >> 
> >> > > >> that.
> >> > > >> 
> >> > > >> > >>> Maik
> >> > > >> > >>> 
> >> > > >> > >>> Am Sonntag, 4. März 2018, 23:00:17 CET schrieb Gilles
> >> 
> >> Caulier:
> >> > > >> > >>> > And this line :
> >> > > >> > >>> > https://cgit.kde.org/ffmpegthumbs.git/tree/CMakeLists.txt#
> >> 
> >> n16
> >> 
> >> > > >> > >>> > Gilles
> >> > > >> > >>> > 
> >> > > >> > >>> > 2018-03-04 22:58 GMT+01:00 Gilles Caulier <
> >> > > >> 
> >> > > >> caulier.gilles at gmail.com>:
> >> > > >> > >>> > > Look this line :
> >> > > >> > >>> > > 
> >> > > >> > >>> > > https://cgit.kde.org/ffmpegthu
> >> 
> >> mbs.git/tree/ffmpegthumbnailer
> >> 
> >> > > >> .h#n21
> >> > > >> 
> >> > > >> > >>> > > Gilles
> >> > > >> > >>> > > 
> >> > > >> > >>> > > 2018-03-04 19:27 GMT+01:00 Maik Qualmann
> >> > > >> > >>> > > <metzpinguin at gmail.com
> >> > > >> > >>> > > 
> >> > > >> > >>> > >> Gilles,
> >> > > >> > >>> > >> 
> >> > > >> > >>> > >> libffmpegthumbnailer has no KIO dependencies, only C
> >> > > >> > >>> > >> and
> >> > > >> 
> >> > > >> FFMpeg. Or
> >> > > >> 
> >> > > >> > >>> I do
> >> > > >> > >>> 
> >> > > >> > >>> > >> not
> >> > > >> > >>> > >> look right? Does the package exist in your Linux
> >> > > >> > >>> > >> distribution?
> >> > > >> > >>> > >> 
> >> > > >> > >>> > >> https://github.com/dirkvdb/ffm
> >> 
> >> pegthumbnailer/tree/master/lib
> >> 
> >> > > >> > >>> > >> ffmpegthumbnailer
> >> > > >> > >>> > >> 
> >> > > >> > >>> > >> Maik
> >> > > >> > >>> > >> 
> >> > > >> > >>> > >> Am Sonntag, 4. März 2018, 18:56:48 CET schrieb Gilles
> >> 
> >> Caulier:
> >> > > >> > >>> > >> > Another one : https://bugs.kde.org/show_bug.
> >> 
> >> cgi?id=387892
> >> 
> >> > > >> > >>> > >> > not reproducible here, but with FFMPEG, this will
> >> 
> >> kill the
> >> 
> >> > > >> bug...
> >> > > >> 
> >> > > >> > >>> > >> > Gilles
> >> > > >> > >>> > >> > 
> >> > > >> > >>> > >> > 2018-03-04 18:55 GMT+01:00 Gilles Caulier <
> >> > > >> > >>> 
> >> > > >> > >>> caulier.gilles at gmail.com>:
> >> > > >> > >>> > >> > > For me this entry is valid :
> >> > > >> > >>> > >> > > 
> >> > > >> > >>> > >> > > https://bugs.kde.org/show_bug.cgi?id=390443
> >> > > >> > >>> > >> > > 
> >> > > >> > >>> > >> > > and we can try to close this file if we use FFMPEG
> >> > > >> 
> >> > > >> directly to
> >> > > >> 
> >> > > >> > >>> > >> generate
> >> > > >> > >>> > >> 
> >> > > >> > >>> > >> > > thumbnailer...
> >> > > >> > >>> > >> > > 
> >> > > >> > >>> > >> > > Gilles
> >> > > >> > >>> > >> > > 
> >> > > >> > >>> > >> > > 2018-03-04 17:49 GMT+01:00 Gilles Caulier <
> >> > > >> > >>> 
> >> > > >> > >>> caulier.gilles at gmail.com>:
> >> > > >> > >>> > >> > >> Hi all,
> >> > > >> > >>> > >> > >> 
> >> > > >> > >>> > >> > >> Since i written the FFMPEG video metadata parser
> >> > > >> > >>> > >> > >> in
> >> > > >> > >>> > >> > >> 6.0.0
> >> > > >> > >>> 
> >> > > >> > >>> branch,
> >> > > >> > >>> 
> >> > > >> > >>> > >> > >> i'm
> >> > > >> > >>> > >> > >> trying to register a huge video collection from my
> >> 
> >> host
> >> 
> >> > > >> > >>> computer.
> >> > > >> > >>> 
> >> > > >> > >>> > >> > >> Here, more than 2500 MKV files are present, plus a
> >> 
> >> lots
> >> 
> >> > > >> > >>> > >> > >> of
> >> > > >> > >>> 
> >> > > >> > >>> MP4, MOV,
> >> > > >> > >>> 
> >> > > >> > >>> > >> and
> >> > > >> > >>> > >> 
> >> > > >> > >>> > >> > >> another media taken with cellular and camera.
> >> > > >> > >>> > >> > >> 
> >> > > >> > >>> > >> > >> The registration have been very fast. 2500 file
> >> 
> >> parsed
> >> 
> >> > > >> > >>> > >> > >> in
> >> > > >> 
> >> > > >> 2
> >> > > >> 
> >> > > >> > >>> minutes
> >> > > >> > >>> 
> >> > > >> > >>> > >> and
> >> > > >> > >>> > >> 
> >> > > >> > >>> > >> > >> ready to use. System has SSD, Sqlite, 8 cores, and
> >> 
> >> 32Gb
> >> 
> >> > > >> > >>> > >> > >> of
> >> > > >> > >>> 
> >> > > >> > >>> RAM. No
> >> > > >> > >>> 
> >> > > >> > >>> > >> crash
> >> > > >> > >>> > >> 
> >> > > >> > >>> > >> > >> all work fine... excepted... the video thumbnails.
> >> > > >> > >>> > >> > >> 
> >> > > >> > >>> > >> > >> I facing random dysfunctions with video files.
> >> 
> >> Sometime
> >> 
> >> > > >> thumbs
> >> > > >> 
> >> > > >> > >>> are
> >> > > >> > >>> 
> >> > > >> > >>> > >> there,
> >> > > >> > >>> > >> 
> >> > > >> > >>> > >> > >> sometime not. Using F5 always give a different
> >> 
> >> results
> >> 
> >> > > >> until i
> >> > > >> 
> >> > > >> > >>> try
> >> > > >> > >>> 
> >> > > >> > >>> > >> > >> to
> >> > > >> > >>> > >> > >> insist and i can see the DB locked and revival...
> >> > > >> > >>> > >> > >> 
> >> > > >> > >>> > >> > >> The video thumbnailer is based on QtAV frame
> >> 
> >> extractor.
> >> 
> >> > > >> > >>> > >> > >> My
> >> > > >> > >>> 
> >> > > >> > >>> QtAV is
> >> > > >> > >>> 
> >> > > >> > >>> > >> last
> >> > > >> > >>> > >> 
> >> > > >> > >>> > >> > >> stable 1.12.0. I suspect a bug somewhere in QtAV,
> >> 
> >> as i
> >> 
> >> > > >> can see
> >> > > >> 
> >> > > >> > >>> > >> > >> thumbnailer
> >> > > >> > >>> > >> > >> code including a lots of mutex to prevent
> >> 
> >> concurrency.
> >> 
> >> > > >> > >>> > >> > >> This is typically abnormal. FFMPEG API is
> >> 
> >> re-entrant as
> >> 
> >> > > >> > >>> > >> > >> i
> >> > > >> > >>> 
> >> > > >> > >>> checked
> >> > > >> > >>> 
> >> > > >> > >>> > >> with
> >> > > >> > >>> > >> 
> >> > > >> > >>> > >> > >> the multi-threaded metadata parser unit test.
> >> > > >> > >>> > >> > >> 
> >> > > >> > >>> > >> > >> As we depend now directly of FFMPEG API, I propose
> >> 
> >> to
> >> 
> >> > > >> rewrite
> >> > > >> 
> >> > > >> > >>> the
> >> > > >> > >>> 
> >> > > >> > >>> > >> video
> >> > > >> > >>> > >> 
> >> > > >> > >>> > >> > >> thumbnailer with libav C function.
> >> > > >> > >>> > >> > >> 
> >> > > >> > >>> > >> > >> We have code ready to use with ffmpeg API here :
> >> > > >> > >>> > >> > >> 
> >> > > >> > >>> > >> > >> https://cgit.kde.org/ffmpegthumbs.git/tree/
> >> > > >> > >>> > >> > >> 
> >> > > >> > >>> > >> > >> Your viewpoint ?
> >> > > >> > >>> > >> > >> 
> >> > > >> > >>> > >> > >> Gilles







More information about the Digikam-devel mailing list