Ticket #10976: 10976-v1.patch

File 10976-v1.patch, 20.9 KB (added by danielk, 7 years ago)
  • mythtv/bindings/perl/MythTV.pm

    diff --git a/mythtv/bindings/perl/MythTV.pm b/mythtv/bindings/perl/MythTV.pm
    index cb0d055..c6f7fd3 100644
    a b package MythTV; 
    115115# schema version supported in the main code.  We need to check that the schema
    116116# version in the database is as expected by the bindings, which are expected
    117117# to be kept in sync with the main code.
    118     our $SCHEMA_VERSION = "1307";
     118    our $SCHEMA_VERSION = "1308";
    119119
    120120# NUMPROGRAMLINES is defined in mythtv/libs/libmythtv/programinfo.h and is
    121121# the number of items in a ProgramInfo QStringList group used by
  • mythtv/bindings/python/MythTV/static.py

    diff --git a/mythtv/bindings/python/MythTV/static.py b/mythtv/bindings/python/MythTV/static.py
    index 54b5777..9eeb521 100644
    a b Contains any static and global variables for MythTV Python Bindings 
    55"""
    66
    77OWN_VERSION = (0,26,-1,1)
    8 SCHEMA_VERSION = 1307
     8SCHEMA_VERSION = 1308
    99NVSCHEMA_VERSION = 1007
    1010MUSICSCHEMA_VERSION = 1018
    1111PROTO_VERSION = '75'
  • mythtv/libs/libmythbase/mythversion.h

    diff --git a/mythtv/libs/libmythbase/mythversion.h b/mythtv/libs/libmythbase/mythversion.h
    index 6821a26..0b65466 100644
    a b  
    5757 *      mythtv/bindings/php/MythBackend.php
    5858#endif
    5959
    60 #define MYTH_DATABASE_VERSION "1307"
     60#define MYTH_DATABASE_VERSION "1308"
    6161
    6262
    6363 MBASE_PUBLIC  const char *GetMythSourceVersion();
  • mythtv/libs/libmythtv/dbcheck.cpp

    diff --git a/mythtv/libs/libmythtv/dbcheck.cpp b/mythtv/libs/libmythtv/dbcheck.cpp
    index 10e498f..c057554 100644
    a b using namespace std; 
    1616#include "videodbcheck.h" // for 1267
    1717#include "compat.h"
    1818#include "recordingrule.h"
     19#include "videodisplayprofile.h"
    1920
    2021// TODO convert all dates to UTC
    2122
    NULL 
    22772278            return false;
    22782279    }
    22792280
     2281    if (dbver == "1307")
     2282    {
     2283        VideoDisplayProfile::DeleteSampleProfiles(QString());
     2284        if (!UpdateDBVersionNumber("1308", dbver))
     2285            return false;
     2286    }
     2287
     2288
    22802289    return true;
    22812290}
    22822291
  • mythtv/libs/libmythtv/videodisplayprofile.cpp

    diff --git a/mythtv/libs/libmythtv/videodisplayprofile.cpp b/mythtv/libs/libmythtv/videodisplayprofile.cpp
    index 022688e..1f24ace 100644
    a b safe_list_t VideoDisplayProfile::safe_custom; 
    210210priority_map_t VideoDisplayProfile::safe_renderer_priority;
    211211pref_map_t  VideoDisplayProfile::dec_name;
    212212safe_list_t VideoDisplayProfile::safe_decoders;
     213QStringList VideoDisplayProfile::s_sample_profile_names;
     214
    213215
    214216VideoDisplayProfile::VideoDisplayProfile()
    215217    : lock(QMutex::Recursive), last_size(0,0), last_rate(0.0f),
    uint VideoDisplayProfile::GetProfileGroupID(const QString &profilename, 
    829831    return 0;
    830832}
    831833
    832 void VideoDisplayProfile::DeleteProfiles(const QString &hostname)
     834void VideoDisplayProfile::DeleteSampleProfiles(const QString &hostname)
    833835{
    834     MSqlQuery query(MSqlQuery::InitCon());
    835     MSqlQuery query2(MSqlQuery::InitCon());
    836     query.prepare(
    837         "SELECT profilegroupid "
    838         "FROM displayprofilegroups "
    839         "WHERE hostname = :HOST ");
    840     query.bindValue(":HOST", hostname);
    841     if (!query.exec() || !query.isActive())
    842         MythDB::DBError("delete_profiles 1", query);
    843     else
     836    QStringList::const_iterator it = s_sample_profile_names.begin();
     837    for (; it != s_sample_profile_names.end(); ++it)
    844838    {
    845         while (query.next())
    846         {
    847             query2.prepare("DELETE FROM displayprofiles "
    848                            "WHERE profilegroupid = :PROFID");
    849             query2.bindValue(":PROFID", query.value(0).toUInt());
    850             if (!query2.exec())
    851                 MythDB::DBError("delete_profiles 2", query2);
    852         }
     839        DeleteProfileGroup(*it, hostname);
    853840    }
    854     query.prepare("DELETE FROM displayprofilegroups WHERE hostname = :HOST");
    855     query.bindValue(":HOST", hostname);
    856     if (!query.exec() || !query.isActive())
    857         MythDB::DBError("delete_profiles 3", query);
    858841}
    859842
    860843//displayprofilegroups pk(name, hostname), uk(profilegroupid)
    bool VideoDisplayProfile::DeleteProfileGroup( 
    974957    MSqlQuery query(MSqlQuery::InitCon());
    975958    MSqlQuery query2(MSqlQuery::InitCon());
    976959
    977     query.prepare(
    978         "SELECT profilegroupid "
    979         "FROM displayprofilegroups "
    980         "WHERE name     = :NAME AND "
    981         "      hostname = :HOST ");
    982 
     960    if (hostname.isEmpty())
     961    {
     962        query.prepare(
     963            "SELECT profilegroupid "
     964            "FROM displayprofilegroups "
     965            "WHERE name     = :NAME");
     966    }
     967    else
     968    {
     969        query.prepare(
     970            "SELECT profilegroupid "
     971            "FROM displayprofilegroups "
     972            "WHERE name     = :NAME AND "
     973            "      hostname = :HOST ");
     974        query.bindValue(":HOST", hostname);
     975    }
    983976    query.bindValue(":NAME", groupname);
    984     query.bindValue(":HOST", hostname);
    985977
    986978    if (!query.exec() || !query.isActive())
    987979    {
    988980        MythDB::DBError("delete_profile_group 1", query);
    989         ok = false;
     981        return false;
    990982    }
    991     else
     983
     984    while (query.next())
    992985    {
    993         while (query.next())
     986        query2.prepare("DELETE FROM displayprofiles "
     987                       "WHERE profilegroupid = :PROFID");
     988        query2.bindValue(":PROFID", query.value(0).toUInt());
     989        if (!query2.exec())
    994990        {
    995             query2.prepare("DELETE FROM displayprofiles "
    996                            "WHERE profilegroupid = :PROFID");
    997             query2.bindValue(":PROFID", query.value(0).toUInt());
    998             if (!query2.exec())
    999             {
    1000                 MythDB::DBError("delete_profile_group 2", query2);
    1001                 ok = false;
    1002             }
     991            MythDB::DBError("delete_profile_group 2", query2);
     992            ok = false;
    1003993        }
    1004994    }
    1005995
    1006     query.prepare(
    1007         "DELETE FROM displayprofilegroups "
    1008         "WHERE name     = :NAME AND "
    1009         "      hostname = :HOST");
    1010 
     996    if (hostname.isEmpty())
     997    {
     998        query.prepare(
     999            "DELETE FROM displayprofilegroups "
     1000            "WHERE name     = :NAME");
     1001    }
     1002    else
     1003    {
     1004        query.prepare(
     1005            "DELETE FROM displayprofilegroups "
     1006            "WHERE name     = :NAME AND "
     1007            "      hostname = :HOST");
     1008        query.bindValue(":HOST", hostname);
     1009    }
    10111010    query.bindValue(":NAME", groupname);
    1012     query.bindValue(":HOST", hostname);
    10131011
    10141012    if (!query.exec())
    10151013    {
    void VideoDisplayProfile::CreateNewProfiles(const QString &hostname) 
    10251023    (void) QObject::tr("High Quality", "Sample: high quality");
    10261024    DeleteProfileGroup("High Quality", hostname);
    10271025    uint groupid = CreateProfileGroup("High Quality", hostname);
    1028     CreateProfile(groupid, 1, ">=", 1920, 1080, "", 0, 0,
    1029                   "ffmpeg", 2, true, "xv-blit", "softblend", true,
     1026    CreateProfile(groupid, 1, ">", 0, 0, "", 0, 0,
     1027                  "ffmpeg", 2, false, "vdpau", "vdpau", true,
     1028                  "vdpauadvanceddoublerate", "vdpauadvanced",
     1029                  "vdpaucolorspace=auto");
     1030    CreateProfile(groupid, 2, ">=", 1920, 1080, "", 0, 0,
     1031                  "ffmpeg", 2, false, "xv-blit", "softblend", true,
    10301032                  "linearblend", "linearblend", "");
    1031     CreateProfile(groupid, 2, ">", 0, 0, "", 0, 0,
    1032                   "ffmpeg", 1, true, "xv-blit", "softblend", true,
     1033    CreateProfile(groupid, 3, ">", 0, 0, "", 0, 0,
     1034                  "ffmpeg", 2, false, "xv-blit", "softblend", true,
    10331035                  "yadifdoubleprocessdeint", "yadifdeint", "");
    1034     CreateProfile(groupid, 3, ">=", 1920, 1080, "", 0, 0,
    1035                   "ffmpeg", 2, true, "quartz-blit", "softblend", true,
     1036    CreateProfile(groupid, 4, ">=", 1920, 1080, "", 0, 0,
     1037                  "ffmpeg", 2, false, "quartz-blit", "softblend", true,
    10361038                  "linearblend", "linearblend", "");
    1037     CreateProfile(groupid, 4, ">", 0, 0, "", 0, 0,
    1038                   "ffmpeg", 1, true, "quartz-blit", "softblend", true,
     1039    CreateProfile(groupid, 5, ">", 0, 0, "", 0, 0,
     1040                  "ffmpeg", 2, false, "quartz-blit", "softblend", true,
    10391041                  "yadifdoubleprocessdeint", "yadifdeint", "");
    10401042
    10411043    (void) QObject::tr("Normal", "Sample: average quality");
    10421044    DeleteProfileGroup("Normal", hostname);
    10431045    groupid = CreateProfileGroup("Normal", hostname);
    1044     CreateProfile(groupid, 1, ">=", 1280, 720, "", 0, 0,
    1045                   "ffmpeg", 1, true, "xv-blit", "softblend", false,
    1046                   "linearblend", "linearblend", "");
     1046    CreateProfile(groupid, 1, ">=", 0, 720, "", 0, 0,
     1047                  "vdpau", 1, false, "vdpau", "vdpau", true,
     1048                  "vdpaubasicdoublerate", "vdpaubasic",
     1049                  "vdpaucolorspace=auto");
    10471050    CreateProfile(groupid, 2, ">", 0, 0, "", 0, 0,
    1048                   "ffmpeg", 1, true, "xv-blit", "softblend", true,
     1051                  "vdpau", 1, false, "vdpau", "vdpau", true,
     1052                  "vdpauadvanceddoublerate", "vdpauadvanced",
     1053                  "vdpaucolorspace=auto");
     1054    CreateProfile(groupid, 3, ">", 0, 720, "", 0, 0,
     1055                  "ffmpeg", 2, true, "vdpau", "vdpau", true,
     1056                  "vdpaubasicdoublerate", "vdpaubasic",
     1057                  "vdpaucolorspace=auto");
     1058    CreateProfile(groupid, 4, ">", 0, 0, "", 0, 0,
     1059                  "ffmpeg", 2, false, "vdpau", "vdpau", true,
     1060                  "vdpauadvanceddoublerate", "vdpauadvanced",
     1061                  "vdpaucolorspace=auto");
     1062    CreateProfile(groupid, 5, ">=", 1280, 720, "", 0, 0,
     1063                  "ffmpeg", 2, true, "xv-blit", "softblend", false,
     1064                  "linearblend", "linearblend", "");
     1065    CreateProfile(groupid, 6, ">", 0, 0, "", 0, 0,
     1066                  "ffmpeg", 2, false, "xv-blit", "softblend", true,
    10491067                  "greedyhdoubleprocessdeint", "kerneldeint", "");
    1050     CreateProfile(groupid, 3, ">=", 1280, 720, "", 0, 0,
    1051                   "ffmpeg", 1, true, "quartz-blit", "softblend", false,
     1068    CreateProfile(groupid, 7, ">=", 1280, 720, "", 0, 0,
     1069                  "ffmpeg", 2, true, "quartz-blit", "softblend", false,
    10521070                  "linearblend", "linearblend", "");
    1053     CreateProfile(groupid, 4, ">", 0, 0, "", 0, 0,
    1054                   "ffmpeg", 1, true, "quartz-blit", "softblend", true,
     1071    CreateProfile(groupid, 8, ">", 0, 0, "", 0, 0,
     1072                  "ffmpeg", 1, false, "quartz-blit", "softblend", true,
    10551073                  "greedyhdoubleprocessdeint", "kerneldeint", "");
    10561074
    10571075    (void) QObject::tr("Slim", "Sample: low CPU usage");
    10581076    DeleteProfileGroup("Slim", hostname);
    10591077    groupid = CreateProfileGroup("Slim", hostname);
    1060     CreateProfile(groupid, 1, ">=", 1280, 720, "", 0, 0,
     1078    CreateProfile(groupid, 1, ">", 0, 0, "", 0, 0,
     1079                  "vdpau", 1, true, "vdpau", "vdpau", true,
     1080                  "vdpaubobdeint", "vdpauonefield",
     1081                  "vdpauskipchroma,vdpaucolorspace=auto");
     1082    CreateProfile(groupid, 2, ">", 0, 0, "", 0, 0,
     1083                  "ffmpeg", 1, true, "vdpau", "vdpau", true,
     1084                  "vdpaubobdeint", "vdpauonefield",
     1085                  "vdpaucolorspace=auto");
     1086    CreateProfile(groupid, 3, ">=", 1280, 720, "", 0, 0,
    10611087                  "ffmpeg", 1, true, "xv-blit", "softblend", false,
    10621088                  "onefield", "onefield", "");
    1063     CreateProfile(groupid, 2, ">", 0, 0, "", 0, 0,
     1089    CreateProfile(groupid, 4, ">", 0, 0, "", 0, 0,
    10641090                  "ffmpeg", 1, true, "xv-blit", "softblend", false,
    10651091                  "linearblend", "linearblend", "");
    1066     CreateProfile(groupid, 3, ">=", 1280, 720, "", 0, 0,
     1092    CreateProfile(groupid, 5, ">=", 1280, 720, "", 0, 0,
    10671093                  "ffmpeg", 1, true, "quartz-blit", "softblend", false,
    10681094                  "onefield", "onefield", "");
    1069     CreateProfile(groupid, 4, ">", 0, 0, "", 0, 0,
     1095    CreateProfile(groupid, 6, ">", 0, 0, "", 0, 0,
    10701096                  "ffmpeg", 1, true, "quartz-blit", "softblend", false,
    10711097                  "linearblend", "linearblend", "");
    10721098}
    void VideoDisplayProfile::CreateVDPAUProfiles(const QString &hostname) 
    10771103    DeleteProfileGroup("VDPAU High Quality", hostname);
    10781104    uint groupid = CreateProfileGroup("VDPAU High Quality", hostname);
    10791105    CreateProfile(groupid, 1, ">", 0, 0, "", 0, 0,
    1080                   "vdpau", 1, true, "vdpau", "vdpau", true,
     1106                  "vdpau", 1, false, "vdpau", "vdpau", true,
    10811107                  "vdpauadvanceddoublerate", "vdpauadvanced",
    10821108                  "vdpaucolorspace=auto");
     1109    CreateProfile(groupid, 2, ">", 0, 0, "", 0, 0,
     1110                  "ffmpeg", 2, false, "vdpau", "vdpau", true,
     1111                  "vdpauadvanceddoublerate", "vdpauadvanced",
     1112                  "vdpaucolorspace=auto");
     1113    CreateProfile(groupid, 3, ">", 0, 0, "", 0, 0,
     1114                  "ffmpeg", 2, false, "opengl", "opengl2", true,
     1115                  "greedyhdoubleprocessdeint", "greedyhdeint",
     1116                  "");
    10831117
    10841118    (void) QObject::tr("VDPAU Normal", "Sample: VDPAU average quality");
    10851119    DeleteProfileGroup("VDPAU Normal", hostname);
    10861120    groupid = CreateProfileGroup("VDPAU Normal", hostname);
    10871121    CreateProfile(groupid, 1, ">=", 0, 720, "", 0, 0,
    1088                   "vdpau", 1, true, "vdpau", "vdpau", true,
     1122                  "vdpau", 1, false, "vdpau", "vdpau", true,
    10891123                  "vdpaubasicdoublerate", "vdpaubasic",
    10901124                  "vdpaucolorspace=auto");
    10911125    CreateProfile(groupid, 2, ">", 0, 0, "", 0, 0,
    1092                   "vdpau", 1, true, "vdpau", "vdpau", true,
     1126                  "vdpau", 1, false, "vdpau", "vdpau", true,
     1127                  "vdpauadvanceddoublerate", "vdpauadvanced",
     1128                  "vdpaucolorspace=auto");
     1129    CreateProfile(groupid, 3, ">", 0, 720, "", 0, 0,
     1130                  "ffmpeg", 2, false, "vdpau", "vdpau", true,
     1131                  "vdpaubasicdoublerate", "vdpaubasic",
     1132                  "vdpaucolorspace=auto");
     1133    CreateProfile(groupid, 4, ">", 0, 0, "", 0, 0,
     1134                  "ffmpeg", 2, false, "vdpau", "vdpau", true,
    10931135                  "vdpauadvanceddoublerate", "vdpauadvanced",
    10941136                  "vdpaucolorspace=auto");
     1137    CreateProfile(groupid, 5, ">", 0, 0, "", 0, 0,
     1138                  "ffmpeg", 2, false, "opengl", "opengl2", true,
     1139                  "greedyhdoubleprocessdeint", "greedyhdeint",
     1140                  "");
    10951141
    10961142    (void) QObject::tr("VDPAU Slim", "Sample: VDPAU low power GPU");
    10971143    DeleteProfileGroup("VDPAU Slim", hostname);
    void VideoDisplayProfile::CreateVDPAUProfiles(const QString &hostname) 
    11001146                  "vdpau", 1, true, "vdpau", "vdpau", true,
    11011147                  "vdpaubobdeint", "vdpauonefield",
    11021148                  "vdpauskipchroma,vdpaucolorspace=auto");
     1149    CreateProfile(groupid, 2, ">", 0, 0, "", 0, 0,
     1150                  "ffmpeg", 2, true, "vdpau", "vdpau", true,
     1151                  "vdpaubobdeint", "vdpauonefield",
     1152                  "vdpaucolorspace=auto");
     1153    CreateProfile(groupid, 3, ">", 0, 0, "", 0, 0,
     1154                  "ffmpeg", 3, true, "xv-blit", "softblend", true,
     1155                  "linearblend", "linearblend", "");
    11031156}
    11041157
    11051158void VideoDisplayProfile::CreateVDAProfiles(const QString &hostname)
    void VideoDisplayProfile::CreateVAAPIProfiles(const QString &hostname) 
    11831236                  "");
    11841237}
    11851238
    1186 void VideoDisplayProfile::CreateProfiles(const QString &hostname)
     1239void VideoDisplayProfile::CreateSampleProfiles(const QString &hostname)
    11871240{
    1188     CreateNewProfiles(hostname);
     1241    QStringList profiles = VideoDisplayProfile::GetProfiles(hostname);
     1242
     1243    if (!profiles.contains("Normal") &&
     1244        !profiles.contains("High Quality") &&
     1245        !profiles.contains("Slim"))
     1246    {
     1247        VideoDisplayProfile::CreateNewProfiles(hostname);
     1248    }
     1249
     1250#ifdef USING_VDPAU
     1251    if (!profiles.contains("VDPAU Normal") &&
     1252        !profiles.contains("VDPAU High Quality") &&
     1253        !profiles.contains("VDPAU Slim"))
     1254    {
     1255        VideoDisplayProfile::CreateVDPAUProfiles(hostname);
     1256    }
     1257#endif
     1258
     1259#if defined(Q_OS_MACX)
     1260    if (VDALibrary::GetVDALibrary() != NULL)
     1261    {
     1262        if (!profiles.contains("VDA Normal") &&
     1263            !profiles.contains("VDA High Quality") &&
     1264            !profiles.contains("VDA Slim"))
     1265        {
     1266            VideoDisplayProfile::CreateVDAProfiles(hostname);
     1267        }
     1268    }
     1269#endif
     1270
     1271#ifdef USING_OPENGL_VIDEO
     1272    if (!profiles.contains("OpenGL Normal") &&
     1273        !profiles.contains("OpenGL High Quality") &&
     1274        !profiles.contains("OpenGL Slim"))
     1275    {
     1276        VideoDisplayProfile::CreateOpenGLProfiles(hostname);
     1277    }
     1278#endif
     1279
     1280#ifdef USING_GLVAAPI
     1281    if (!profiles.contains("VAAPI Normal"))
     1282    {
     1283        VideoDisplayProfile::CreateVAAPIProfiles(hostname);
     1284    }
     1285#endif
    11891286}
    11901287
    11911288QStringList VideoDisplayProfile::GetVideoRenderers(const QString &decoder)
    void VideoDisplayProfile::init_statics(void) 
    15451642        LOG(VB_PLAYBACK, LOG_INFO, LOC +
    15461643            QString("decoder<->render support: %1%2")
    15471644                .arg(decoder, -12).arg(GetVideoRenderers(decoder).join(" ")));
     1645
     1646    s_sample_profile_names += "High Quality";
     1647    s_sample_profile_names += "Normal";
     1648    s_sample_profile_names += "Slim";
     1649
     1650    s_sample_profile_names += "VDPAU High Quality";
     1651    s_sample_profile_names += "VDPAU Normal";
     1652    s_sample_profile_names += "VDPAU Slim";
     1653
     1654    s_sample_profile_names += "VDA High Quality";
     1655    s_sample_profile_names += "VDA Normal";
     1656    s_sample_profile_names += "VDA Slim";
     1657
     1658    s_sample_profile_names += "OpenGL High Quality";
     1659    s_sample_profile_names += "OpenGL Normal";
     1660    s_sample_profile_names += "OpenGL Slim";
     1661
     1662    s_sample_profile_names += "VAAPI Normal";
    15481663}
  • mythtv/libs/libmythtv/videodisplayprofile.h

    diff --git a/mythtv/libs/libmythtv/videodisplayprofile.h b/mythtv/libs/libmythtv/videodisplayprofile.h
    index 08e49b6..7093354 100644
    a b class MTV_PUBLIC VideoDisplayProfile 
    146146        QString osdrenderer, bool osdfade,
    147147        QString deint0, QString deint1, QString filters);
    148148
    149     static void        DeleteProfiles(const QString &hostname);
    150     static void        CreateProfiles(const QString &hostname);
     149    static void        DeleteSampleProfiles(const QString &hostname);
     150    static void        CreateSampleProfiles(const QString &hostname);
    151151    static void        CreateNewProfiles(const QString &hostname);
    152152    static void        CreateVDPAUProfiles(const QString &hostname);
    153153    static void        CreateVDAProfiles(const QString &hostname);
    class MTV_PUBLIC VideoDisplayProfile 
    203203    static priority_map_t safe_renderer_priority;
    204204    static pref_map_t   dec_name;
    205205    static safe_list_t  safe_decoders;
     206    static QStringList  s_sample_profile_names;
    206207};
    207208
    208209#endif // _VIDEO_DISPLAY_PROFILE_H_
  • mythtv/programs/mythfrontend/globalsettings.cpp

    diff --git a/mythtv/programs/mythfrontend/globalsettings.cpp b/mythtv/programs/mythfrontend/globalsettings.cpp
    index 75fc5ee..211a363 100644
    a b PlaybackProfileConfigs::PlaybackProfileConfigs(const QString &str) : 
    10371037    setLabel(QObject::tr("Playback Profiles") + str);
    10381038
    10391039    QString host = gCoreContext->GetHostName();
     1040    VideoDisplayProfile::CreateSampleProfiles(host);
    10401041    QStringList profiles = VideoDisplayProfile::GetProfiles(host);
    10411042    if (profiles.empty())
    1042     {
    1043         VideoDisplayProfile::CreateProfiles(host);
    1044         profiles = VideoDisplayProfile::GetProfiles(host);
    1045     }
    1046     if (profiles.empty())
    10471043        return;
    10481044
    1049     if (!profiles.contains("Normal") &&
    1050         !profiles.contains("High Quality") &&
    1051         !profiles.contains("Slim"))
    1052     {
    1053         VideoDisplayProfile::CreateNewProfiles(host);
    1054         profiles = VideoDisplayProfile::GetProfiles(host);
    1055     }
    1056 
    1057 #ifdef USING_VDPAU
    1058     if (!profiles.contains("VDPAU Normal") &&
    1059         !profiles.contains("VDPAU High Quality") &&
    1060         !profiles.contains("VDPAU Slim"))
    1061     {
    1062         VideoDisplayProfile::CreateVDPAUProfiles(host);
    1063         profiles = VideoDisplayProfile::GetProfiles(host);
    1064     }
    1065 #endif
    1066 
    1067 #if defined(Q_OS_MACX)
    1068     if (VDALibrary::GetVDALibrary() != NULL)
    1069     {
    1070         if (!profiles.contains("VDA Normal") &&
    1071             !profiles.contains("VDA High Quality") &&
    1072             !profiles.contains("VDA Slim"))
    1073         {
    1074             VideoDisplayProfile::CreateVDAProfiles(host);
    1075             profiles = VideoDisplayProfile::GetProfiles(host);
    1076         }
    1077     }
    1078 #endif
    1079 
    1080 #ifdef USING_OPENGL_VIDEO
    1081     if (!profiles.contains("OpenGL Normal") &&
    1082         !profiles.contains("OpenGL High Quality") &&
    1083         !profiles.contains("OpenGL Slim"))
    1084     {
    1085         VideoDisplayProfile::CreateOpenGLProfiles(host);
    1086         profiles = VideoDisplayProfile::GetProfiles(host);
    1087     }
    1088 #endif
    1089 
    1090 #ifdef USING_GLVAAPI
    1091     if (!profiles.contains("VAAPI Normal"))
    1092     {
    1093         VideoDisplayProfile::CreateVAAPIProfiles(host);
    1094         profiles = VideoDisplayProfile::GetProfiles(host);
    1095     }
    1096 #endif
    1097 
    10981045    QString profile = VideoDisplayProfile::GetDefaultProfileName(host);
    10991046    if (!profiles.contains(profile))
    11001047    {