<div dir="ltr">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.<div><br></div><div>Gilles</div></div><div class="gmail_extra"><br><div class="gmail_quote">2018-03-08 19:07 GMT+01:00 Maik Qualmann <span dir="ltr"><<a href="mailto:metzpinguin@gmail.com" target="_blank">metzpinguin@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi Gilles,<br>
<br>
great, you are really fast. The QtAV widget does not rotate on its own. I<br>
added this feature a few days ago, as the orientation of the video in<br>
DMetadata with your new FFMpeg code was available.<br>
<span class="HOEnZb"><font color="#888888"><br>
Maik<br>
</font></span><div class="HOEnZb"><div class="h5"><br>
Am Donnerstag, 8. März 2018, 15:57:48 CET schrieb Gilles Caulier:<br>
> Else, i tested with the collection of video files from GDrive :<br>
><br>
> <a href="https://drive.google.com/drive/folders/10-SJNtJZZQd_LIchfav-YQ9a-pNsQStT" rel="noreferrer" target="_blank">https://drive.google.com/<wbr>drive/folders/10-SJNtJZZQd_<wbr>LIchfav-YQ9a-pNsQStT</a><br>
><br>
> The thumbnailer work as expected and there is no problem as QtAv frame<br>
> extractor generate.<br>
><br>
> Note : the thumbnails orientation don't need to be changed. Sound like<br>
> ffmpeg autorotate the stream automatically. There are few video taken<br>
> vertically in the collection and without to use exif rotation flag value,<br>
> all is displayed in right direction as well.<br>
><br>
> Note2 : The video preview is also auto-rotated by QtAv widget. No need to<br>
> double rotation of video while playing. Just test with video sample to<br>
> reproduce the problem.<br>
><br>
> Gilles Caulier<br>
><br>
> 2018-03-08 15:51 GMT+01:00 Gilles Caulier <<a href="mailto:caulier.gilles@gmail.com">caulier.gilles@gmail.com</a>>:<br>
> > Maik,<br>
> ><br>
> > The new video thumbnailer code based on ffmpeg is reviewed and optimized,<br>
> > excepted the last deprecated warning messages.<br>
> ><br>
> > These last one are relevant of change of FFMPEG API. It's not only some<br>
> > method call changes (+arguments). The type of structures have also<br>
> > changed.<br>
> > Typically :<br>
> ><br>
> > - AVPicture struct must be changed as AVFrame or a utils method from<br>
> > libavutil must be used.<br>
> ><br>
> > - AVCodecContext struct must be changed as AVCodecParameters.<br>
> ><br>
> > This must be done before to change deprecated methods. A simple migration<br>
> > of deprecated methods introduce more warnings due to use other internal<br>
> > structures.<br>
> ><br>
> > The most tedious method to port is avcodec_decode_video2() which must e<br>
> > replaced by 2 calls :  avcodec_send_packet() and avcodec_receive_frame().<br>
> > The last one must be pooled with a loop. It's not simple...<br>
> ><br>
> > Gilles<br>
> ><br>
> > 2018-03-06 22:06 GMT+01:00 Gilles Caulier <<a href="mailto:caulier.gilles@gmail.com">caulier.gilles@gmail.com</a>>:<br>
> >> No, i use last stable QtAv 1.12.0 from Mageia6...<br>
> >><br>
> >> Gilles<br>
> >><br>
> >> 2018-03-06 21:20 GMT+01:00 Maik Qualmann <<a href="mailto:metzpinguin@gmail.com">metzpinguin@gmail.com</a>>:<br>
> >>> Gilles,<br>
> >>><br>
> >>> do you use QtAV from the git/master? If so, it may be due to a new<br>
> >>> signal in<br>
> >>> the video frame extractor compared to version 1.12. I could fix that.<br>
> >>><br>
> >>> Maik<br>
> >>><br>
> >>> Am Sonntag, 4. März 2018, 23:00:17 CET schrieb Gilles Caulier:<br>
> >>> > And this line :<br>
> >>> > <a href="https://cgit.kde.org/ffmpegthumbs.git/tree/CMakeLists.txt#n16" rel="noreferrer" target="_blank">https://cgit.kde.org/<wbr>ffmpegthumbs.git/tree/<wbr>CMakeLists.txt#n16</a><br>
> >>> ><br>
> >>> > Gilles<br>
> >>> ><br>
> >>> > 2018-03-04 22:58 GMT+01:00 Gilles Caulier <<a href="mailto:caulier.gilles@gmail.com">caulier.gilles@gmail.com</a>>:<br>
> >>> > > Look this line :<br>
> >>> > ><br>
> >>> > > <a href="https://cgit.kde.org/ffmpegthumbs.git/tree/ffmpegthumbnailer.h#n21" rel="noreferrer" target="_blank">https://cgit.kde.org/<wbr>ffmpegthumbs.git/tree/<wbr>ffmpegthumbnailer.h#n21</a><br>
> >>> > ><br>
> >>> > > Gilles<br>
> >>> > ><br>
> >>> > > 2018-03-04 19:27 GMT+01:00 Maik Qualmann <<a href="mailto:metzpinguin@gmail.com">metzpinguin@gmail.com</a>>:<br>
> >>> > >> Gilles,<br>
> >>> > >><br>
> >>> > >> libffmpegthumbnailer has no KIO dependencies, only C and FFMpeg. Or<br>
> >>><br>
> >>> I do<br>
> >>><br>
> >>> > >> not<br>
> >>> > >> look right? Does the package exist in your Linux distribution?<br>
> >>> > >><br>
> >>> > >> <a href="https://github.com/dirkvdb/ffmpegthumbnailer/tree/master/lib" rel="noreferrer" target="_blank">https://github.com/dirkvdb/<wbr>ffmpegthumbnailer/tree/master/<wbr>lib</a><br>
> >>> > >> ffmpegthumbnailer<br>
> >>> > >><br>
> >>> > >> Maik<br>
> >>> > >><br>
> >>> > >> Am Sonntag, 4. März 2018, 18:56:48 CET schrieb Gilles Caulier:<br>
> >>> > >> > Another one : <a href="https://bugs.kde.org/show_bug.cgi?id=387892" rel="noreferrer" target="_blank">https://bugs.kde.org/show_bug.<wbr>cgi?id=387892</a><br>
> >>> > >> ><br>
> >>> > >> > not reproducible here, but with FFMPEG, this will kill the bug...<br>
> >>> > >> ><br>
> >>> > >> > Gilles<br>
> >>> > >> ><br>
> >>> > >> > 2018-03-04 18:55 GMT+01:00 Gilles Caulier <<br>
> >>><br>
> >>> <a href="mailto:caulier.gilles@gmail.com">caulier.gilles@gmail.com</a>>:<br>
> >>> > >> > > For me this entry is valid :<br>
> >>> > >> > ><br>
> >>> > >> > > <a href="https://bugs.kde.org/show_bug.cgi?id=390443" rel="noreferrer" target="_blank">https://bugs.kde.org/show_bug.<wbr>cgi?id=390443</a><br>
> >>> > >> > ><br>
> >>> > >> > > and we can try to close this file if we use FFMPEG directly to<br>
> >>> > >><br>
> >>> > >> generate<br>
> >>> > >><br>
> >>> > >> > > thumbnailer...<br>
> >>> > >> > ><br>
> >>> > >> > > Gilles<br>
> >>> > >> > ><br>
> >>> > >> > > 2018-03-04 17:49 GMT+01:00 Gilles Caulier <<br>
> >>><br>
> >>> <a href="mailto:caulier.gilles@gmail.com">caulier.gilles@gmail.com</a>>:<br>
> >>> > >> > >> Hi all,<br>
> >>> > >> > >><br>
> >>> > >> > >> Since i written the FFMPEG video metadata parser in 6.0.0<br>
> >>><br>
> >>> branch,<br>
> >>><br>
> >>> > >> > >> i'm<br>
> >>> > >> > >> trying to register a huge video collection from my host<br>
> >>><br>
> >>> computer.<br>
> >>><br>
> >>> > >> > >> Here, more than 2500 MKV files are present, plus a lots of<br>
> >>><br>
> >>> MP4, MOV,<br>
> >>><br>
> >>> > >> and<br>
> >>> > >><br>
> >>> > >> > >> another media taken with cellular and camera.<br>
> >>> > >> > >><br>
> >>> > >> > >> The registration have been very fast. 2500 file parsed in 2<br>
> >>><br>
> >>> minutes<br>
> >>><br>
> >>> > >> and<br>
> >>> > >><br>
> >>> > >> > >> ready to use. System has SSD, Sqlite, 8 cores, and 32Gb of<br>
> >>><br>
> >>> RAM. No<br>
> >>><br>
> >>> > >> crash<br>
> >>> > >><br>
> >>> > >> > >> all work fine... excepted... the video thumbnails.<br>
> >>> > >> > >><br>
> >>> > >> > >> I facing random dysfunctions with video files. Sometime thumbs<br>
> >>><br>
> >>> are<br>
> >>><br>
> >>> > >> there,<br>
> >>> > >><br>
> >>> > >> > >> sometime not. Using F5 always give a different results until i<br>
> >>><br>
> >>> try<br>
> >>><br>
> >>> > >> > >> to<br>
> >>> > >> > >> insist and i can see the DB locked and revival...<br>
> >>> > >> > >><br>
> >>> > >> > >> The video thumbnailer is based on QtAV frame extractor. My<br>
> >>><br>
> >>> QtAV is<br>
> >>><br>
> >>> > >> last<br>
> >>> > >><br>
> >>> > >> > >> stable 1.12.0. I suspect a bug somewhere in QtAV, as i can see<br>
> >>> > >> > >> thumbnailer<br>
> >>> > >> > >> code including a lots of mutex to prevent concurrency.<br>
> >>> > >> > >><br>
> >>> > >> > >> This is typically abnormal. FFMPEG API is re-entrant as i<br>
> >>><br>
> >>> checked<br>
> >>><br>
> >>> > >> with<br>
> >>> > >><br>
> >>> > >> > >> the multi-threaded metadata parser unit test.<br>
> >>> > >> > >><br>
> >>> > >> > >> As we depend now directly of FFMPEG API, I propose to rewrite<br>
> >>><br>
> >>> the<br>
> >>><br>
> >>> > >> video<br>
> >>> > >><br>
> >>> > >> > >> thumbnailer with libav C function.<br>
> >>> > >> > >><br>
> >>> > >> > >> We have code ready to use with ffmpeg API here :<br>
> >>> > >> > >><br>
> >>> > >> > >> <a href="https://cgit.kde.org/ffmpegthumbs.git/tree/" rel="noreferrer" target="_blank">https://cgit.kde.org/<wbr>ffmpegthumbs.git/tree/</a><br>
> >>> > >> > >><br>
> >>> > >> > >> Your viewpoint ?<br>
> >>> > >> > >><br>
> >>> > >> > >> Gilles<br>
<br>
<br>
<br>
<br>
</div></div></blockquote></div><br></div>