Giter Site home page Giter Site logo

anilbeesetti / nextplayer Goto Github PK

View Code? Open in Web Editor NEW
1.1K 12.0 50.0 9.35 MB

An Android native video player

License: GNU General Public License v3.0

Kotlin 100.00%
kotlin exoplayer jetpack-compose kotlin-android kotlin-coroutines media3 room-database android player video-player

nextplayer's Introduction

Next player banner

Next Player

GitHub release (latest SemVer) Google Play IzzyOnDroid F-Droid GitHub all releases Google Play Weblate project translated

Next Player is an Android native video player written in Kotlin. It provides a simple and easy-to-use interface for users to play videos on their Android devices

This project is still in development and is expected to have bugs. Please report any bugs you find in the Issues section.

Get it on Google Play Get it on IzzyOnDroid Get it on F-Droid

Screenshots

Media Picker

Home Light Home Dark Sub Folder Light Sub Folder Dark Quick Settings

Player Ui

Player Player

Supported formats

  • Video: H.263, H.264 AVC (Baseline Profile; Main Profile on Android 6+), H.265 HEVC, MPEG-4 SP, VP8, VP9, AV1
    • Support depends on Android device
  • Audio: Vorbis, Opus, FLAC, ALAC, PCM/WAVE (μ-law, A-law), MP1, MP2, MP3, AMR (NB, WB), AAC (LC, ELD, HE; xHE on Android 9+), AC-3, E-AC-3, DTS, DTS-HD, TrueHD
    • Support provided by ExoPlayer FFmpeg extension
  • Subtitles: SRT, SSA, ASS, TTML, VTT, DVB
    • SSA/ASS has limited styling support see this issue

Features

  • Native Android app with simple and easy-to-use interface
  • Completely free and open source and without any ads or excessive permissions
  • Software decoders for h264 and hevc
  • Audio/Subtitle track selection
  • Vertical swipe to change brightness (left) / volume (right)
  • Horizontal swipe to seek through video
  • Material 3 (You) support
  • Media picker with folder and file view
  • Play videos from url
  • Play videos from storage access framework (Android Document picker)
  • Control playback speed
  • External Subtitle support
  • Zoom gesture

Planned Features

  • External Audio support
  • Picture-in-picture mode

Contributing

Contributions are welcome!

Translating

You can help translate Next Player on Hosted Weblate.

Translate status

Credits

Open Source Projects

Special Thanks

Thanks to Weblate for providing free hosting for the project.

License

Next Player is licensed under the GNU General Public License v3.0. See the LICENSE file for more information.

nextplayer's People

Contributors

0k1pullup avatar alexandru51 avatar anilbeesetti avatar archeix7 avatar atalanttore avatar atilluf avatar comradekingu avatar cyanwolfg avatar dontobi avatar faisalhasan7 avatar fosslatic avatar hajemir avatar kefir2105 avatar kuragehimekurara1 avatar m4a28 avatar martuv93 avatar metafractal avatar ngocanhtve avatar petachok avatar plum7x avatar rejectvanity avatar renovate[bot] avatar santossi avatar shareasmile avatar softinterlingua avatar vasiliskos avatar weblate avatar yashraj254 avatar ygxbnet avatar yurical 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

nextplayer's Issues

[BUG] Many thumbnails appear in black

I understand that the application takes the first or one of the first frames of each video to generate its thumbnail on the initial screen.

I think it is a common thing that many videos start with a solid color, I think if the thumbnail was generated from a few seconds later many videos would have a better thumbnail.

Screenshot
photo_2023-05-19_17-56-20

[Request] Subs selection improvements

  1. When there's a subs file with the same name with the video file in the same folder, the subs track should be selected by default. Now you have to manually select it.
  2. Add the option to select a subs track with any filename that's in the same folder with the video file. Now only subs of the exact same filename are selectable.
  3. When a subs filename has the [ ] characters, those characters are not displayed properly in the subs track selection menu.

[Request] Fast rewind

We need an option for accelerated video playback x1.25, 1.5, x2 or make a slider to select the value.

Just installed your app and already love it, good job

Doesn't play MKV

Screenshot_2023-06-05-16-43-07-322_dev anilbeesetti nextplayer

The error is on Xiaomi Redmi 9. I don't know if it's phone related or not. I installed ver0.2.0 universal and arm7
The video player doesn't show thumbnails for videos it does not play.

Playback speed bar

First of all, I apologize that this is again a "bug" and not a "query", I do not know how to label it differently.

I propose to make a bar speed playback, instead of options 0.5x, x1, 1.5x, etc., so you can much finer set the desired speed playback (also propose to expand the range to 3x)

