From: <j-...@us...> - 2009-06-29 23:12:33
|
Revision: 3696 http://kdenlive.svn.sourceforge.net/kdenlive/?rev=3696&view=rev Author: j-b-m Date: 2009-06-29 23:11:56 +0000 (Mon, 29 Jun 2009) Log Message: ----------- Replace acodec=vorbis with acodec=libvorbis if required for rendering: http://kdenlive.org/mantis/view.php?id=975 Modified Paths: -------------- trunk/kdenlive/src/renderwidget.cpp Modified: trunk/kdenlive/src/renderwidget.cpp =================================================================== --- trunk/kdenlive/src/renderwidget.cpp 2009-06-29 17:34:33 UTC (rev 3695) +++ trunk/kdenlive/src/renderwidget.cpp 2009-06-29 23:11:56 UTC (rev 3696) @@ -931,7 +931,6 @@ if (!sizeItem->isHidden()) { // Make sure the selected profile uses an installed avformat codec / format std = sizeItem->data(ParamsRole).toString(); - if (!formatsList.isEmpty()) { QString format; if (std.startsWith("f=")) format = std.section("f=", 1, 1); @@ -1122,6 +1121,11 @@ QListWidgetItem *item; QDomNodeList groups = doc.elementsByTagName("group"); + const QStringList acodecsList = KdenliveSettings::audiocodecs(); + bool replaceVorbisCodec = false; + if (!acodecsList.contains("vorbis") && acodecsList.contains("libvorbis")) replaceVorbisCodec = true; + + if (editable || groups.count() == 0) { QDomElement profiles = doc.documentElement(); if (editable && profiles.attribute("version", 0).toInt() < 1) { @@ -1168,6 +1172,13 @@ QString profileName = profile.attribute("name"); QString standard = profile.attribute("standard"); QString params = profile.attribute("args"); + + if (replaceVorbisCodec && params.contains("acodec=vorbis")) { + // replace vorbis with libvorbis + params = params.replace("vorbis", "libvorbis"); + } + + QString category = profile.attribute("category", i18n("Custom")); QString dest = profile.attribute("destinationid"); QString prof_extension = profile.attribute("extension"); @@ -1274,6 +1285,11 @@ profileName = profileElement.attribute("name"); standard = profileElement.attribute("standard"); params = profileElement.attribute("args"); + + if (replaceVorbisCodec && params.contains("acodec=vorbis")) { + // replace vorbis with libvorbis + params = params.replace("vorbis", "libvorbis"); + } prof_extension = profileElement.attribute("extension"); if (!prof_extension.isEmpty()) extension = prof_extension; item = new QListWidgetItem(profileName, m_view.size_list); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |