コード例 #1
0
ファイル: Program.cs プロジェクト: qin-dadie/LiveWallpaper
        private static void ResolveCommand(RenderProtocol protocol)
        {
            switch (protocol.Command)
            {
            case ProtocolDefinition.PlayVideo:
                var playPayload = protocol.GetPayLoad <PlayVideoPayload>();
                foreach (var screenItem in playPayload.Screen)
                {
                    int volume = 0;
                    if (playPayload.AudioScreen == screenItem.ScreenName)
                    {
                        volume = 100;
                    }

                    _allWindows[screenItem.ScreenName].PlayVideo(playPayload.FilePath, playPayload.HardwareDecoding, volume, screenItem.Panscan);
                }
                break;

            case ProtocolDefinition.StopVideo:
                var stopPayload = protocol.GetPayLoad <StopVideoPayload>();
                foreach (var item in stopPayload.Screen)
                {
                    _allWindows[item].StopVideo();
                }
                break;

            case ProtocolDefinition.PauseVideo:
                var pausePayload = protocol.GetPayLoad <PauseVideoPayload>();
                foreach (var item in pausePayload.Screen)
                {
                    _allWindows[item].PauseVideo();
                }
                break;

            case ProtocolDefinition.ResumVideo:
                var resumePayload = protocol.GetPayLoad <ResumeVideoPayload>();
                foreach (var item in resumePayload.Screen)
                {
                    _allWindows[item].ResumeVideo();
                }
                break;

            case ProtocolDefinition.SetAudio:
                var audioPayload = protocol.GetPayLoad <SetAudioPayload>();
                foreach (var item in _allWindows)
                {
                    if (item.Key == audioPayload.AudioScreen)
                    {
                        item.Value.SetVolume(audioPayload.Volume);
                    }
                }
                break;
            }
        }
コード例 #2
0
ファイル: Program.cs プロジェクト: csuffyy/LiveWallpaper
        private static void SendToParent(RenderProtocol renderProtocol)
        {
            var json = JsonSerializer.Serialize(renderProtocol);

            Console.WriteLine(json);
        }