IMG_20230601_203358_301

Scrolling feels jittery

I'm on android 7 and scrolling through the videos feels a bit jittery. It can be the issue with the old device but VLC and MX player doesn't feel like it. Other than this, thank you for this app.

Android TV Support and addition to TV Play Store?

I'd like to be able to use this player on my Android TV device and for it to be on the Android TV Play Store. Can you add support for using this player on Android TV devices with full remote control support?

I want to help with Spanish translation

Hi, I have been waiting for a long time for an open source video player alternative with a good design. I understand that the development of this app is early, even so it already looks very good.

I would like to help with the translation of the application to Spanish, I don't know much about programming but I have helped before in the translation of other applications.

How could I help with the translation?

[BUG] Embedded Thumbnails not being Displayed

I have youtube videos downloaded with yt-dlp-application, YTDLnis, which have embedded YouTube thumbnails into videos. MX Player displays thumbnails correctly over videos but Next Player is not showing any thumbnails over videos.
Screenshot_20230527-232549_1
Screenshot_20230527-232539

Storage Access Framework

Hi, I really love your video player. I noticed that it doesn't currently support accessing files stored in Document Providers. I was wondering if you would consider adding support for the Storage Access Framework to your app so users can easily access files from their preferred cloud storage providers. It would be a great addition to your already amazing app. Thanks!

[Request] Video resolution info

Would it be possible to add in the file info of video files, in the media picker, the video resolution? There's space next to the video file size. Like e.g. 120MB, 1280x720.

Enable select external subs

Please enable using subs that are not embbed in the media file, i need sometimes to select the external sub but the video player won't ler me

Allow users to configure how long the Player UI stays onscreen?

When you open a video, it takes 5 seconds for the UI to go away. That seems way too long, especially for short videos. It should be 2 seconds. Better yet, I'd like the ability to change that setting myself.

Can we have the ability to configure the time that the player UI stays onscreen?

[Request] Choice of button locations

I am not very comfortable when these buttons are on the left, so I propose to make an option where you can choose where they are on the right or left
IMG_20230520_212409_408

BUG - videos take a long time to open (AV1 codec)

First, after I clicked on the video, the app froze for 4 seconds. Then a black screen appears, and after another 4 seconds a dialog box appears saying that the app is "not responding". If I press wait, the endless black screen continues.

miui, android 12, f-droid 0.1.0

Also, when I try to open a folder with more than 200 videos, I have to wait 2 second for it to open. This is also a waiting problem.

Request: Seeking Help to Create Application Icon

As a non-designer, I lack the necessary skills and knowledge to create a good-looking application icon. By seeking assistance from the community, I hope to leverage the expertise and creativity of talented individuals who can contribute to the visual appeal and branding of the app.

[ Feature ] add audio file

this feature is my favorite feature in Mx player player. Thanks to this, more audio files can be added to the video

Screenshot_20230602-224524_MX_Player

[Request] Allow us to disable some folders

Under settings there should be option to exclude some folders from video list. No one want WhatsApp video in the play list. If we have option to hide it. It's great.

[Request] Additional extension support

Please add option to add any extra extension for video to see in app.
Ex. When I download any video from chrome the video extension contains ".crdownload" during download.

[Suggestion] Early Access Google Play release

I think it'd be very usefull to make the app available on Google Play, maybe as an early access one. That would not only make it more widely known and famous, but mainly it will increase its users, and thus more people wil use it, test it, and report bugs.

[Request] Pip

We need the ability to watch videos in a window, as in "Just player"

Translation license

It is usually the case that people want GPLv3-or-later when Weblate forces specifying one or the other.
"-only" means there is less flexibility in importing from other projects, and/or going AGPLv3, or possibly GPLv4 when or if that happens.

It can be changed in https://hosted.weblate.org/settings/next-player/android-strings-core/

Getting it adjusted now means not having to negotiate with multiple translators down the road. :)

Edit: There was also

excludes.add("/META-INF/{AL2.0,LGPL2.1}")

Icon is missing

Icon is missing. Android shows default android icon instead...

Dependency Dashboard

This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

Open

These updates have all been created already. Click a checkbox below to force a retry/rebase of any.

Detected dependencies

github-actions
.github/workflows/android_build.yaml
  • actions/checkout v4
  • gradle/wrapper-validation-action v2
  • actions/setup-java v4
  • gradle/gradle-build-action v3
  • actions/upload-artifact v4
  • actions/upload-artifact v4
  • actions/upload-artifact v4
  • actions/upload-artifact v4
  • actions/upload-artifact v4
  • actions/upload-artifact v4
  • actions/checkout v4
  • actions/setup-java v4
  • gradle/gradle-build-action v3
  • reactivecircus/android-emulator-runner v2
  • actions/upload-artifact v4
