added abbreviation for Opus in OGG

This commit is contained in:
Martchus 2016-01-17 19:34:36 +01:00
parent 240e7d0b42
commit 188e930acd
2 changed files with 15 additions and 2 deletions

View File

@ -674,6 +674,14 @@ const char *MediaFileInfo::containerFormatAbbreviation() const
unsigned int version = 0;
switch(m_containerFormat) {
case ContainerFormat::Ogg:
// check whether only Opus tracks are present
version = static_cast<unsigned int>(GeneralMediaFormat::Opus);
for(const auto &track : static_cast<OggContainer *>(m_container.get())->tracks()) {
if(track->format().general != GeneralMediaFormat::Opus) {
version = 0;
break;
}
}
case ContainerFormat::Matroska:
case ContainerFormat::Mp4:
mediaType = hasTracksOfType(MediaType::Video) ? MediaType::Video : MediaType::Audio;

View File

@ -238,12 +238,17 @@ const char *containerFormatAbbreviation(ContainerFormat containerFormat, MediaTy
default:
return "mp4";
}
case ContainerFormat::Ogg: return "ogg";
case ContainerFormat::Ogg:
switch(mediaType) {
case MediaType::Video:
return "ogv";
default:
return "ogg";
switch(version) {
case static_cast<unsigned int>(GeneralMediaFormat::Opus):
return "opus";
default:
return "ogg";
}
}
case ContainerFormat::PhotoshopDocument: return "psd";
case ContainerFormat::Png: return "png";