Allow .opus playback.

This commit is contained in:
John Preston 2019-03-04 14:13:09 +04:00
parent f0963a332a
commit 003d01206f
1 changed files with 12 additions and 9 deletions

View File

@ -1384,6 +1384,9 @@ bool DocumentData::isAudioFile() const {
} }
const auto prefix = qstr("audio/"); const auto prefix = qstr("audio/");
if (!_mimeString.startsWith(prefix, Qt::CaseInsensitive)) { if (!_mimeString.startsWith(prefix, Qt::CaseInsensitive)) {
if (_filename.endsWith(qstr(".opus"), Qt::CaseInsensitive)) {
return true;
}
return false; return false;
} }
const auto left = _mimeString.midRef(prefix.size()).toString(); const auto left = _mimeString.midRef(prefix.size()).toString();
@ -1510,15 +1513,15 @@ QString FileExtension(const QString &filepath) {
bool IsValidMediaFile(const QString &filepath) { bool IsValidMediaFile(const QString &filepath) {
static const auto kExtensions = [] { static const auto kExtensions = [] {
const auto list = qsl("\ const auto list = qsl("\
webm mkv flv vob ogv ogg drc gif gifv mng avi mov qt wmv yuv rm rmvb asf \ 16svx 2sf 3g2 3gp 8svx aac aaf aif aifc aiff amr amv ape asf ast au aup \
amv mp4 m4p m4v mpg mp2 mpeg mpe mpv m2v svi 3gp 3g2 mxf roq nsv f4v f4p \ avchd avi brstm bwf cam cdda cust dat divx drc dsh dsf dts dtshd dtsma \
f4a f4b wma divx evo mk3d mka mks mcf m2p ps ts m2ts ifo aaf avchd cam dat \ dvr-ms dwd evo f4a f4b f4p f4v fla flac flr flv gif gifv gsf gsm gym iff \
dsh dvr-ms m1v fla flr sol wrap smi swf wtv 8svx 16svx iff aiff aif aifc \ ifo it jam la ly m1v m2p m2ts m2v m4a m4p m4v mcf mid mk3d mka mks mkv mng \
au bwf cdda raw wav flac la pac m4a ape ofr ofs off rka shn tak tta wv \ mov mp1 mp2 mp3 mp4 minipsf mod mpc mpe mpeg mpg mpv mscz mt2 mus mxf mxl \
brstm dts dtshd dtsma ast amr mp3 spx gsm aac mpc vqf ra ots swa vox voc \ niff nsf nsv off ofr ofs ogg ogv opus ots pac ps psf psf2 psflib ptb qsf \
dwd smp aup cust mid mus sib sid ly gym vgm psf nsf mod ptb s3m xm it mt2 \ qt ra raw rka rm rmj rmvb roq s3m shn sib sid smi smp sol spc spx ssf svi \
minipsf psflib 2sf dsf gsf psf2 qsf ssf usf rmj spc niff mxl xml txm ym \ swa swf tak ts tta txm usf vgm vob voc vox vqf wav webm wma wmv wrap wtv \
jam mp1 mscz").split(' '); wv xm xml ym yuv").split(' ');
return base::flat_set<QString>(list.begin(), list.end()); return base::flat_set<QString>(list.begin(), list.end());
}(); }();