.github/workflows/github_release.yaml
  • actions/checkout v4
  • gradle/wrapper-validation-action v2
  • actions/setup-java v4
  • gradle/gradle-build-action v3
  • r0adkll/sign-android-release f30bdd30588842ac76044ecdbd4b6d0e3e813478
  • softprops/action-gh-release v2
gradle
gradle.properties
settings.gradle.kts
build.gradle.kts
app/build.gradle.kts
build-logic/gradle.properties
build-logic/settings.gradle.kts
build-logic/convention/build.gradle.kts
core/common/build.gradle.kts
core/data/build.gradle.kts
core/database/build.gradle.kts
core/datastore/build.gradle.kts
core/domain/build.gradle.kts
core/media/build.gradle.kts
core/model/build.gradle.kts
core/ui/build.gradle.kts
feature/player/build.gradle.kts
feature/settings/build.gradle.kts
feature/videopicker/build.gradle.kts
gradle/libs.versions.toml
  • com.mikepenz:aboutlibraries-core 11.1.1
  • com.mikepenz:aboutlibraries 11.1.1
  • com.mikepenz:aboutlibraries-compose 11.1.1
  • com.google.accompanist:accompanist-permissions 0.34.0
  • androidx.activity:activity-compose 1.8.2
  • androidx.activity:activity-ktx 1.8.2
  • androidx.appcompat:appcompat 1.6.1
  • androidx.compose:compose-bom 2024.03.00
  • androidx.constraintlayout:constraintlayout 2.1.4
  • androidx.core:core-ktx 1.12.0
  • androidx.core:core-splashscreen 1.0.1
  • androidx.datastore:datastore 1.0.0
  • androidx.hilt:hilt-navigation-compose 1.2.0
  • androidx.lifecycle:lifecycle-runtime-ktx 2.7.0
  • androidx.lifecycle:lifecycle-runtime-compose 2.7.0
  • androidx.lifecycle:lifecycle-viewmodel-ktx 2.7.0
  • androidx.lifecycle:lifecycle-viewmodel-compose 2.7.0
  • androidx.media3:media3-common 1.3.0
  • androidx.media3:media3-exoplayer 1.3.0
  • androidx.media3:media3-exoplayer-dash 1.3.0
  • androidx.media3:media3-exoplayer-hls 1.3.0
  • androidx.media3:media3-exoplayer-rtsp 1.3.0
  • androidx.media3:media3-session 1.3.0
  • androidx.media3:media3-ui 1.3.0
  • androidx.navigation:navigation-compose 2.7.7
  • androidx.room:room-compiler 2.6.1
  • androidx.room:room-ktx 2.6.1
  • androidx.room:room-runtime 2.6.1
  • androidx.test.espresso:espresso-core 3.5.1
  • androidx.test.ext:junit-ktx 1.1.5
  • io.coil-kt:coil-compose 2.6.0
  • com.github.albfernandez:juniversalchardet 2.4.0
  • com.github.anilbeesetti.nextlib:nextlib-media3ext 0.6.0
  • com.github.anilbeesetti.nextlib:nextlib-mediainfo 0.6.0
  • com.google.android.material:material 1.11.0
  • com.google.dagger:hilt-android 2.51.1
  • com.google.dagger:hilt-android-compiler 2.51.1
  • junit:junit 4.13.2
  • org.jetbrains.kotlinx:kotlinx-coroutines-android 1.8.0
  • org.jetbrains.kotlinx:kotlinx-coroutines-test 1.8.0
  • org.jetbrains.kotlinx:kotlinx-serialization-json 1.6.3
  • com.jakewharton.timber:timber 5.0.1
  • com.android.tools.build:gradle 8.2.2
  • org.jetbrains.kotlin:kotlin-gradle-plugin 1.9.23
  • com.mikepenz.aboutlibraries.plugin 11.1.1
  • com.android.application 8.2.2
  • com.android.library 8.2.2
  • com.google.dagger.hilt.android 2.51.1
  • org.jetbrains.kotlin.android 1.9.23
  • org.jetbrains.kotlin.jvm 1.9.23
  • org.jetbrains.kotlin.plugin.serialization 1.9.23
  • com.google.devtools.ksp 1.9.23-1.0.19
  • org.jlleitschuh.gradle.ktlint 12.1.0
gradle-wrapper
gradle/wrapper/gradle-wrapper.properties
  • gradle 8.7

  • Check this box to trigger a request for Renovate to run again on this repository

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.