Git Product home page Git Product logo

coslyk / moonplayer Goto Github PK

View Code? Open in Web Editor NEW
611.0 45.0 92.0 8.39 MB

Video player that can play online videos from youtube, bilibili etc.

Home Page: https://coslyk.github.io/moonplayer.html

License: GNU General Public License v3.0

C++ 60.50% Shell 3.45% CMake 3.63% QML 29.10% PowerShell 1.86% Inno Setup 0.96% C 0.35% Batchfile 0.14%
video-player online-video player c-plus-plus qt mpv qml video danmaku

moonplayer's Introduction

MoonPlayer

FOSSA Status

MoonPlayer is an interesting player that lets you to enjoy videos. It can play the video online, download it or just open the local videos.


Homepage

The homepage of MoonPlayer is here: https://coslyk.github.io/moonplayer.html

Here is the development page of this project. For the introduction and usage information, please visit the homepage.

Update log

Installation

Windows / macOS / Linux (AppImage)

Download from GitHub Releases and install it.

Note:

  1. Windows version only support x64.
  2. AppImage version does not support hardware decoding.

Linux (Flatpak)

Install from Flathub: flatpak install flathub com.github.coslyk.MoonPlayer

Linux (Debian)

Add DebianOpt repository, then install with sudo apt install moonplayer.

Linux (ArchLinux, Manjaro)

Add ArchLinuxCN repository, then install with pacman -S moonplayer.

Screenshot

Development

Following packages are essential for compiling MoonPlayer.

On ArchLinux:

    - cmake
    - ffmpeg
    - mpv
    - python
    - qt6-base
    - qt6-declarative
    - qt6-tools
    - wget / curl

On Debian:

For building:
    - build-essential
    - cmake
    - cmake
    - qt6-base-dev
    - qt6-base-private-dev
    - qt6-declarative-dev
    - qt6-declarative-private-dev
    - qt6-tools-dev
    - libmpv-dev
    - libcurl4-openssl-dev
    - libssl-dev
For running:
    - ffmpeg
    - qml6-module-qt-labs-settings
    - qml6-module-qtqml-workerscript
    - qml6-module-qtquick
    - qml6-module-qtquick-controls
    - qml6-module-qtquick-dialogs
    - qml6-module-qtquick-layouts
    - qml6-module-qtquick-templates
    - qml6-module-qtquick-window
    - wget / curl

Other Linux: Please diy.

Download the source code, then run:

mkdir build
cd build
cmake ..
make
sudo make install

Note: MoonPlayer uses Qt's private API, so you may need to re-compile MoonPlayer after Qt is upgraded.

Technology stack

License

GPLv3+

FOSSA Status

moonplayer's People

Contributors

coslyk avatar fossabot avatar varlesh avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

moonplayer's Issues

支持 mpv 后端

mplayer2貌似开发已停滞了,我在 ubuntu15.04 上使用时经常花屏
是否考虑支持 mpv 后端?

ImportError: No module named flvcd_parser

./moonplayer 
Checking another instance...
Initialize settings...
Initialize API for Python...
Initialize language support...
Initialize player...
Initialize mplayer backend...
Initialize playlist...
Initialize webview...
ImportError: No module named flvcd_parser

Distro: Arch Linux
Qt Version: 5.5.0
Moonplayer Version: b9dec4e

Could you maintain an official AUR

Hello,

I wonder if you can maintain an official AUR package for archlinux and arch-based distros users?
For now there was a contributor who built a moonplayer in AUR, but it haven't been updated almost 1 years.

Best regards

编译错误

