All Projects → renzifeng → Zfplayer

renzifeng / Zfplayer

Licence: mit
Support customization of any player SDK and control layer(支持定制任何播放器SDK和控制层)

Programming Languages

objective c
16641 projects - #2 most used programming language

Projects that are alternatives of or similar to Zfplayer

React Video Renderer
Build custom video players effortless
Stars: ✭ 100 (-98.51%)
Mutual labels:  player, custom
Hlsjs P2p Engine
Let your viewers become your unlimitedly scalable CDN.
Stars: ✭ 759 (-88.66%)
Mutual labels:  player
Rx Player
DASH/Smooth HTML5 Video Player
Stars: ✭ 600 (-91.04%)
Mutual labels:  player
Splarkcontroller
Custom transition between controllers. Settings controller for your iOS app.
Stars: ✭ 693 (-89.65%)
Mutual labels:  custom
Pbjvideoplayer
▶️ video player, simple way to play and stream media on iOS/tvOS
Stars: ✭ 620 (-90.74%)
Mutual labels:  player
Spirit
🙌 Play Spirit animations on the web
Stars: ✭ 719 (-89.26%)
Mutual labels:  player
Bookplayer
Player for your DRM-free audiobooks
Stars: ✭ 588 (-91.22%)
Mutual labels:  player
Primitive
⛏️ ‎ A front-end design toolkit for developing web apps.
Stars: ✭ 783 (-88.3%)
Mutual labels:  custom
Libvlcsharp
Cross-platform .NET/Mono bindings for LibVLC
Stars: ✭ 752 (-88.77%)
Mutual labels:  player
Wmzdialog
功能最多样式最多的弹窗,支持普通/微信底部/日期/地区/日历/选择/编辑/分享/菜单/自定义弹窗等,支持多种动画,链式编程调用(Pop-up windows with the most functions and styles, support normal/WeChat bottom/date/region/calendar/select/edit/share/menu/custom pop-up windows, etc., support multiple animations, chain programming calls)
Stars: ✭ 673 (-89.95%)
Mutual labels:  custom
Yuview
The Free and Open Source Cross Platform YUV Viewer with an advanced analytics toolset
Stars: ✭ 665 (-90.07%)
Mutual labels:  player
Aplayer
🍭 Wow, such a beautiful HTML5 music player
Stars: ✭ 5,887 (-12.06%)
Mutual labels:  player
Django Admin Interface
django's default admin interface made customizable. popup windows replaced by modals. :mage: ⚡️
Stars: ✭ 717 (-89.29%)
Mutual labels:  custom
Webaudiofont
Use full GM set of musical instruments to play MIDI and single sounds or effects. Support for reverberation and equaliser. No plugins, no Flash. Pure HTML5 implementation compatible with desktop and mobile browser. See live examples.
Stars: ✭ 600 (-91.04%)
Mutual labels:  player
Cardpresentationcontroller
Custom UIPresentationController which mimics the behavior of Apple Music UI
Stars: ✭ 778 (-88.38%)
Mutual labels:  custom
Clappr
🎬 An extensible media player for the web.
Stars: ✭ 5,436 (-18.79%)
Mutual labels:  player
Xamarinmediamanager
Cross platform Xamarin plugin to play and control Audio and Video
Stars: ✭ 647 (-90.33%)
Mutual labels:  player
Flutter ijkplayer
ijkplayer for flutter
Stars: ✭ 703 (-89.5%)
Mutual labels:  player
Vue 163 Music
【停止维护】网易云音乐web版,支持PC端常用功能,localStorage保存播放列表
Stars: ✭ 788 (-88.23%)
Mutual labels:  player
Lossless Cut
The swiss army knife of lossless video/audio editing
Stars: ✭ 8,639 (+29.06%)
Mutual labels:  player

ZFPlayer

中文说明

ZFPlayer 4.x迁移指南

Before this, you used ZFPlayer, are you worried about encapsulating avplayer instead of using or modifying the source code to support other players, the control layer is not easy to customize, and so on? In order to solve these problems, I have wrote this player template, for player SDK you can conform the ZFPlayerMediaPlayback protocol, for control view you can conform the ZFPlayerMediaControl protocol, can custom the player and control view.

ZFPlayer思维导图

🔨 Requirements

  • iOS 7+
  • Xcode 8+

📲 Installation

ZFPlayer is available through CocoaPods. To install it,use player template simply add the following line to your Podfile:

pod 'ZFPlayer', '~> 4.0'

Use default controlView simply add the following line to your Podfile:

pod 'ZFPlayer/ControlView', '~> 4.0'

Use AVPlayer simply add the following line to your Podfile:

pod 'ZFPlayer/AVPlayer', '~> 4.0'

Use ijkplayer simply add the following line to your Podfile:

pod 'ZFPlayer/ijkplayer', '~> 4.0'

IJKMediaFramework SDK support cocoapods

边下边播可以参考使用KTVHTTPCache

🐒 Usage

ZFPlayerController

Main classes,normal style initialization and list style initialization (tableView, collection,scrollView)

Normal style initialization

ZFPlayerController *player = [ZFPlayerController playerWithPlayerManager:playerManager containerView:containerView];
ZFPlayerController *player = [[ZFPlayerController alloc] initwithPlayerManager:playerManager containerView:containerView];

List style initialization

ZFPlayerController *player = [ZFPlayerController playerWithScrollView:tableView playerManager:playerManager containerViewTag:containerViewTag];
ZFPlayerController *player = [ZFPlayerController alloc] initWithScrollView:tableView playerManager:playerManager containerViewTag:containerViewTag];
ZFPlayerController *player = [ZFPlayerController playerWithScrollView:scrollView playerManager:playerManager containerView:containerView];
ZFPlayerController *player = [ZFPlayerController alloc] initWithScrollView:tableView playerManager:playerManager containerView:containerView];

ZFPlayerMediaPlayback

For the playerMnager,you must conform ZFPlayerMediaPlayback protocol,custom playermanager can supports any player SDK,such as AVPlayer,MPMoviePlayerController,ijkplayer,vlc,PLPlayerKit,KSYMediaPlayerand so on,you can reference the ZFAVPlayerManagerclass.

Class<ZFPlayerMediaPlayback> *playerManager = ...;

ZFPlayerMediaControl

This class is used to display the control layer, and you must conform the ZFPlayerMediaControl protocol, you can reference the ZFPlayerControlView class.

UIView<ZFPlayerMediaControl> *controlView = ...;
player.controlView = controlView;

📷 Screenshots

Picture effect

👨🏻‍💻 Author

❤️ Contributors

林界:https://github.com/GeekLee609

🙋🏻‍♂️🙋🏻‍♀️寻求志同道合的小伙伴

  • 现寻求志同道合的小伙伴一起维护此框架,有兴趣的小伙伴可以发邮件给我,非常感谢!
  • 如果一切OK,我将开放框架维护权限(github、pod等)

💰 打赏作者

如果ZFPlayer在开发中有帮助到你、如果你需要技术支持或者你需要定制功能,都可以拼命打赏我!

支付.jpg

👮🏻 License

ZFPlayer is available under the MIT license. See the LICENSE file for more info.

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].