コード例 #1
0
ファイル: mpvhandler.cpp プロジェクト: ThreeGe/Baka-MPlayer
void MpvHandler::Seek(int pos, bool relative, bool osd)
{
    if(playState > 0)
    {
        if(relative)
        {
            const QByteArray tmp = (((pos >= 0) ? "+" : QString())+QString::number(pos)).toUtf8();
            if(osd)
            {
                const char *args[] = {"osd-msg", "seek", tmp.constData(), NULL};
                AsyncCommand(args);
            }
            else
            {
                const char *args[] = {"seek", tmp.constData(), NULL};
                AsyncCommand(args);
            }
        }
        else
        {
            const QByteArray tmp = QString::number(pos).toUtf8();
            if(osd)
            {
                const char *args[] = {"osd-msg", "seek", tmp.constData(), "absolute", NULL};
                AsyncCommand(args);
            }
            else
            {
                const char *args[] = {"seek", tmp.constData(), "absolute", NULL};
                AsyncCommand(args);
            }
        }
    }
}
コード例 #2
0
ファイル: mpvhandler.cpp プロジェクト: ThreeGe/Baka-MPlayer
void MpvHandler::Mute(bool m)
{
    if(playState > 0)
    {
        const char *args[] = {"set", "mute", m ? "yes" : "no", NULL};
        AsyncCommand(args);
    }
    else
        setMute(m);
}
コード例 #3
0
ファイル: mpvhandler.cpp プロジェクト: ThreeGe/Baka-MPlayer
void MpvHandler::PlayPause(QString fileIfStopped)
{
    if(playState < 0) // not playing, play plays the selected playlist file
        PlayFile(fileIfStopped);
    else
    {
        const char *args[] = {"cycle", "pause", NULL};
        AsyncCommand(args);
    }
}
コード例 #4
0
ファイル: mpvhandler.cpp プロジェクト: ThreeGe/Baka-MPlayer
void MpvHandler::Command(const QStringList &strlist)
{
    // convert input string into char array
    int len = strlist.length();
    char **data = new char*[len+1];
    for(int i = 0; i < len; ++i)
    {
        data[i] = new char[strlist[i].length()+1];
        memcpy(data[i], QByteArray(strlist[i].toUtf8()).begin(), strlist[i].length()+1);
    }
    data[len] = NULL;
    AsyncCommand(const_cast<const char**>(data));
    for(int i = 0; i < len; ++i)
        delete [] data[i];
    delete [] data;

//    const QByteArray tmp = str.toUtf8();
//    mpv_command_string(mpv, tmp.constData());
}
コード例 #5
0
ファイル: mpvhandler.cpp プロジェクト: jqs7/Baka-MPlayer
void MpvHandler::Volume(int level, bool osd)
{
    if(level > 100) level = 100;
    else if(level < 0) level = 0;

    if(playState > 0)
    {
        if(osd)
        {
            QString levelStr = QString::number(level);
            const QByteArray tmp = levelStr.toUtf8();
            const char *args[] = {"set", "volume", tmp.constData(), NULL};
            AsyncCommand(args);
            ShowText(tr("Volume: %0%").arg(levelStr));
        }
        else
        {
            double v = level;
            mpv_set_property_async(mpv, 0, "volume", MPV_FORMAT_DOUBLE, &v);
        }
    }
    else
        setVolume(level);
}
コード例 #6
0
ファイル: mpvhandler.cpp プロジェクト: ThreeGe/Baka-MPlayer
void MpvHandler::SubtitleScale(double scale, bool relative)
{
    const QByteArray tmp = QString::number(scale).toUtf8();
    const char *args[] = {relative?"add":"set", "sub-scale", tmp.constData(), NULL};
    AsyncCommand(args);
}
コード例 #7
0
ファイル: mpvhandler.cpp プロジェクト: ThreeGe/Baka-MPlayer
void MpvHandler::ShowSubtitles(bool b)
{
    const char *args[] = {"set", "sub-visibility", b ? "yes" : "no", NULL};
    AsyncCommand(args);
}
コード例 #8
0
ファイル: mpvhandler.cpp プロジェクト: ThreeGe/Baka-MPlayer
void MpvHandler::Screenshot(bool withSubs)
{
    const char *args[] = {"screenshot", (withSubs ? "subtitles" : "video"), NULL};
    AsyncCommand(args);
}
コード例 #9
0
ファイル: mpvhandler.cpp プロジェクト: ThreeGe/Baka-MPlayer
void MpvHandler::Sid(int sid)
{
    const QByteArray tmp = QString::number(sid).toUtf8();
    const char *args[] = {"set", "sid", tmp.constData(), NULL};
    AsyncCommand(args);
}
コード例 #10
0
ファイル: mpvhandler.cpp プロジェクト: ThreeGe/Baka-MPlayer
void MpvHandler::Aspect(QString aspect)
{
    const QByteArray tmp = aspect.toUtf8();
    const char *args[] = {"set", "video-aspect", tmp.constData(), NULL};
    AsyncCommand(args);
}
コード例 #11
0
ファイル: mpvhandler.cpp プロジェクト: ThreeGe/Baka-MPlayer
void MpvHandler::PreviousChapter()
{
    const char *args[] = {"add", "chapter", "-1", NULL};
    AsyncCommand(args);
}
コード例 #12
0
ファイル: mpvhandler.cpp プロジェクト: ThreeGe/Baka-MPlayer
void MpvHandler::NextChapter()
{
    const char *args[] = {"add", "chapter", "1", NULL};
    AsyncCommand(args);
}
コード例 #13
0
ファイル: mpvhandler.cpp プロジェクト: ThreeGe/Baka-MPlayer
void MpvHandler::FrameBackStep()
{
    const char *args[] = {"frame_back_step", NULL};
    AsyncCommand(args);
}
コード例 #14
0
ファイル: mpvhandler.cpp プロジェクト: ThreeGe/Baka-MPlayer
void MpvHandler::RemoveOverlay(int id)
{
    QByteArray tmp = QString::number(id).toUtf8();
    const char *args[] = {"overlay_remove", tmp.constData(), NULL};
    AsyncCommand(args);
}