In file included from ../src/player.cpp:4:0:
../src/playlist.h: In constructor 'Player::Player(QWidget*)':
../src/playlist.h:35:10: error: 'void Playlist::fileSelected(const QString&, const QString&)' is protected
void fileSelected(const QString &file, const QString &danmaku);
^
../src/player.cpp:144:34: error: within this context
connect(playlist, &Playlist::fileSelected, player_core, &PlayerCore::openFile);
^
../src/player.cpp:144:82: error: no matching function for call to 'Player::connect(Playlist*&, void (Playlist::)(const QString&, const QString&), PlayerCore&, void (PlayerCore::)(const QString&, const QString&))'
connect(playlist, &Playlist::fileSelected, player_core, &PlayerCore::openFile);
^
In file included from /usr/include/qt4/QtGui/qwidget.h:47:0,
from /usr/include/qt4/QtGui/QWidget:1,
from ../src/player.h:4,
from ../src/player.cpp:1:
/usr/include/qt4/QtCore/qobject.h:204:17: note: candidate: static bool QObject::connect(const QObject
, const char*, const QObject*, const char*, Qt::ConnectionType)
static bool connect(const QObject sender, const char signal,
^
/usr/include/qt4/QtCore/qobject.h:204:17: note: no known conversion for argument 2 from 'void (Playlist::
)(const QString&, const QString&)' to 'const char
'
/usr/include/qt4/QtCore/qobject.h:217:17: note: candidate: static bool QObject::connect(const QObject*, const QMetaMethod&, const QObject*, const QMetaMethod&, Qt::ConnectionType)
static bool connect(const QObject sender, const QMetaMethod &signal,
^
/usr/include/qt4/QtCore/qobject.h:217:17: note: no known conversion for argument 2 from 'void (Playlist::
)(const QString&, const QString&)' to 'const QMetaMethod&'
/usr/include/qt4/QtCore/qobject.h:337:13: note: candidate: bool QObject::connect(const QObject*, const char*, const char*, Qt::ConnectionType) const
inline bool QObject::connect(const QObject asender, const char asignal,
^
/usr/include/qt4/QtCore/qobject.h:337:13: note: no known conversion for argument 2 from 'void (Playlist::
)(const QString&, const QString&)' to 'const char
'
Makefile:433: recipe for target 'player.o' failed
make: *** [player.o] Error 1
02:55:58: 进程"/usr/bin/make"退出,退出代码 2 。
Error while building/deploying project moonplayer (kit: 桌面)
When executing step "Make"

There is no centent in Online video

Hello,

I have installed Moonplayer, but there is no content when I browse online video. Could you give me a hint to solve this issue?

Regards

最新版的优酷下载有问题

0.59的tudou插件导致播放器无法启动

刚刚升级的0.59版本不能启动播放器 除非删掉土豆插件
Traceback (most recent call last):
File "/usr/share/moonplayer/plugins/plugin_tudou.py", line 6, in
import plugin_youku
ImportError: No module named plugin_youku

0.52版本下优酷还是不能播放

刚刚升级的,在优酷的网站上随便挑了个视频,结果还是像之前几个版本一样。能够找到有几段视频,可是就是不能播放。

Archlinux KDE下播放会将音量调节到最大。

Archlinux KDE下每次播放时会将自动音量调节到最大,请问这是什么问题?另外调节音量会改变系统的音量大小,这样很不好,会影响到其他程序,请修复一下。

fedora下FUZG源无法下载moonplayer

报错如下:
错误:nothing provides mencoder needed by moonplayer-0.49-1.gitbbf096e.fc23.x86_64
(try to add '--allowerasing' to command line to replace conflicting packages)
应该怎么办啊……新手求问。系统是2016/03/15刚更新的。

ffmpeg放置位置

按照作者提示,为了能够自动合并下载的视频,在Linux下需要把ffmpeg放在~/.moonplayer下。

现在我想让每个用户都可以使用这个功能,请问是否可以把ffmpeg放置在系统某个位置?
我试过放在/usr/share/moonplayer下,无法凑效,仍旧提示把ffmpeg放在~/.moonplayer下。

多个问题,希望作者日后慢慢改善

1.可否自动缓冲下一个分段的flv(网速渣,见谅)
2.缓冲设置多少比较适合
3.缓存文件在哪 是否需要手动清理
4.关闭moonplayer,进程mplayer不会自动结束

谢谢~

Archlinux cannot import name list_links

Traceback (most recent call last):
File "/usr/share/moonplayer/plugins/plugin_sina.py", line 3, in
from utils import list_links
ImportError: cannot import name list_links

请问这是什么问题,在另一台Arch linux下却正常

Windows版本无法使用

您好,我在网盘下载了您的windows版本,发现没有相应的可执行程序,编译也不通过,不知道windows版本现在是否不维护了?

GitHub release

Could you release versioned tarballs here on GitHub and add a changelog to the releases so that it can be added to the official repositories of various Linux-based distributions?

无法安装提示没有mencoder

我系统是ubuntu 14.10.
安装的时候出错信息如下:
pro@test19:~$ sudo apt-get install moonplayer
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
有一些软件包无法被安装。如果您用的是 unstable 发行版,这也许是
因为系统无法达到您要求的状态造成的。该版本中可能会有一些您需要的软件
包尚未被创建或是它们已被从新到(Incoming)目录移出。
下列信息可能会对解决问题有所帮助:

下列软件包有未满足的依赖关系:
moonplayer : 依赖: mencoder 但无法安装它
E: 无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系。

更新mesa后,intel vaapi硬解“黑屏”

[demux] Not seekable, but enabling seeking on user request.
libva info: VA-API version 0.40.0
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/i965_drv_video.so
libva info: Found init function __vaDriverInit_0_40
libva info: va_openDriver() returns 0
[vo/vaapi] vaPutSurface(): the requested function is not implemented

mesa版本为 Mesa 17.1.0-devel

输入框无法输入中文

之前的版本还可以,最新版本的编译后,无法正常输入中文,可以复制过去,但是无法输入

v0.76 make 编译报错

make
/usr/bin/uic player.ui -o ui_player.h
/usr/bin/uic playlist.ui -o ui_playlist.h
/usr/bin/uic settingsdialog.ui -o ui_settingsdialog.h
/usr/bin/uic reslibrary.ui -o ui_reslibrary.h
/usr/bin/uic detailview.ui -o ui_detailview.h
/usr/bin/uic cutterbar.ui -o ui_cutterbar.h
/usr/bin/uic classicplayer.ui -o ui_classicplayer.h
/usr/bin/uic selectiondialog.ui -o ui_selectiondialog.h
g++ -c -pipe -O2 -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong -Wall -W -D_REENTRANT -fPIC -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_XML_LIB -DQT_CORE_LIB -I. -isystem /usr/include/python2.7 -isystem /usr/include/qt -isystem /usr/include/qt/QtWidgets -isystem /usr/include/qt/QtGui -isystem /usr/include/qt/QtNetwork -isystem /usr/include/qt/QtXml -isystem /usr/include/qt/QtCore -I. -isystem /usr/include/libdrm -I. -I/usr/lib/qt/mkspecs/linux-g++ -o main.o main.cpp
g++ -c -pipe -O2 -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong -Wall -W -D_REENTRANT -fPIC -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_XML_LIB -DQT_CORE_LIB -I. -isystem /usr/include/python2.7 -isystem /usr/include/qt -isystem /usr/include/qt/QtWidgets -isystem /usr/include/qt/QtGui -isystem /usr/include/qt/QtNetwork -isystem /usr/include/qt/QtXml -isystem /usr/include/qt/QtCore -I. -isystem /usr/include/libdrm -I. -I/usr/lib/qt/mkspecs/linux-g++ -o player.o player.cpp
player.cpp: 在构造函数‘Player::Player(QWidget*)’中:
player.cpp:115:44: 错误:‘you_get_bridge’在此作用域中尚未声明
     menu->addAction(tr("Update you-get"), &you_get_bridge, SLOT(updateYouGet()));
                                            ^~~~~~~~~~~~~~
make: *** [Makefile:851:player.o] 错误 1

you-get版本 you-get 0.4.652

Network Error:0

Network Error:0
Connect refused
操作系统Ubuntu16.04
播放器及you-get都是最新

moonplayer视频播放优酷不定时闪屏

系统环境是ubuntu mate 16.04.2,不知道是什么原因,视频输出xv和opengl都会闪两三下,然后没事了。硬件是amd fx8350+hd7770,自带开源驱动。

parse failed

2017-07-27 21-31-46
就这个情况。所有频道均如此。
不过最近用you-get -p mpv [url]方式播放bilibili也不行,前几天放优酷也不行,昨天you-get 更新了又好了,bilibili用you-get -p mpv还是不行。

不能用啊

在我的fedora24上点击play一直没反应,不知要怎么用

0.59版,无法启动 No module named plugin_youku

Linux Mint 64bit,通过添加PPA安装的moonplayer 0.59,无法启动,提示缺少优酷插件

archxr@U410 ~ $ moonplayer
Checking another instance...
Initialize settings...
Initialize API for Python...
Initialize language support...
Initialize player...
Initialize mplayer backend...
Initialize playlist...
Initialize webview...
Traceback (most recent call last):
File "/usr/share/moonplayer/plugins/plugin_tudou.py", line 6, in
import plugin_youku
ImportError: No module named plugin_youku

iqiyi插件问题

11.15的爱奇艺插件 能搜索 但是播放,下载或是在浏览器打开均出现闪退现象 终端只显示“段错误。”

客户端无权播放

大神,我看1.1.5 最新的发布了打包测试了下 deepin下不行啊,这样上架不了啊。5555

ubuntu下面也有问题。
virtualbox_ubuntu_04_09_2017_10_32_49

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.