GithubHelp home page GithubHelp logo

ed-george / androidvimeoextractor Goto Github PK

View Code? Open in Web Editor NEW
73.0 73.0 14.0 131 KB

Fetches Vimeo's mp4 URLs for Android / Java

License: MIT License

Java 100.00%
android android-library hacktoberfest vimeo

androidvimeoextractor's Introduction

Ed Holloway-George

πŸ‘‹ Hi there! I'm Ed, an Android developer, Google Developer Expert and programmer originally from Oxfordshire, UK and now residing in Nottingham, UK.

I have been programming since I was 13 years old and have a broad interest in programming languages, mobile applications and general computer science.

Outside of programming, you can find me playing PokΓ©mon games, supporting Oxford United and looking after my Pomeranian.

You can read more about me and my work on my website

Please check me out on social:

If you like what I do, consider leaving my repos a 🌟 and dropping me a message!

androidvimeoextractor's People

Contributors

ed-george avatar ravidsrk 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

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

androidvimeoextractor's Issues

AndroidVimeoExtractor Guestbook πŸ“

Inspired by other repositories that have created similar pages, please use this issue as a space to comment on how you are using this library, your feedback on it and generally if you want to share the love to the contributors πŸ’›πŸ’™β€οΈ

Thanks - Ed

N/W Preferred url and thumb

Hi, @ed-george and @ravidsrk
I am also developer so I can understand the efforts you did.
Just a suggestion.
Your library will be more sweet if you provide url/thumb logic based on network speed.

Like, on 2G: Light, on 3G: Medium, on 4G/WiFi: High

String prefThumb = vimeoVideo.getNWPreferredThumb();
String prefUrl = vimeoVideo.getNWPreferredUrl();

Thanks!

Add video creator information to Vimeo Video object

Add video creator information to VimeoVideo object.

The API call returns it in a format similar to the following (but not always exactly):

"owner": {
      "account_type": "basic",
      "name": "username",
      "img": "http://foo.bar/img.png",
      "url": "https://vimeo.com/username",
      "img_2x": "http://foo.bar/img2x.png",
      "id": 12345
}

App crash if minifyEnabled is true

Hi there, the library works fine on my debug session, but it hang the entire app on release, and think the reason is because I set this code:

  release {
        minifyEnabled true
        proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
    }

I think the solution is to add few lines inside proguard-rules.pro just like this, but I'm not sure what I should add:
-keepclassmembers interface vimeoextractor.*

Getting 403 on both public and private videos, referrer is null

VimeoExtractor.getInstance().fetchVideoWithURL(url, null, new OnVimeoExtractionListener() {
            @Override
            public void onSuccess(VimeoVideo video) {
                if (!play) {
                    try {
                        ((DetailActivity) context).runOnUiThread((Runnable) () -> Glide.with(context)
                                .load(video.getThumbs().get("base"))
                                .apply(new RequestOptions().centerCrop())
                                .into(thumbnail));
                    } catch (Exception e) {
                        ((DetailActivity) context).runOnUiThread((Runnable) () -> Glide.with(context)
                                .load(R.drawable.ic_thumb)
                                .apply(new RequestOptions().centerCrop())
                                .into(thumbnail));
                    }
                } else {
                    ((DetailActivity) context).runOnUiThread((Runnable) () -> {
                        ((DetailActivity) context).showPlayer(false);
                        ((DetailActivity) context).initializePlayer(video.getStreams().get("1080p"));
                    });
                }
            }

            @Override
            public void onFailure(Throwable throwable) {
                Log.e("vimeo", "onFailure: " + throwable.getMessage() + " url: " + url);
                //Error handling here
            }
});

URL IS https://vimeo.com/532196328

Extract video from Vimeo API Request?

Can the library extract video from an API request done through the Vimeo Java Networking API
i.e.

String uri = ...; // obtained using one of the above methods
VimeoClient.getInstance().fetchNetworkContent(uri, new ModelCallback<VideoList>(VideoList.class) {
     @Override
     public void success(VideoList videoList) {
          if (videoList != null && videoList.data != null && !videoList.data.isEmpty()) {
               Video video = videoList.data.get(0); // just an example of getting the first video (Vimeo)
          }
     }

     @Override
     public void failure(VimeoError error) {
          // voice the error
     }
});

Can I getStream() from the results of a request done through here? If so...any suggestions on how to approach.

I'm currently building an app, and because I don't have vimeo pro, I have to embed videos. I'm able to get the html: iframe link from under embed in the json response, and apply it to a WebView. But it won't work or play in the phone because mobile phones now don't support flash. Any suggestions on going about that? Also, if you'd like me to reexplain that, I can.

Referer Issue

Thanks for your good library. But I found one issue in your library. It has "Referer" header name spell wrong. Of course your spell is right but http has spell issue so I think we should follow their issue :)
Http uses wrong spell "Referer" so we need to use "Referer" too. Please update soon. Thanks!

Add thumbnail information to Vimeo Video object

Add video thumbnail information to VimeoVideo object.

The API call returns it in a format similar (but not always exactly) to the following:

"thumbs": {
      "640": "https://i.vimeocdn.com/video/xxxx_640.jpg",
      "960": "https://i.vimeocdn.com/video/xxxx_960.jpg",
      "1280": "https://i.vimeocdn.com/video/xxxx_1280.jpg",
      "base": "https://i.vimeocdn.com/video/xxxx"
} 

RxJava

When will library on RxJava?

Remove Android dependencies

The library should have no Android dependencies so it can be used in pure Java/Kotlin libraries as well as Android

VimeoVideo class needs improvement

Currently the class VimeoVideo can only parse videos that have a progressive stream, but it would be a good idea to improve this to switch between the provided hls, dash or progressive streams, some videos don't provide progressive video streams.

New release

Hi!
Could you create a new release please?

I want to get this changes d1e242e

Thank you!

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.