All Projects → JakeSteam → Vidsta

JakeSteam / Vidsta

Licence: GPL-3.0 license
Easily implementable and customisable Android video player library

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to Vidsta

Shigureader
用Chrome或者iPad轻松阅读整理漫画,播放音乐,以及观看视频. All-in-one solution for local doujin/anime/music file.
Stars: ✭ 254 (+605.56%)
Mutual labels:  video-player
AVPlayer-SwiftUI
Using AVPlayer in SwiftUI
Stars: ✭ 204 (+466.67%)
Mutual labels:  video-player
chrome-extension-aspectratio219
🖥️ Fit the screen properly in fullscreen mode on monitor ultrawide with 21:9 aspect ratio (Netflix, Youtube, PrimeVideo, Crunchyroll)
Stars: ✭ 28 (-22.22%)
Mutual labels:  video-player
flex-originals
🎧 A video and audio streaming web application
Stars: ✭ 36 (+0%)
Mutual labels:  video-player
vimix
Live Video Mixer
Stars: ✭ 172 (+377.78%)
Mutual labels:  video-player
ASCIIPlay
A simple video player that renders to ASCII written in C
Stars: ✭ 30 (-16.67%)
Mutual labels:  video-player
Mvpapp
Android MVP Architecture
Stars: ✭ 2,354 (+6438.89%)
Mutual labels:  video-player
hms-video-demo-android
HUAWEI Video Kit supports streaming media in 3GP, MP4, or TS format and compliant with HTTP/HTTPS, HLS, or DASH. The Kit also provides abundant playback controls, delivering personalized video experiences to users.
Stars: ✭ 22 (-38.89%)
Mutual labels:  video-player
files videoplayer
📼 Old video viewer for Nextcloud
Stars: ✭ 92 (+155.56%)
Mutual labels:  video-player
YetAnotherVideoPlayer
Yet Another Video Player for Andoid
Stars: ✭ 62 (+72.22%)
Mutual labels:  video-player
ti.youtube
A small library to get the URL of the desired YouTube video ID to use it natively in Ti.Media.VideoPlayer.
Stars: ✭ 13 (-63.89%)
Mutual labels:  video-player
GPlayer
video player plugin for flutter base on ijkplayer
Stars: ✭ 51 (+41.67%)
Mutual labels:  video-player
api.video-player-sdk
SDK to control and interact with the api.video HTML5 Player
Stars: ✭ 31 (-13.89%)
Mutual labels:  video-player
dart vlc
🎞 Flutter audio / video playback, broadcast & recording library for Windows & Linux.
Stars: ✭ 439 (+1119.44%)
Mutual labels:  video-player
shaka-player-react
A simple React component wrapper for shaka-player
Stars: ✭ 79 (+119.44%)
Mutual labels:  video-player
Eplayer
🔮 A web-component html5 video player facing future
Stars: ✭ 253 (+602.78%)
Mutual labels:  video-player
PictureToAudio
a few picture to audio (多张图片合成视频)
Stars: ✭ 21 (-41.67%)
Mutual labels:  video-player
sausage
Learn Foreign Languages via Movies Subtitle
Stars: ✭ 12 (-66.67%)
Mutual labels:  video-player
emacs-application-framework
EAF, an extensible framework that revolutionizes the graphical capabilities of Emacs
Stars: ✭ 2,454 (+6716.67%)
Mutual labels:  video-player
aos-Video
NOVA opeN sOurce Video plAyer: player frontend main UI
Stars: ✭ 35 (-2.78%)
Mutual labels:  video-player

This repo is not being maintained! Please use the many other alternatives if it doesn't fit your use case.

Download

Vidsta

An easily implementable and customisable Android video player. Try out the sample app!


Feature List:

  • Plays local and remote files
  • Send custom headers
  • Customise play / pause / fullscreen etc button images
  • Apply colour tint to play / pause / fullscreen images to quickly theme the player
  • Customise text colour
  • Autoplay
  • Autoloop
  • Listeners for video play / pause / buffering / error
  • Easy to implement
  • Min SDK Version: 14

Setup

1. Import library:

