LLs Video Player

Rating: 
4.90196
Your rating: None Average: 4.9 (102 votes)

My video player allows for playing back local files (via a built-in file-browser) and remote files (from sites like youtube or rtp or mms streams) 

 

It is based upon the gstreamer engine shipped with Sailfish OS and only supports codecs that are supported by that gstreamer layer.

Current features include:

  • Cover with pause and play function
  • Open local files with file browser (except version 0.6) & video file picker (since version 0.6)
  • Open remote files via url (detects youtube urls and is able to play them)
  • Open URL Page with history of the 10 last played urls (local or remote)
  • Youtube Search Page integrated
  • Timeline with ability to hide/unhide and scroll through media file
  • Show media metadata
  • Registers mimetypes for audio and video files in Sailfish OS automatically (for opening up with xdg-open or via jolla-fileman and others)
  • Can be used from terminal (e.g. harbour-videoPlayer /path/to/local/file) 
  • Subtitle support for *.srt files 
  • Get artist information over Wikipedia
  • Get more videos from same artist on Youtube
  • History support
  • Integrated youtube-dl support  (see supported sites: https://rg3.github.io/youtube-dl/supportedsites.html)
  • TOHKBD shortcuts support
  • Playlist support (Creating, Opening, Saving PLS files)
  • Download Youtube Videos and Audios in different formats

Video demonstrations:

http://www.youtube.com/watch?v=9o4wltgCjTI

http://www.youtube.com/watch?v=hW55lNbFYLo

http://www.youtube.com/watch?v=VkMLeLnyy2E

https://www.youtube.com/watch?v=7mbs3k-UjOw

 

You can find the code here: https://github.com/llelectronics/videoPlayer

Donations can be done via PayPal

Screenshots: 
Application versions: 
AttachmentSizeDate
File harbour-videoplayer-0.1-3.armv7hl.rpm85.28 KB23/05/2018 - 09:49
File harbour-videoplayer-0.2-1.armv7hl.rpm87.86 KB08/01/2014 - 00:39
File harbour-videoplayer-0.3-1.armv7hl.rpm87.87 KB11/01/2014 - 18:15
File harbour-videoplayer-0.3-2.armv7hl.rpm87.89 KB24/01/2014 - 02:26
File harbour-videoplayer-0.3-3.armv7hl.rpm97.37 KB13/02/2014 - 19:37
File harbour-videoplayer-0.3-4.armv7hl.rpm101.31 KB26/02/2014 - 00:42
File harbour-videoplayer-0.4-1.armv7hl.rpm103.64 KB06/03/2014 - 03:35
File harbour-videoplayer-0.5-1.armv7hl.rpm106.48 KB03/04/2014 - 22:04
File harbour-videoplayer-0.6-1.armv7hl.rpm108.46 KB23/10/2014 - 14:59
File harbour-videoplayer-0.7-1.armv7hl.rpm109.2 KB10/11/2014 - 19:23
File harbour-videoplayer-0.7-2.armv7hl.rpm109.27 KB13/11/2014 - 20:26
File harbour-videoplayer-0.7-3.armv7hl.rpm109.49 KB15/11/2014 - 15:55
File harbour-videoplayer-0.7-4.armv7hl.rpm109.78 KB17/11/2014 - 18:35
File harbour-videoplayer-0.7-5.armv7hl.rpm110.56 KB20/11/2014 - 13:53
File harbour-videoplayer-0.7-6.armv7hl.rpm122.5 KB23/11/2014 - 21:55
File harbour-videoplayer-0.7-7.armv7hl.rpm122.45 KB26/11/2014 - 16:28
File harbour-videoplayer-0.8-1.armv7hl.rpm123.59 KB03/02/2015 - 22:41
File harbour-videoplayer-0.8-2.armv7hl.rpm123.63 KB05/02/2015 - 17:53
File harbour-videoplayer-0.9-1.armv7hl.rpm134.39 KB18/02/2015 - 20:49
File harbour-videoplayer-0.9-2.armv7hl.rpm134.47 KB19/02/2015 - 00:23
File harbour-videoplayer-0.9-3.armv7hl.rpm100.85 KB13/05/2015 - 17:52
File harbour-videoplayer-0.9-4.armv7hl.rpm900.08 KB29/05/2015 - 18:44
File harbour-videoplayer-0.9-5.armv7hl.rpm900.33 KB31/07/2015 - 19:23
File harbour-videoplayer-0.9-6.armv7hl.rpm902.68 KB06/08/2015 - 18:55
File harbour-videoplayer-0.9-7.armv7hl.rpm902.54 KB14/08/2015 - 18:54
File harbour-videoplayer-0.9-8.armv7hl.rpm992.91 KB31/08/2015 - 14:04
File harbour-videoplayer-0.9-9.armv7hl.rpm997.66 KB20/10/2015 - 15:12
File harbour-videoplayer-1.0-1.armv7hl.rpm997.69 KB03/12/2015 - 20:13
File harbour-videoplayer-1.1-1.armv7hl.rpm1007.3 KB06/03/2016 - 19:01
File harbour-videoplayer-1.1-1.i486.rpm1015.08 KB06/03/2016 - 19:01
File harbour-videoplayer-1.2-1.armv7hl.rpm1.51 MB19/04/2016 - 18:53
File harbour-videoplayer-1.2-1.i486.rpm1.52 MB19/04/2016 - 18:53
File harbour-videoplayer-1.4-1.armv7hl.rpm1.51 MB29/06/2016 - 14:54
File harbour-videoplayer-1.4-1.i486.rpm1.51 MB29/06/2016 - 14:54
File harbour-videoplayer-1.5-1.armv7hl.rpm1.51 MB08/09/2016 - 19:32
File harbour-videoplayer-1.5-1.i486.rpm1.52 MB08/09/2016 - 19:32
File harbour-videoplayer-1.6-1.armv7hl.rpm1.51 MB03/12/2016 - 16:20
File harbour-videoplayer-1.6-1.i486.rpm1.52 MB03/12/2016 - 16:20
File harbour-videoplayer-1.7-1.armv7hl.rpm1.89 MB12/12/2016 - 21:46
File harbour-videoplayer-1.7-1.i486.rpm1.9 MB12/12/2016 - 21:46
File harbour-videoplayer-1.8-1.armv7hl.rpm1.89 MB09/02/2017 - 16:08
File harbour-videoplayer-1.8-1.i486.rpm1.9 MB09/02/2017 - 16:08
File harbour-videoplayer-1.9-1.i486.rpm1.9 MB11/05/2017 - 18:14
File harbour-videoplayer-1.9-1.armv7hl.rpm1.9 MB11/05/2017 - 18:14
File harbour-videoplayer-1.9.1-1.armv7hl.rpm1.9 MB15/06/2017 - 15:00
File harbour-videoplayer-1.9.1-1.i486.rpm1.9 MB15/06/2017 - 15:00
File harbour-videoplayer-1.9.2-1.i486.rpm1.9 MB16/06/2017 - 13:35
File harbour-videoplayer-1.9.2-1.armv7hl.rpm1.9 MB16/06/2017 - 13:35
File harbour-videoplayer-1.9.2-1.armv7hl.rpm1.9 MB02/11/2022 - 22:51
File harbour-videoplayer-1.9.3-1.armv7hl.rpm2.06 MB22/10/2017 - 20:26
File harbour-videoplayer-1.9.3-1.i486.rpm2.07 MB22/10/2017 - 20:26
File harbour-videoplayer-1.9.4-1.armv7hl.rpm2.07 MB11/11/2017 - 15:07
File harbour-videoplayer-1.9.4-1.i486.rpm2.07 MB11/11/2017 - 15:07
File harbour-videoplayer-1.9.5-1.armv7hl.rpm2.07 MB27/11/2017 - 19:33
File harbour-videoplayer-1.9.5-1.i486.rpm2.08 MB27/11/2017 - 19:33
File harbour-videoplayer-1.9.6-1.armv7hl.rpm2.13 MB17/04/2018 - 19:59
File harbour-videoplayer-1.9.6-1.i486.rpm2.14 MB17/04/2018 - 19:59
File harbour-videoplayer-1.9.7-1.armv7hl.rpm2.18 MB08/06/2018 - 17:32
File harbour-videoplayer-1.9.7-1.i486.rpm2.19 MB08/06/2018 - 17:32
File harbour-videoplayer-1.9.8-1.i486.rpm2.21 MB02/08/2018 - 13:46
File harbour-videoplayer-1.9.8-1.armv7hl.rpm2.2 MB02/08/2018 - 13:46
File harbour-videoplayer-1.9.9-1.i486.rpm2.23 MB09/11/2018 - 13:08
File harbour-videoplayer-1.9.9-1.armv7hl.rpm2.22 MB09/11/2018 - 13:08
File harbour-videoplayer-2.0.0-1.armv7hl.rpm2.24 MB13/01/2019 - 16:30
File harbour-videoplayer-2.0.0-1.i486.rpm2.25 MB13/01/2019 - 16:30
File harbour-videoplayer-2.0.1-1.armv7hl.rpm2.28 MB19/04/2019 - 14:27
File harbour-videoplayer-2.0.1-1.i486.rpm2.29 MB19/04/2019 - 14:27
File harbour-videoplayer-2.0.2-1.i486.rpm2.3 MB25/05/2019 - 16:53
File harbour-videoplayer-2.0.2-1.armv7hl.rpm2.3 MB25/05/2019 - 16:53
File harbour-videoplayer-2.0.3-1.i486.rpm2.3 MB25/05/2019 - 17:11
File harbour-videoplayer-2.0.3-1.armv7hl.rpm2.3 MB25/05/2019 - 17:11
File harbour-videoplayer-2.0.4-1.armv7hl.rpm2.29 MB28/07/2019 - 18:41
File harbour-videoplayer-2.0.4-1.i486.rpm2.3 MB28/07/2019 - 18:41
File harbour-videoplayer-2.0.5-1.armv7hl.rpm2.29 MB11/09/2019 - 23:58
File harbour-videoplayer-2.0.5-1.i486.rpm2.3 MB11/09/2019 - 23:58
File harbour-videoplayer-2.0.6-1.armv7hl.rpm2.29 MB12/10/2019 - 14:21
File harbour-videoplayer-2.0.6-1.i486.rpm2.3 MB12/10/2019 - 14:21
File harbour-videoplayer-2.0.7-1.armv7hl.rpm2.28 MB30/05/2020 - 10:47
File harbour-videoplayer-2.0.7-1.i486.rpm2.29 MB30/05/2020 - 10:47
File harbour-videoplayer-3.0.0-1.armv7hl.rpm2.33 MB06/10/2020 - 06:32
File harbour-videoplayer-3.0.0-1.i486.rpm2.34 MB06/10/2020 - 06:32
File harbour-videoplayer-3.0.1-1.armv7hl.rpm2.33 MB08/10/2020 - 04:16
File harbour-videoplayer-3.0.1-1.i486.rpm2.34 MB08/10/2020 - 04:16
File harbour-videoplayer-3.0.2-1.armv7hl.rpm2.35 MB09/10/2020 - 01:36
File harbour-videoplayer-3.0.2-1.i486.rpm2.36 MB09/10/2020 - 01:36
File harbour-videoplayer-3.0.3-1.i486.rpm2.36 MB24/10/2020 - 02:56
File harbour-videoplayer-3.0.3-1.armv7hl.rpm2.35 MB24/10/2020 - 02:56
File harbour-videoplayer-3.0.3-1.aarch64.rpm2.35 MB16/05/2021 - 10:57
Changelog: 
  • Fix no interactivity after youtube-dl error
  • Update ytdl
  • Check if shipped ytdl is newer and overwrite local copy if thats true
     

Comments

Pohli's picture

I mean while keeping the current video in memory. So how do you return? The only way I found is to select the video again (e.g. from History) but this is not a nice way to do it IMO.

jakecn's picture

very good app!and thanks very much to
Support simplified Chinese language .
But there are still some places that translation is not complete
1.in the main menu 'Introducir URL' is still English
2.in the settings 'Sutitulos en negrita'
'Try to load your YouTube videos with ytdl' these two places are not translated.

DameCENO's picture

It is possible to include skipping a video by swiping on the progress bar? only touches work and not very accurate for looking for a particular positon in the video file.

Also, could different screen options be added, like adapt to screen, stretch, keep origiinal screen ratio? This is a very good player,and I thank you for your awesome work. GStreamer limits its support for some video files, if it had an independent video source much like Kodi on Saifish it would be perfect

szopin's picture

Any chance it could also integrate streamlink for online streams? (https://streamlink.github.io/)

 

WOW it actually already works, just need to add -p=harbour-videoPlayer --player-http and the stream works inside it (was previously using -o and using temp file but this is much better)

llelectronics's picture

Not planned.

szopin's picture

It actually already works, added in my edit, if you add --player-http in the command line LLS Video player plays it no problem, awesome stuff, thanks

direc85's picture

I clicked "720p" to see what it does, and I get this:

/usr/bin/env: python: No such file or folder.

I assume using python, or python3, binary is the goal there, and I solved it by just using

/usr/bin/python3

directly. Assuming the application depends on Python3.
Edit: There doesn't seem to be python binary installed, only python3...

llelectronics's picture

Youtube-dl needs python2 to be installed. This provides the python binary. I had it as dependency earlier but people complained so I removed it from the dependency list of the player as it is only necessary for youtube-dl.

Mick's picture

If this app is still maintained, would it be possible to add a feature where we can change the download path so videos can be stored on external memory card rather than device memory? Failing that, is it possible to change the path in a config file within the app?
Thanks. :)

llelectronics's picture

This is currently not possible. Also not with changing a configuration file. You need to edit the source code for this.

It is an interesting feature though implementing needs a lot of fallback code (what happens if the path isn't accessible anymore as the microsd card or external card or folder in general vanished).

So it isn't a one liner of code that needs to be changed.

Pohli's picture

Very nice app! One issue though:
Videos I recorded with my Nokia 108 DS (Microsoft Mobile RM-944) doesn't play correctly, there are some coloured stripes in the picture. Same issue when playing those videos with native Gallery app. VLC plays them correctly, so I assume it has something to do with GStreamer or could it be LLs Video Player causing the issue?
Video preview pictures look fine though.
Here's a short sample video:
http://www.137tmx.de/~pohli/jolla/video0012.avi

File version and output:

file-5.14
magic file from /usr/share/misc/magic

video0012.avi: RIFF (little-endian) data, AVI, 176 x 144, video: Motion JPEG, audio: uncompressed PCM (mono, 8000 Hz)

MediaInfo version and output:

MediaInfo Command line,
MediaInfoLib - v18.12

General
Complete name                            : video0012.avi
Format                                   : AVI
Format/Info                              : Audio Video Interleave
File size                                : 642 KiB
Duration                                 : 6 s 940 ms
Overall bit rate                         : 758 kb/s
IsTruncated                              : Yes
IUAM                                     : http://www.mediatek.com

Video
ID                                       : 0
Format                                   : JPEG
Codec ID                                 : MJPG
Duration                                 : 6 s 940 ms
Bit rate                                 : 622 kb/s
Width                                    : 176 pixels
Height                                   : 144 pixels
Display aspect ratio                     : 1.222
Frame rate                               : 14.841 FPS
Color space                              : YUV
Chroma subsampling                       : 4:2:0
Bit depth                                : 8 bits
Compression mode                         : Lossy
Bits/(Pixel*Frame)                       : 1.652
Stream size                              : 527 KiB (82%)

Audio
ID                                       : 1
Format                                   : PCM
Format settings                          : Little / Signed
Codec ID                                 : 1
Duration                                 : 6 s 940 ms
Bit rate mode                            : Constant
Bit rate                                 : 128 kb/s
Channel(s)                               : 1 channel
Sampling rate                            : 8 000 Hz
Bit depth                                : 16 bits
Stream size                              : 108 KiB (17%)
Alignment                                : Aligned on interleaves
Interleave, duration                     : 496  ms (7.36 video frames)
llelectronics's picture

Smells indeed like a gstreamer issue. 

Pohli's picture

Any idea who is in charge of this? Searching on Github for GStreamer gives me dozens of results.

llelectronics's picture

You need to find out what gstreamer plugin is the cause. Maybe its a particular hardware codec or implementation causing it. Otherwise feel free to file a bug in together.jolla.com if you think Jolla should take care of it. Personally it is working fine with gstreamer 1.10.4 on my desktop. So I think it is a codec issue for particular devices.

geher's picture

On update attempt i have error message.
File './noarch/droid-system-packager-0.1.9-10.1.1.jolla.noarch.rpm' not found on medium 'https://store-repository.jolla.com/releases/3.0.0.8/jolla-hw/adap-qualco...'

llelectronics's picture

That has nothing to do with my App. Your SailfishOS package cache seems out of date. Refresh it in terminal with devel-su pkcon refresh

addy's picture

So it says recently updated in storeman, but there is no update option. Is this a fluke?

llelectronics's picture

Updated it today to 1.9.8 

addy's picture

It's available now, must have been some temp issue with network/storeman.

lpr's picture

I use latest version 1.9.7 on SFOS2.2.0 and I experience a lot of warnings "[W] unknown:9 - file:///usr/share/harbour-videoPlayer/qml/pages/helper/checksubtitles.js:9: TypeError: Can not read property 'end' of undefined" followed by abort "[D] on Destruction:77 - Destruction of videoplayer" when playing a HLS .m3u8 video livestream :(

llelectronics's picture

You can ignore those. It is just trying to read subtitles but fails as no are active.

t0t3u's picture

I'm trying to play an YouTube video on my Xperia X and I get "Your GStreamer installation is missing a plugin".
Shouldn't it be able to play it with existing plugins? (I have just performed a factory reset and upgraded to 2.2.0.29)
Edit: I was trying to play https://m.youtube.com/#/watch?v=FRjOSmc01-M and it failed but other videos work fine. Pfew! :D
Thank you for your great app!

llelectronics's picture

That video is linked wrongly. But even if I copy that link it takes me to the youtube main page.

So I guess either the video is not available or it is geo blocked or something like this.

For some videos you need to be logged in to be able to play them back. Other videos use DRM.

See the pulley menu Load with ytdl which uses youtube-dl to grab the stream and usually also plays DRM files fine.

Vieno's picture

This is the greatest app for SFOX of all times. Maybe together with a few others.

llelectronics's picture

No trnaisfex at the moment. There is no translation support currently.

DameCENO's picture

Whenever you need a french translation count me in, the least I can do for such a helpful app

sdiconov's picture

Updated Russian translation but cannot test it because .mo file is not recognised. What is the right name and location for the translation resources?

llelectronics's picture

There is no translation support currently.

scanner's picture

trying to update on the tablet, i get this error:

File './core/i486/python-2.7.9-1.3.8.i486.rpm' not found on medium 'https://releases.jolla.com/releases/2.1.3.7/jolla/i486/'

Maximilian1st's picture

Same problem here but trying to install a fresh copy.

Pages