One of the things that interested me most recently is creating a fully customized video player. Obviously, nowadays we have services that provide w...
For further actions, you may consider blocking this person and/or reporting abuse
Thanks @franciscomendes10866 , this helped me in a project I am working on, Thanks again
I really appreciate your time in this post!, Thank you.
That feels like too many useStates, and could more easily be combined into a single reducer and/or a custom hook
Good tip, the code is definitely easier to read. Thank you! 🙌
css style not work github code ?
How so do you mean?
It is not working? In which component?
This isn't working in the progress bar even after pasting your code into the temple and the same libraries. Please provide a GitHub link please, it makes solving these issues easier.
Css my friend
I would recommend instead of using a large state object, you instead make use of the useReducer hook, this would also simplify your handlers by bundling them into the reducer
It's a good approach 🧐 Thanks 🙌
hi, somehow the video is not showing on mobile safari / chrome. anyone who had the same problem and a solution?
Thanks a lot bro! This article is really good and I learned more thing from it.
Thank you very much! I am happy to know! 💪
i want to add full Screen button is there any solution for full screen?
Hi! You can make it by adding to useVideoPlayer hook following func:
Then you can run this func by clicking on the desired icon.
There seems to be inconsistency between the video element and the input type range element. Exactly like in the article code when triggering handleVideoProgress, the time calculated for progress seems completely inconsistent (event.target.value is always close to zero),
also player css doesn't seem to work very well with elements:
"Pause" text and "unmute" text instead of buttons because seems there isn't class for them in the sample player.css.
(even if the graphics don't bother me that much at the moment)
Ok it's my fault, I was too superficial.
In my case it was all about CSS.
The problem lies in having to deal with the pseudo elements (both webkit and moz and ms), to be managed even when Fullscreen API is requested (always managing the different browsers)
Great article. Very easy to understand and follow
Thank you very much for your feedback! 👊
It,s great! thanks man.
Thanks for the feedback! 👊
It is not getting deployed in netlify
Great article, but this approach is bad for performance though since the App component (and the video element) keep getting re-rendered on every video frame
I want to add Zoom In and Zoom out button is there any solution for it?
hmmm, the toggleMute and handleVideoSpeed are coming up undefined which is weird. I followed step by step. Any suggestions of things to check?
How to play a youtube video by its link in this player