Given the number of things that DVDPlayerCodec handles, perhaps it might be better to pass the fallback filetype for taglib into the constructor of DVDPlayerCodec from CodecFactory::CreateCodec() and CodecFactory::CreateCodecDemux() ?