Add compile 'uk.co.jakelee:vidsta:1.0.0' to your build.gradle dependencies.

2. Create view to display video in:
<uk.co.jakelee.vidsta.VidstaPlayer
        android:id="@+id/player"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />
3. Configure video source, and other options:
        VidstaPlayer player = (VidstaPlayer) findViewById(R.id.player);
        player.setVideoSource("http://www.quirksmode.org/html5/videos/big_buck_bunny.mp4");
        player.setAutoLoop(true);
        player.setAutoPlay(true);
4. That's it! You're done!

Adding custom listeners, customising the UI, and other configuration options are detailed below, but you're ready to go!


Changelog

V1.0.0: Initial release, forked from Exposure Video Player.

Customisation

Via XML:
    <uk.co.jakelee.vidsta.VidstaPlayer
        android:id="@+id/player"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:videoSource = "http://www.quirksmode.org/html5/videos/big_buck_bunny.mp4" <!-- Setting a remote video source -->
        app:textColor = "@color/colorPrimary" <!-- Setting colour for duration / progress text -->
        app:playVideoDrawable = "@drawable/custom_video_play" <!-- Setting drawable for play button -->
        app:pauseVideoDrawable = "@drawable/custom_video_pause" <!-- Setting drawable for pause button -->
        app:retryVideoDrawable = "@drawable/custom_video_retry" <!-- Setting drawable for retry button -->
        app:nextVideoDrawable = "@drawable/custom_video_next" <!-- Setting drawable for next button -->
        app:previousVideoDrawable = "@drawable/custom_video_previous" <!-- Setting drawable for previous button -->
        app:buttonTintColor = "@color/colorAccent" <!-- Setting tint colour for above buttons -->
        app:autoPlay = "true" <!-- Enabling autoplay -->
        app:autoLoop = "true" <!-- Enablimg looping once video is finished -->
        app:setFullScreen = "true" <!-- Enabling fullscreen -->
        app:fullScreenButtonEnabled = "true" <!-- Making fullscreen button clickable -->
        app:fullScreenButtonVisible = "true" <!-- Making fullscreen button visible -->/>
Programmatically:
# Setting video source to a remote video
player.setVideoSource("http://www.quirksmode.org/html5/videos/big_buck_bunny.mp4");

# Enabling fullscreen mode
player.setFullScreen(true);
player.setFullScreenButtonVisible(true);

# Adding coloured tint to text / buttons
player.setTextColor(intent.getIntExtra("textColour", Color.WHITE));
player.setButtonTintColor(intent.getIntExtra("iconTint", Color.WHITE));

# Setting new drawables
player.setPlayButtonDrawable(R.drawable.custom_video_play);
player.setPauseButtonDrawable(R.drawable.custom_video_pause);
player.setRetryButtonDrawable(R.drawable.custom_video_retry);
player.setFullscreenEnterDrawable(R.drawable.custom_video_screen_fullscreen_enter);
player.setFullscreenExitDrawable(R.drawable.custom_video_screen_fullscreen_exit);
player.setPreviousButtonDrawable(R.drawable.custom_video_previous);
player.setNextButtonDrawable(R.drawable.custom_video_next);

# Setting up autoloop & autoplay
player.setAutoLoop(true);
player.setAutoPlay(true);

# Setting up custom listeners for events
player.setOnVideoBufferingListener(new VideoStateListeners.OnVideoBufferingListener());
player.setOnVideoErrorListener(new VideoStateListeners.OnVideoErrorListener());
player.setOnVideoFinishedListener(new VideoStateListeners.OnVideoFinishedListener());
player.setOnVideoPausedListener(new VideoStateListeners.OnVideoPausedListener());
player.setOnVideoRestartListener(new VideoStateListeners.OnVideoRestartListener());
player.setOnVideoStartedListener(new VideoStateListeners.OnVideoStartedListener());
player.setOnVideoStoppedListener(new VideoStateListeners.OnVideoStoppedListener());

# Setting a fullscreen listener. Note that starting a new fullscreen activity must be handled in your application for now
player.setOnFullScreenClickListener(new FullScreenClickListener());
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].