maemo.org - Talk

maemo.org - Talk (https://talk.maemo.org/index.php)
-   SailfishOS (https://talk.maemo.org/forumdisplay.php?f=52)
-   -   [WIP] LLs Video Player (https://talk.maemo.org/showthread.php?t=92141)

llelectronics 2013-12-23 20:39

[WIP] LLs Video Player
 
I was just missing a video player which has the ability to browse the file system and play remote media streams (just like youtube videos and so on) so I coded one.

Its a work in progress and won't be released to harbour currently as I need to clean up the code ( I partly use jolla-fileman code for the filebrowsing stuff).
I also plan to integrate a youtube search into it.
The video player uses the builtin gstreamer framework which in combination with the file browser (which trys to open up every file you throw at it) has the nice side effect that it can also view image files (what I accidently found out and never planned it)
Anyways here is the current rpm (Updated:harbour-videoplayer-3.0.3-1.armv7hl.rpm) :
https://openrepos.net/sites/default/...-1.armv7hl.rpm
Tablet (i486) RPM: https://openrepos.net/sites/default/...0.3-1.i486.rpm

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

You can find the openrepos.net page here:
https://openrepos.net/content/llelec...s-video-player

And a short video demo of the initial features: http://www.youtube.com/watch?v=9o4wltgCjTI
Short video demo of youtube search implementation: http://www.youtube.com/watch?v=hW55lNbFYLo
Controls, History & CoverPage Update: http://www.youtube.com/watch?v=VkMLeLnyy2E
Youtube-dl Integration: https://www.youtube.com/watch?v=7mbs3k-UjOw

Changelog 3.0.3
  • Fix no interactivity after youtube-dl error
  • Update ytdl
  • Check if shipped ytdl is newer and overwrite local copy if thats true

Changelog 3.0.2:
  • Fix translations

Changelog 3.0.1:
  • Fix humbnails not updating on FirstPage
  • Fix label padding for long texts in history and bookmarks page
  • Fix padding for ytsearchresultitems so channel name aligns with title
  • Don't allow interaction with the app when busy is running
  • Show 'Load More' in ytSearchResultsPage only if results are loaded
  • Fix time overlapping quality btn
  • Add python dependency
  • Add 'Loading Youtube results' message and abort button for search
  • Some cleanup
  • Updated chinese translation

Changelog 3.0:
  • New UI with resizable local video list
  • New default native Youtube Search Results page (old one is still available with "Show Website" pulley menu but be aware that youtube will stop supporting the old QtWebkit version uses by SFOS by the 22nd of October)
  • Fix encrypted sd card not showing up correctly in filemanager
  • Fix sd cards formatted under SFOS not showing up in filemanager
  • Disable Mpris integration for MinPlayer as it conflicts with Mpris connection with normal player and there is no enabled property in Qt<5.7
  • Use label instead of button in aboutpage homepage link
  • Add more icons for different pixelratio screens + beautified about page
  • double tap on left or right when video is playing rewinds or fast forwards like fast forward and rewind buttons
  • Add jupii support (DLNA)
  • Update translations
  • Allow loading metaDataPage in background and foreground + Add properties item in pulley menu of video player
  • Update youtube-dl

Changelog 2.0.7:
  • If buffer is under 5% pause playback and resume after it reached 100% again
  • Translation files updates
  • Use overlayBackgroundColor in InfoBanner
  • sync fmhelper with filecat
  • Update OpenDialog from filecat
  • Update disable youtube api v3 title acquisition and use get_info method
  • Update youtube-dl

Changelog 2.0.6:
  • Allow scaling of non native display aspect ratio videos
  • Fix orientation on errTxt
  • Show controls after clicking dismiss button (Fixes #51)
  • Add support for repeating current media file (Fixes: #52)
  • Fix no playlist created when ~/Music/playlists doesn't exists (Fixes #53)
  • Fix coverTime visibility on slider press might disappear
  • Fix maximum time showing garbage for long videos
  • Add indicator for scale mode of video
  • Some lightTheme fixes for scalelbl indicator and video Duration indicator
  • Use more spacing in opendialog (fixes overlapping of files and folder names with bigger fonts)
  • Opendialog smaller and better details for files
  • Show Android Storage entry if available
  • Use new fileItemDelegate, restrucuring of code
  • Fix loading of properties
  • Proper fadeOut animation on scale indicator
  • Use pinch gesture to scale video (pinchIn - fit to screen, pinchOut - Original)
  • Update german translation + added translation files to project
  • Use youtube id for ytdl as playlists might not always be supported
  • Set ytdlQual in OpenUrlPage
  • Use internal Screen Blank function and remove private Sailfish.Media import in video player
  • Make code more consitent
  • Update youtube-dl

Changelog 2.0.4:
  • Invert search history and show last searches always on top
  • Invert history and show last media played back always on top
  • Fix gallery fm not working
  • Make history more consistent and only show title and try harder to hide multiple ones
  • Hide navbar if historyDrawer is open (fixes being able to click bottom search history when in landscape)
  • Fix youtube stream aquiring
  • Added persistent navbar with youtube home, subscription and library button added
  • Updated translations
  • Try to fix sd card recognition on encrypted media
  • Multiple presses on the ffwd and rew button triggers further jump in the video (if done in 1.5 second interval)
  • Added indicators for ffwd and rev (based on microtube ones)
  • Display current selected slider position big above video when changing with slider
  • Made spacing in Navbar homogeneous

Changelog 2.0.3:
  • Make show mini player configurable and disable it by default
  • Switch Youtube getting streams to using https (Fixes Youtube)
  • Download youtube-dl if not available
  • Fixed videogallery set as Filemanager not working
  • Update youtube-dl (existing users need to update manually)

Changelog 2.0.1:
  • Fix OpenDialog: Wrong path when switching between folders + hidden files show states (Fixes: #31)
  • OpenDialog: Sync changes to path with webcat
  • Translate description texts of AddBookmark aswell + updated german translation
  • Add swedish, spanish & chinese translations to project
  • Make new dynamic youtube mobile site work
  • Add 'Try to load all youtube videos with ytdl' in settings
  • Fix chinese translation parsing error due to broken tag
  • Add initial Russian translation
  • Add Dutch translation
  • Outsource mediaPlayer to own mplayer component + added minPlayer
  • Add dash fullhd 1080p youtube avc1+aac support (deactivated for now as qtmm + gstreamer droid issues)
  • Allow minPlayerPanel hiding by swiping down and allow it showing on firstPage pulley menu
  • Move mpris Player functionality in MprisConnector + MinPlayerPanel next/prev functions
    (fixes mpris status sometimes paused/stopped initially)
  • Put minPlayerPanel in a component and load it dynamically
  • Connect minPlayer to MprisConnector
  • Only show 'Show Player' pulley menu entry if minPlayer has source
  • Fix playlist progressing & moved signal handling for video player specific stuff back to video player
  • Update youtube-dl

Changelog 2.0.0:
  • Allow to show hidden files by pressing on the pageheader foldername
  • Better error output for ytdl
  • Use overlaybackgroundcolor for errors and ytdl loading
  • Make headerBg height slightly bigger
  • Added translation support + german & spanish translation
  • Fixed playlist not following current track when opened
  • OpenDialog/Filemanager: Fixed multiple Custom Places entry everytime you open Places
  • Downloadmanager: Use dockedPanel for progressstatus and autohide when donwload completed
  • OpenDialog/Filemanager: Fix remove function for multiple files and folders (Potential high risk of loosing data when trying to remove multiple folders in earlier versions)*
  • Update youtube-dl

Changelog 1.9.9:
  • Add support for light theme
  • Fix pushAttached for places in filemanager + Removed workaround for player hanging
  • Youtube Page Overlay lightTheme fixes
  • Updated youtube-dl

cvp 2013-12-23 22:49

Re: [WIP] LLs Video Player
 
nice work bro, i will try this tomorow

mariusmssj 2013-12-23 22:54

Re: [WIP] LLs Video Player
 
Looks really cool I will give it a go once I got more content on my SD card tomorrow :)

Watchmaker 2013-12-23 23:12

Re: [WIP] LLs Video Player
 
Whoa, cool! Don't know if I'll wait for it to appear in the store (for the automatic updates) or just try it out at once... mmmh........ :)

Ok, couldn't resist.
It's great, and it's just basic yet. Can't wait to see how far it will go, looks really, really promising. Add in youtube/video download and you'll be my hero :p

Kabouik 2013-12-24 11:53

Re: [WIP] LLs Video Player
 
Your video player actually looks great and features seem to work properly. And you say it's gonna improve? Awesome. I'm already downloading the pre-version. :O

Apart from the Youtube search, are you planning to add gestures (back 10 sec/1 min, forward 10 sec/1 min), or advanced player options in the pulley menu (browse subtitles even if name.srt != name.avi, subtitles downloader (like in MPC or UMPlayer), audio delay, etc.)?

That would definitely be the most advanced media player for Sailfish so far. Well, is it the only one ? OK. But still. :]

P.S.
I have trouble reading some files though, but it might be related to gstreamer. The default Sailfish player has the same problems with these files (which work properly on my computer, .mp4 and .avi). Some mplayer support someday would be great.

llelectronics 2013-12-24 12:30

Re: [WIP] LLs Video Player
 
Quote:

Apart from the Youtube search, are you planning to add gestures (back 10 sec/1 min, forward 10 sec/1 min), or advanced player options in the pulley menu (browse subtitles even if name.srt != name.avi, subtitles downloader (like in MPC or UMPlayer), audio delay, etc.)?
Gestures would conflict with the pageStack gestures so I have no plan for this currently.
Subtitles would be cool but currently I don't see the possibility for the QML MediaPlayer API to load them (maybe this changes with some newer version though)
The same goes for audio delay and so on.

What I want to add besides youtube search is a file information dialog so that you see your files metadata.
Some kind of error output and the ability to load a video file as parameter from the terminal (that would also make it possible to use this video player as default mimetype for video files which would make jolla-fileman and others building upon xdg-open to open up the video file with my player).
Cover Actions also needs some love. And perhaps I come up with some other nice ideas. And of course always code cleanup ;)

As for youtube downloading and full fledged youtube support I guess next year when python3 and its support for qt5 will come we will see some cool apps like cutetube (although I am not sure if its python based or pure c++, I guess the latter) and so on.

Quote:

I have trouble reading some files though, but it might be related to gstreamer. The default Sailfish player has the same problems with these files (which work properly on my computer, .mp4 and .avi). Some mplayer support someday would be great.
Mplayer will most probably definitely come to sailfish (but I am not sure if I will support it with this player though). But I guess with the newest gstreamer (1.0) which will hopefully come with one of the updates of sailfish the problems with file compatibility and codecs should go away.

Watchmaker 2013-12-24 13:06

Re: [WIP] LLs Video Player
 
1 Attachment(s)
Quote:

Originally Posted by llelectronics (Post 1400272)
As for youtube downloading and full fledged youtube support I guess next year when python3 and its support for qt5 will come we will see some cool apps like cutetube (although I am not sure if its python based or pure c++, I guess the latter) and so on.

Ok, no problem. :)

I took the freedom to create a jolla-styled icon, feel free to use it instead of the generic sailfish one (if you like it of course, I didn't test it on a device since I wouldn't know how, so I don't know if it actually looks any good in real use situations :p).

llelectronics 2013-12-26 23:19

Re: [WIP] LLs Video Player
 
Update: Youtube search is now implemented and I did some other bug fixing aswell as integrating Watchmakers icon.
Somehow I cannot get autoplay working. I am waiting for suggestions here.
Youtube integration still works via ytapi.com. If you have better suggestions on how to do this (I experienced a short downtime of ytapi.com earlier) in pure qml/javascript to directly access the video material I would gladly accept patches.

Updated rpm: https://www.dropbox.com/s/gksn0mbs94...-2.armv7hl.rpm

And a small video demonstration as always: http://youtu.be/hW55lNbFYLo

I think I will update the initial post aswell as people tend not to scroll down to read every single page/comment.

Changes in an overview:
  • Added new icon (thx Watchmaker)
  • Always display erros in potrait when available
  • Save entered url in openurl page for later editing
  • Updated icon (needed white for the filmstrip)
  • Modified desktop file to show LLs Video Player
  • Pressing Enter in OpenURL page now loads url
  • Implemented youtube search
  • Added icon to coverpage
  • Cleanup of code (lesser debug output, yt.js as checkyoutubelink and get videoid script)

Watchmaker 2013-12-27 00:02

Re: [WIP] LLs Video Player
 
2 Attachment(s)
I'm honoured that you chose to use my icon! I further tweaked it, put yellow instead of white in the holes of the film strip, and added one more frame separation line. I attach two versions, see if you like them better than the previous one.

As per the changes, great that youtube search is now working! Search result page scrolling is a bit wonky though, I can't scroll very much and page keep getting back to the top by itself.

llelectronics 2013-12-27 00:05

Re: [WIP] LLs Video Player
 
Yeah seems to be a conflict with the page back swipe gesture.
I wonder if there is a possibility to enter some threshold for this.

Try swiping from down bottom right to upper left and that should work much nicer than (it shouldn't jump back then). Longer swipe might also help here. (Just a workaround for now until I find out how to add that threshold for back swiping or need to find another way to workaround this problem somehow)

As for the icon. How about adding a white play icon onto it (centered).
Just like the one I ship with the player sources ? (triangle)


All times are GMT. The time now is 21:43.

vBulletin® Version 3.8.8