Hier is een alternatief idee met behulp van profielen. MCEBuddy-profielen hebben een functie genaamd niet-ondersteunde combinaties. Voor een profielencoder kun je in principe niet-ondersteunde combinaties van video-, audio- en containerparameters opgeven. Als het zo’n combinatie tegenkomt, wordt die encoder overgeslagen en gaat het naar de volgende. Meer details hier:
Met deze parameter kun je dit op twee verschillende manieren aanpakken:
-
Gebruik de eerste encoder om bepaalde combinaties niet te verwerken (bijv. handbrake verwerkt geen DTS-streams en kopieert de audiotracks) en laat een andere de rest afhandelen (ffmpeg encodeert alle audiotracks naar ac3). Een voorbeeld hiervan ziet er zo uit (alleen het relevante deel van het profiel, de rest vul je zelf aan):
order=handbrake,ffmpeg
handbrake-unsupported=dts
handbrake-audio=-E copy
handbrake-audioac3=-E copy
ffmpeg-audio=-acodec ac3 -ab 384k
ffmpeg-audioac3=-acodec ac3 -ab 384k -
De tweede aanpak maakt gebruik van profielen met conversietaken: je maakt 2 profielen, specificeert slechts één encoder in elk profiel en voor het ene profiel geef je
dtsop als niet-ondersteund en voor het andereaac,ac3. Maak twee conversietaken, elk met één van de twee profielen. Nu zal alleen de taak met het profiel dat de audiocodec niet ondersteunt mislukken en de andere zal uitgevoerd worden.