Announcement
Collapse
No announcement yet.
Kubuntu video wallpaper
Collapse
This topic is closed.
X
X
-
Quick SDDM Video theme
Linking to https://www.kubuntuforums.net/showth...l=1#post371491
Copying
'Maledives' theme from /usr/share/sddm/themes/maldives/ to ~/sddm/mysddm/.
Edit:
metadata.desktop:
Code:[SddmGreeterTheme] Name=MySDDM Description=My Theme Author=Me Copyright=(c) 2015 Me License=CC-BY-SA Type=sddm-theme Version=0.1 Website=https://www.kubuntuforums.net/showthread.php?67703-Kubuntu-video-wallpaper Screenshot=preview.jpg MainScript=Main.qml ConfigFile=theme.conf TranslationsDirectory=translations Email= Theme-Id=mysddm Theme-API=2.0
Code:/*************************************************************************** * Copyright (c) 2013 Abdurrahman AVCI <abdurrahmanavci@gmail.com> * * Permission is hereby granted, free of charge, to any person * obtaining a copy of this software and associated documentation * files (the "Software"), to deal in the Software without restriction, * including without limitation the rights to use, copy, modify, merge, * publish, distribute, sublicense, and/or sell copies of the Software, * and to permit persons to whom the Software is furnished to do so, * subject to the following conditions: * * The above copyright notice and this permission notice shall be included * in all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE * OR OTHER DEALINGS IN THE SOFTWARE. * ***************************************************************************/ import QtQuick 2.0 import SddmComponents 2.0 import QtMultimedia 5.0 Rectangle { id: container width: 640 height: 480 TextConstants { id: textConstants } Connections { target: sddm onLoginSucceeded: { errorMessage.color = "steelblue" errorMessage.text = textConstants.loginSucceeded } onLoginFailed: { errorMessage.color = "red" errorMessage.text = textConstants.loginFailed } } property int stage MediaPlayer { id: mediaplayer autoPlay: true loops: MediaPlayer.Infinite source: "video/Beach.avi" } VideoOutput { fillMode: VideoOutput.PreserveAspectCrop anchors.fill: parent source: mediaplayer } Rectangle { property variant geometry: screenModel.geometry(screenModel.primary) x: geometry.x; y: geometry.y; width: geometry.width; height: geometry.height color: "transparent" Clock { id: clock anchors.margins: 5 anchors.top: parent.top; anchors.right: parent.right color: "white" timeFont.family: "Oxygen" } Image { id: rectangle anchors.centerIn: parent width: Math.max(320, mainColumn.implicitWidth + 50) height: Math.max(320, mainColumn.implicitHeight + 50) source: "rectangle.png" Column { id: mainColumn anchors.centerIn: parent spacing: 12 Text { anchors.horizontalCenter: parent.horizontalCenter color: "black" verticalAlignment: Text.AlignVCenter height: text.implicitHeight width: parent.width text: textConstants.welcomeText.arg(sddm.hostName) wrapMode: Text.WordWrap font.pixelSize: 24 elide: Text.ElideRight horizontalAlignment: Text.AlignHCenter } Column { width: parent.width spacing: 4 Text { id: lblName width: parent.width text: textConstants.userName font.bold: true font.pixelSize: 12 } TextBox { id: name width: parent.width; height: 30 text: userModel.lastUser font.pixelSize: 14 KeyNavigation.backtab: rebootButton; KeyNavigation.tab: password Keys.onPressed: { if (event.key === Qt.Key_Return || event.key === Qt.Key_Enter) { sddm.login(name.text, password.text, session.index) event.accepted = true } } } } Column { width: parent.width spacing : 4 Text { id: lblPassword width: parent.width text: textConstants.password font.bold: true font.pixelSize: 12 } PasswordBox { id: password width: parent.width; height: 30 font.pixelSize: 14 KeyNavigation.backtab: name; KeyNavigation.tab: session Keys.onPressed: { if (event.key === Qt.Key_Return || event.key === Qt.Key_Enter) { sddm.login(name.text, password.text, session.index) event.accepted = true } } } } Row { spacing: 4 width: parent.width / 2 z: 100 Column { z: 100 width: parent.width * 1.3 spacing : 4 anchors.bottom: parent.bottom Text { id: lblSession width: parent.width text: textConstants.session wrapMode: TextEdit.WordWrap font.bold: true font.pixelSize: 12 } ComboBox { id: session width: parent.width; height: 30 font.pixelSize: 14 arrowIcon: "angle-down.png" model: sessionModel index: sessionModel.lastIndex KeyNavigation.backtab: password; KeyNavigation.tab: layoutBox } } Column { z: 101 width: parent.width * 0.7 spacing : 4 anchors.bottom: parent.bottom Text { id: lblLayout width: parent.width text: textConstants.layout wrapMode: TextEdit.WordWrap font.bold: true font.pixelSize: 12 } LayoutBox { id: layoutBox width: parent.width; height: 30 font.pixelSize: 14 arrowIcon: "angle-down.png" KeyNavigation.backtab: session; KeyNavigation.tab: loginButton } } } Column { width: parent.width Text { id: errorMessage anchors.horizontalCenter: parent.horizontalCenter text: textConstants.prompt font.pixelSize: 10 } } Row { spacing: 4 anchors.horizontalCenter: parent.horizontalCenter property int btnWidth: Math.max(loginButton.implicitWidth, shutdownButton.implicitWidth, rebootButton.implicitWidth, 80) + 8 Button { id: loginButton text: textConstants.login width: parent.btnWidth onClicked: sddm.login(name.text, password.text, session.index) KeyNavigation.backtab: layoutBox; KeyNavigation.tab: shutdownButton } Button { id: shutdownButton text: textConstants.shutdown width: parent.btnWidth onClicked: sddm.powerOff() KeyNavigation.backtab: loginButton; KeyNavigation.tab: rebootButton } Button { id: rebootButton text: textConstants.reboot width: parent.btnWidth onClicked: sddm.reboot() KeyNavigation.backtab: shutdownButton; KeyNavigation.tab: name } } } } } Component.onCompleted: { if (name.text == "") name.focus = true else password.focus = true } }
preview.jpg
video sub directory
Testing:
Code:sddm-greeter --test-mode --theme /home/oneline/sddm/mysddm
Seems to work
Installing & Testing2
Copying /mysddm/ to /usr/share/sddm/themes/mysddm/
KDE System Settings > Startup and Shutdown > Login Screen (SDDM)
Reboot
Log in
Seems to work (at here).Last edited by OneLine; May 01, 2015, 04:08 PM.
- Top
- Bottom
Leave a comment:
-
KDE video splash
Earlier: https://www.kubuntuforums.net/showth...l=1#post370231
Making org.me.video.desktop:
Metadata:
Code:[Desktop Entry] Comment=Video Desktop Design Comment[x-test]=xxVideo Desktop Designxx Encoding=UTF-8 Keywords=Desktop;Workspace;Appearance;Look and Feel;Logout;Lock;Suspend;Shutdown;Hibernate; Keywords[x-test]=xxDesktopxx;xxWorkspacexx;xxAppearancexx;xxLook and Feelxx;xxLogoutxx;xxLockxx;xxSuspendxx;xxShutdownxx;xxHibernatexx; Name=Video Splash Type=Service X-KDE-ServiceTypes=Plasma/LookAndFeel X-KDE-ParentApp= X-KDE-PluginInfo-License=GPLv2+ X-KDE-PluginInfo-Name=org.me.video.desktop X-KDE-PluginInfo-Version=0.1 X-Plasma-MainScript=defaults
Code:/* * This is based on the standard breeze splash ! * * Copyright 2014 Marco Martin <mart@kde.org> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2, * or (at your option) any later version, as published by the Free * Software Foundation * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details * * You should have received a copy of the GNU General Public * License along with this program; if not, write to the * Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ import QtQuick 2.1 import QtMultimedia 5.0 Rectangle { id: root property int stage MediaPlayer { id: mediaplayer autoPlay: true loops: MediaPlayer.Infinite source: "video/Beach.avi" } VideoOutput { fillMode: VideoOutput.PreserveAspectCrop anchors.fill: parent source: mediaplayer } Rectangle { id: bottomRect width: parent.width y: 2/3 * parent.height height: 50 color: "#4C000000" Rectangle { radius: 3 color: "darkgrey" anchors.centerIn: parent height: 8 width: height*32 Rectangle { radius: 3 anchors { left: parent.left top: parent.top bottom: parent.bottom } width: (parent.width / 6) * (stage - 1) color: "steelblue" Behavior on width { PropertyAnimation { duration: 250 easing.type: Easing.InOutQuad } } } } } }
Installing:
Code:plasmapkg2 -t lookandfeel -i org.me.video.desktop
Testing:
Direct: http://youtu.be/FL1X1X5q05Q
Seems to work (at here).Last edited by OneLine; Apr 11, 2015, 12:54 PM.
- Top
- Bottom
Leave a comment:
-
that is so cool ,,,,,,,I just did a video wallpaper of a screen capture of the desktop ,,,,,,,,he he ,,,,looks like somebody is doing things remotely
burns a lot of CPU,,,,,,,but it is a 1080p .mp4 though,,,,,,,,,so
VINNY
- Top
- Bottom
Leave a comment:
-
Kubuntu video wallpaper
(With the Kubuntu 15.04 beta)
With the KDE4 there is the 'DreamDesktop': http://kde-apps.org/content/show.php...content=156787
More of the KDE video wallpapers: https://forum.kde.org/viewtopic.php?f=83&t=119463
With the Plasma5 the video wallpaper is easy to make with the qml mediaplayer: http://doc.qt.io/qt-5/qml-qtmultimed...r.html#details .
Making directory:
~/.local/share/plasma/wallpapers/org.kde.beach/contents/ui/
Making files:
~/.local/share/plasma/wallpapers/org.kde.beach/metadata.desktop
Code:[Desktop Entry] Encoding=UTF-8 Name=Beach Name[x-test]=xxBeachxx Type=Service ServiceTypes=Plasma/DeclarativeWallpaper Icon=preferences-desktop-wallpaper X-Plasma-MainScript=ui/main.qml X-KDE-PluginInfo-Name=org.kde.beach X-KDE-PluginInfo-EnabledByDefault=true
~/.local/share/plasma/wallpapers/org.kde.beach/contents/ui/main.qml
Code:import QtQuick 2.0 import QtMultimedia 5.0 Item { MediaPlayer { id: mediaplayer autoPlay: true loops: MediaPlayer.Infinite source: "/home/online/Videos/Beach.avi" } VideoOutput { fillMode: VideoOutput.PreserveAspectCrop anchors.fill: parent source: mediaplayer } }
This should work as it is - if it doesn't try with the qmlscene to get the error messages: https://www.kubuntuforums.net/showth...ma-qml-widgets .
At here: http://pastebin.com/nsmvE7Uw
There is a bug report: https://bugreports.qt.io/browse/QTBUG-40183 The gstreamer0.10-ffmpeg plugin may help, here it does. Either from the http://gstreamer.freedesktop.org/mod...st-ffmpeg.html or from a PPA ( https://launchpad.net/ubuntu/+ppas?n...mer0.10-ffmpeg ).
Right click the desktop > Desktop setting > Wallpaper Type (Video) > Apply > Ok...
Direct: http://youtu.be/PNu9AoP1V8E
More plasma 5 links: https://www.kubuntuforums.net/showth...ma-qml-widgetsLast edited by OneLine; Mar 29, 2015, 10:16 AM.
Leave a comment: