Giter VIP home page Giter VIP logo

hnxyzhw / kantv-ijkplayer Goto Github PK

View Code? Open in Web Editor NEW

This project forked from zhouwg/kantv

0.0 0.0 0.0 196.95 MB

Android/iOS online TV/radio/movie player based on FFmpeg n4.4, derived from original ijkplayer(https://github.com/bilibili/ijkplayer) , with some enhancements(https://github.com/zhouwg/kantv/blob/kantv/NEWS.md)

License: Apache License 2.0

Shell 9.36% Ruby 0.01% C++ 0.16% C 51.51% Objective-C 17.85% Java 19.40% Makefile 1.72%

kantv-ijkplayer's Introduction

KanTV

KanTV("Kan", aka Chinese PinYin "Kan" or Chinese HanZi "看" or English "watch/listen") , an open source project focus on Kan(aka "Watch/Listen" in English) online TV/radio/music/movie for Android/iOS based on FFmpeg n4.4,derived from original ijkplayer(https://github.com/bilibili/ijkplayer) , with some enhancements(https://github.com/zhouwg/kantv/blob/kantv/NEWS.md)

How to build project for target Android

prerequisites

  • Host OS information:
uname -a

Linux 5.8.0-43-generic #49~20.04.1-Ubuntu SMP Fri Feb 5 09:57:56 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

cat /etc/issue

Ubuntu 20.04.2 LTS \n \l

  • tools & utilities
sudo apt-get update
sudo apt-get install build-essential -y
sudo apt-get install cmake -y
sudo apt-get install curl -y
sudo apt-get install python -y
sudo apt-get install tcl expect -y
sudo apt-get install nginx -y
sudo apt-get install git -y
sudo apt-get install vim -y
sudo apt-get install spawn-fcgi -y
sudo apt-get install u-boot-tools -y
sudo apt-get install ffmpeg -y
sudo apt-get install openssh-client -y

sudo dpkg --add-architecture i386
sudo apt-get install lib32z1

sudo apt-get install android-tools-adb android-tools-fastboot autoconf \
        automake bc bison build-essential ccache cscope curl device-tree-compiler \
        expect flex ftp-upload gdisk acpica-tools libattr1-dev libcap-dev \
        libfdt-dev libftdi-dev libglib2.0-dev libhidapi-dev libncurses5-dev \
        libpixman-1-dev libssl-dev libtool make \
        mtools netcat python-crypto python3-crypto python-pyelftools \
        python3-pycryptodome python3-pyelftools python3-serial \
        rsync unzip uuid-dev xdg-utils xterm xz-utils zlib1g-dev

  sudo apt-get update && sudo apt-get install bazel-3.7.2

  • vim settings

fetch from http://ffmpeg.org/developer.html#Editor-configuration

set ai
set nu
set expandtab
set tabstop=4
set shiftwidth=4
set softtabstop=4
set noundofile
set nobackup
set fileformat=unix 
set undodir=~/.undodir
set cindent
set cinoptions=(0
" Allow tabs in Makefiles.
autocmd FileType make,automake set noexpandtab shiftwidth=8 softtabstop=8
" Trailing whitespace and tabs are forbidden, so highlight them.
highlight ForbiddenWhitespace ctermbg=red guibg=red
match ForbiddenWhitespace /\s\+$\|\t/
" Do not highlight spaces at the end of line while typing on that line.
autocmd InsertEnter * match ForbiddenWhitespace /\t\|\s\+\%#\@<!$/

Before Build

git clone https://github.com/zhouwg/kantv
cd kantv
git checkout kantv


# add these lines to your ~/.bash_profile or ~/.profile
# export ANDROID_SDK=<your sdk path>
# ndk-r21e was used in this project, if you intall from SDK Manager
# export ANDROID_NDK=<your sdk path>/sdk/ndk/21.4.7075529

# add these line to ./android/ijkplayer/local.properties

sdk.dir=<your sdk path>

Build Android APK

step1:build all native libs

./build-all-native-libs.sh clean
./build-all-native-libs.sh init
time ./build-all-native-libs.sh build

step2: build APK

build apk by latest Android Studio IDE

How to build project for target iOS

prerequisites

  • Host OS information:

macos-info

uname -a

Darwin 19.6.0 Darwin kernel Version 19.6.0 x86_64

  • brew and GNU build tools
brew install automake

brew install autoconf

brew install wget

wget http://mirrors.ustc.edu.cn/gnu/libtool/libtool-2.4.6.tar.xz

tar Jxf libtool-2.4.6.tar.xz

cd libtool-2.4.6

./configure --prefix=/usr/local

make;make install

Before Build

git clone https://github.com/zhouwg/kantv
cd kantv
git checkout kantv

Build iOS APP

step1:build all native libs

./build-all-native-libs.sh clean
./build-all-native-libs.sh init
time ./build-all-native-libs.sh build

step2: build APP

build APP by latest Xcode IDE

Support

  • Please do not send e-mail to me. Public technical discussion on github is preferred.
  • feel free to submit issues or new features(focus on Android at the moment), volunteer support would be provided if time permits.

License

Copyright (c) 2017 Bilibili
Licensed under LGPLv2.1 or later
Copyright (c) 2021 maintainer of kantv project

Licensed under Apachev2.0 or later

the original official ijkplayer required features are based on or derives from projects below:

android/ijkplayer-exo is based on or derives from projects below:

android/example is based on or derives from projects below:

ios/IJKMediaDemo is based on or derives from projects below:

ijkplayer's build scripts are based on or derives from projects below:

the kantv required features are based on or derives from projects below:

kantv's build scripts was created and maintained by maintainer of kantv project, thanks to Linux&Android open source community, special thanks to Zhang Rui([email protected]) & Bilibili for the born of original great ijkplayer.

Commercial Use

ijkplayer is licensed under LGPLv2.1 or later, so itself is free for commercial use under LGPLv2.1 or later

But ijkplayer is also based on other different projects under various licenses, which I have no idea whether they are compatible to each other or to your product.

IANAL, you should always ask your lawyer for these stuffs before use it in your product.

kantv is licensed under Apachev2.0 or later, so itself is free for commercial use UNDER Apachev2.0 or later

ChangeLog

ChangeLog

Contribution

If you want to contribute to Project KanTV, be sure to review the ChangeLog and NEWS and build script and opening issues.

We use GitHub issues for tracking requests and bugs, please see how to submit issue in this project .

KanTV Android APK download

The KanTV apk is about 10M (mainly because the apk integrates FFmpeg + chinadrm client subsystem libraries (only arm64-v8a for reduce apk's size); or could be built the KanTV apk from source code according to this README.

Github

KanTV iOS APP download

TBD

kantv-ijkplayer's People

Contributors

bbcallen avatar raymond1012 avatar xinzhengzhang avatar zhouwg avatar zccicy avatar yuvesy avatar chodison avatar tewilove avatar yrom avatar ilibilib avatar ctiao avatar lowlevel-mboton avatar cwq avatar xionxiao avatar gdier avatar xqq avatar stuckless avatar matrixreload avatar linjiansheng avatar epruseal avatar shingwasix avatar chrisjenx avatar zmzhuai avatar lsk-boy-f avatar willerce avatar teddyla avatar tatowilson avatar nxzhou91 avatar midoreigh avatar jovisayhehe avatar

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.