Where communities thrive

  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
Repo info
Nam Nguyen Hoai
@lucky_luk3_twitter I suggest you to use RecyclerView inside RecyclerView. ViewPager should not be a 'Child' of a RecyclerView from my point of view ...
@yateeshkota Yeah it is possible. Fully compatible with ExoPlayer MediaSource API
yateesh sharma
hi eneim , i want play video in mute format is it possible in toro 3.4.1
@yateeshkota how many possibility of question you want to ask ? Better you try to download the sample and do some study about it. Dont ask people to keep feed you.
Nam Nguyen Hoai
@yateeshkota You can email me directly with your concern. I'm not troubled answering, but @nizzam is right at the point that you should summary your question in one so I can know what you would like to implement.
Aldo Cano
Hi there
is anyone here?
Nam Nguyen Hoai
Hi @aldocano , sorry for not seeing this, do you have any question?
Aldo Cano
@eneim i have sent u and private message?
Harsh Bhavsar
I am facing this issue : #246 eneim/toro#246
Any one has solution for this
during fast recycleview scrolling.
Nam Nguyen Hoai
I’m looking to that, will have update later to the ticket :D
To make sure, which version of Toro you are using?
Creative Coder Bee
@eneim eneim/toro#242 i have same issue am using toro player of latest
Creative Coder Bee
@eneim eneim/Toro#42

can anyone help me on below issue:

I am using toro container inside nested scroll view, so I want to stop video playback when user scrolls down.

My UI design:

<Toro container/>

Nam Nguyen Hoai
@Mehta2015 Cannot fully understand your view hierachy. Why not just use CoordinatorLayout?

@creativecoderbee : I dont know where do I apply setPlayerSelector, whether to NestedScroll or Toro Container?

@eneim : I have requirement like, I have to display advertisement along with user's posts(post's UI is similar to facebook feed design)

Here is my layout and java files..
layout: https://pastebin.com/bYYHVn61
Java: https://pastebin.com/RR1PQzzY

One more thing @eneim , I have customize Basic list sample, I am not able to get player from BasicPlayerViewHolder PlayerView.getPlayer() for 0 and last position (line no: 75 in below file)

java file: https://pastebin.com/5cJm6a4v

Creative Coder Bee
Nam Nguyen Hoai
will take a look this Friday ... have 3 days out of hospital >.<
Creative Coder Bee
sorry, this was the issue from Exoplayer
hello nam

I have implemented Toro player with default controllers. Referred Toro-basic and Toro-facebook demo for the same.The code works fine with debug environment but creating release apk with applying proguard rules is giving trouble.

Toro version:

Continuously facing the following issue :-

2019-01-29 13:10:08.548 9864-9864/com.otpdetection.example.torovideodemoproject E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.otpdetection.example.torovideodemoproject, PID: 9864
java.lang.IncompatibleClassChangeError: The method 'void com.google.android.exoplayer2.ui.PlayerControlView.hideAfterTimeout()' was expected to be of type direct but instead was found to be of type virtual (declaration of 'com.google.android.exoplayer2.ui.PlayerControlView' appears in /data/app/com.otpdetection.example.torovideodemoproject-1/base.apk)
at com.google.android.exoplayer2.ui.PlayerControlView.show(PlayerControlView.java:564)
at com.google.android.exoplayer2.ui.PlayerView.showController(PlayerView.java:1137)
at com.google.android.exoplayer2.ui.PlayerView.maybeShowController(PlayerView.java:1116)
at com.google.android.exoplayer2.ui.PlayerView.setPlayer(PlayerView.java:563)
at wow.tt.j(PlayableImpl.java:240)
at wow.tt.g(PlayableImpl.java:102)
at wow.tp.g(ExoPlayable.java:47)
at wow.tq.b(ExoPlayerViewHelper.java:108)
at wow.tb.c(VideoViewHolder.java:179)
at wow.uc.a(PlayerManager.java:85)
at wow.uc.a(PlayerManager.java:75)
at im.ene.toro.widget.Container.onScrollStateChanged(Container.java:335)
at im.ene.toro.widget.Container$a.handleMessage(Container.java:796)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:203)
at android.app.ActivityThread.main(ActivityThread.java:6251)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1075)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:936)
2019-01-29 13:10:09.782 31088-31957/? E/Sensors: handleToDriver handle(0).

Added following proguard rule for Toro Library

-optimizationpasses 5
-repackageclasses 'wow'

-keepclassmembernames class com.google.android.exoplayer2.ui.PlayerControlView {
java.lang.Runnable hideAction;
void hideAfterTimeout();

Tried the combination of following proguard rules :-

-keep class com.google.android.exoplayer2. {;}
-keep interface com.google.android.exoplayer2.
-keep enum com.google.android.exoplayer2. {*;}
-dontwarn com.google.android.exoplayer2.

-keep class im.ene.toro. {*;}
-keep interface im.ene.toro.
{ ; }
-keep enum im.ene.toro.
{ ; }
-dontwarn im.ene.toro.

Nam Nguyen Hoai

@sanketmthakare Can you try to add below lines to your proguard?

-keepclassmembernames class com.google.android.exoplayer2.ui.PlayerControlView {
java.lang.Runnable hideAction;
void hideAfterTimeout();

Do not have time to documented them yet ...
Oh I see you have them already ... Hold on
@sanketmthakare Can you tell me which version of Android Studio you used to build this?
hello.. is this issue has been fixed before? eneim/toro#242 .. thanks :)
Mohamed Gaber
first very thanks for yOur effort <3
second ..
iam unable to use this library and i try several time but i fail
i think thats problem in implement library to my project
because i got
  • Try:
    Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

  • Get more help at https://help.gradle.org

13 actionable tasks: 3 executed, 10 up-to-date

iam trying only implement library in my code and see it run :''D
Mohamed Gaber
or ineed any project merge by this library to try it and learn how implement it in my project
any code
iam seeking to see it runsss
Nam Nguyen Hoai
Hi @Unknown1lone_twitter , if your gradle build is failed, it must be something in your dependencies. Please check if you have incompatible versions or something like that.
Hello @eneim you have done a great job working on this library
but it will be great if you can update readme as I found it bit confusing how to go with it.
Rahul Vyas
Does anyone knows how we can improve startup time of videos in recyclerview ? We already have adaptive bitrate videos in our backend
Does anyone face the live stream issue with latest version? I have live .m3u8 url and it only plays 6secs in RecyclerView. But in detail screen(without RecyclerView) it plays continue.
In recycler view I just want to muted video by default
after that if user will play/pause video should unmuted