add ckplayer & edit my docker commit
This commit is contained in:
parent
829ed9fb6d
commit
45b119c1f9
67
.github/workflows/main.yaml
vendored
67
.github/workflows/main.yaml
vendored
@ -10,37 +10,37 @@ on:
|
|||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
# linters
|
# linters
|
||||||
lint-frontend:
|
# lint-frontend:
|
||||||
runs-on: ubuntu-latest
|
# runs-on: ubuntu-latest
|
||||||
steps:
|
# steps:
|
||||||
- uses: actions/checkout@v2
|
# - uses: actions/checkout@v2
|
||||||
- uses: actions/setup-node@v2
|
# - uses: actions/setup-node@v2
|
||||||
with:
|
# with:
|
||||||
node-version: '14'
|
# node-version: '14'
|
||||||
- run: make lint-frontend
|
# - run: make lint-frontend
|
||||||
lint-backend:
|
# lint-backend:
|
||||||
runs-on: ubuntu-latest
|
# runs-on: ubuntu-latest
|
||||||
steps:
|
# steps:
|
||||||
- uses: actions/checkout@v2
|
# - uses: actions/checkout@v2
|
||||||
- uses: actions/setup-go@v2
|
# - uses: actions/setup-go@v2
|
||||||
with:
|
# with:
|
||||||
go-version: 1.17
|
# go-version: 1.17
|
||||||
- run: make lint-backend
|
# - run: make lint-backend
|
||||||
lint-commints:
|
# lint-commints:
|
||||||
runs-on: ubuntu-latest
|
# runs-on: ubuntu-latest
|
||||||
steps:
|
# steps:
|
||||||
- uses: actions/checkout@v2
|
# - uses: actions/checkout@v2
|
||||||
with:
|
# with:
|
||||||
fetch-depth: 0
|
# fetch-depth: 0
|
||||||
- uses: actions/setup-node@v2
|
# - uses: actions/setup-node@v2
|
||||||
with:
|
# with:
|
||||||
node-version: '14'
|
# node-version: '14'
|
||||||
- run: make lint-commits
|
# - run: make lint-commits
|
||||||
lint:
|
# lint:
|
||||||
runs-on: ubuntu-latest
|
# runs-on: ubuntu-latest
|
||||||
needs: [lint-frontend, lint-backend, lint-commints]
|
# needs: [lint-frontend, lint-backend, lint-commints]
|
||||||
steps:
|
# steps:
|
||||||
- run: echo "done"
|
# - run: echo "done"
|
||||||
|
|
||||||
# tests
|
# tests
|
||||||
test-frontend:
|
test-frontend:
|
||||||
@ -68,7 +68,8 @@ jobs:
|
|||||||
# release
|
# release
|
||||||
release:
|
release:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
needs: [lint, test]
|
# needs: [lint, test]
|
||||||
|
needs: [test]
|
||||||
if: startsWith(github.event.ref, 'refs/tags/v')
|
if: startsWith(github.event.ref, 'refs/tags/v')
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
@ -97,4 +98,4 @@ jobs:
|
|||||||
version: latest
|
version: latest
|
||||||
args: release --rm-dist
|
args: release --rm-dist
|
||||||
env:
|
env:
|
||||||
GITHUB_TOKEN: ${{ secrets.GH_PAT }}
|
GITHUB_TOKEN: ${{ secrets.GH_PAT }}
|
||||||
|
|||||||
@ -7,7 +7,7 @@ build:
|
|||||||
env:
|
env:
|
||||||
- CGO_ENABLED=0
|
- CGO_ENABLED=0
|
||||||
ldflags:
|
ldflags:
|
||||||
- -s -w -X github.com/filebrowser/filebrowser/v2/version.Version={{ .Version }} -X github.com/filebrowser/filebrowser/v2/version.CommitSHA={{ .ShortCommit }}
|
- -s -w -X github.com/langren1353/filebrowser/v2/version.Version={{ .Version }} -X github.com/langren1353/filebrowser/v2/version.CommitSHA={{ .ShortCommit }}
|
||||||
main: main.go
|
main: main.go
|
||||||
binary: filebrowser
|
binary: filebrowser
|
||||||
goos:
|
goos:
|
||||||
@ -53,8 +53,8 @@ dockers:
|
|||||||
goos: linux
|
goos: linux
|
||||||
goarch: amd64
|
goarch: amd64
|
||||||
image_templates:
|
image_templates:
|
||||||
- "filebrowser/filebrowser:{{ .Tag }}-amd64"
|
- "langren1353/filebrowser-ckplayer:{{ .Tag }}-amd64"
|
||||||
- "filebrowser/filebrowser:v{{ .Major }}-amd64"
|
- "langren1353/filebrowser-ckplayer:v{{ .Major }}-amd64"
|
||||||
extra_files:
|
extra_files:
|
||||||
- docker/root
|
- docker/root
|
||||||
-
|
-
|
||||||
@ -71,8 +71,8 @@ dockers:
|
|||||||
goos: linux
|
goos: linux
|
||||||
goarch: arm64
|
goarch: arm64
|
||||||
image_templates:
|
image_templates:
|
||||||
- "filebrowser/filebrowser:{{ .Tag }}-arm64"
|
- "langren1353/filebrowser-ckplayer:{{ .Tag }}-arm64"
|
||||||
- "filebrowser/filebrowser:v{{ .Major }}-arm64"
|
- "langren1353/filebrowser-ckplayer:v{{ .Major }}-arm64"
|
||||||
extra_files:
|
extra_files:
|
||||||
- docker/root
|
- docker/root
|
||||||
-
|
-
|
||||||
@ -90,8 +90,8 @@ dockers:
|
|||||||
goarch: arm
|
goarch: arm
|
||||||
goarm: '6'
|
goarm: '6'
|
||||||
image_templates:
|
image_templates:
|
||||||
- "filebrowser/filebrowser:{{ .Tag }}-armv6"
|
- "langren1353/filebrowser-ckplayer:{{ .Tag }}-armv6"
|
||||||
- "filebrowser/filebrowser:v{{ .Major }}-armv6"
|
- "langren1353/filebrowser-ckplayer:v{{ .Major }}-armv6"
|
||||||
extra_files:
|
extra_files:
|
||||||
- docker/root
|
- docker/root
|
||||||
-
|
-
|
||||||
@ -109,38 +109,38 @@ dockers:
|
|||||||
goarch: arm
|
goarch: arm
|
||||||
goarm: '7'
|
goarm: '7'
|
||||||
image_templates:
|
image_templates:
|
||||||
- "filebrowser/filebrowser:{{ .Tag }}-armv7"
|
- "langren1353/filebrowser-ckplayer:{{ .Tag }}-armv7"
|
||||||
- "filebrowser/filebrowser:v{{ .Major }}-armv7"
|
- "langren1353/filebrowser-ckplayer:v{{ .Major }}-armv7"
|
||||||
extra_files:
|
extra_files:
|
||||||
- docker/root
|
- docker/root
|
||||||
docker_manifests:
|
docker_manifests:
|
||||||
- name_template: "filebrowser/filebrowser:latest"
|
- name_template: "langren1353/filebrowser-ckplayer:latest"
|
||||||
image_templates:
|
image_templates:
|
||||||
- "filebrowser/filebrowser:{{ .Tag }}-amd64"
|
- "langren1353/filebrowser-ckplayer:{{ .Tag }}-amd64"
|
||||||
- "filebrowser/filebrowser:{{ .Tag }}-arm64"
|
- "langren1353/filebrowser-ckplayer:{{ .Tag }}-arm64"
|
||||||
- "filebrowser/filebrowser:{{ .Tag }}-armv6"
|
- "langren1353/filebrowser-ckplayer:{{ .Tag }}-armv6"
|
||||||
- "filebrowser/filebrowser:{{ .Tag }}-armv7"
|
- "langren1353/filebrowser-ckplayer:{{ .Tag }}-armv7"
|
||||||
- name_template: "filebrowser/filebrowser:{{ .Tag }}"
|
- name_template: "langren1353/filebrowser-ckplayer:{{ .Tag }}"
|
||||||
image_templates:
|
image_templates:
|
||||||
- "filebrowser/filebrowser:{{ .Tag }}-amd64"
|
- "langren1353/filebrowser-ckplayer:{{ .Tag }}-amd64"
|
||||||
- "filebrowser/filebrowser:{{ .Tag }}-arm64"
|
- "langren1353/filebrowser-ckplayer:{{ .Tag }}-arm64"
|
||||||
- "filebrowser/filebrowser:{{ .Tag }}-armv6"
|
- "langren1353/filebrowser-ckplayer:{{ .Tag }}-armv6"
|
||||||
- "filebrowser/filebrowser:{{ .Tag }}-armv7"
|
- "langren1353/filebrowser-ckplayer:{{ .Tag }}-armv7"
|
||||||
- name_template: "filebrowser/filebrowser:v{{ .Major }}"
|
- name_template: "langren1353/filebrowser-ckplayer:v{{ .Major }}"
|
||||||
image_templates:
|
image_templates:
|
||||||
- "filebrowser/filebrowser:v{{ .Major }}-amd64"
|
- "langren1353/filebrowser-ckplayer:v{{ .Major }}-amd64"
|
||||||
- "filebrowser/filebrowser:v{{ .Major }}-arm64"
|
- "langren1353/filebrowser-ckplayer:v{{ .Major }}-arm64"
|
||||||
- "filebrowser/filebrowser:v{{ .Major }}-armv6"
|
- "langren1353/filebrowser-ckplayer:v{{ .Major }}-armv6"
|
||||||
- "filebrowser/filebrowser:v{{ .Major }}-armv7"
|
- "langren1353/filebrowser-ckplayer:v{{ .Major }}-armv7"
|
||||||
brews:
|
#brews:
|
||||||
- name: filebrowser
|
# - name: filebrowser-ckplayer
|
||||||
tap:
|
# tap:
|
||||||
owner: filebrowser
|
# owner: langren1353
|
||||||
name: homebrew-tap
|
# name: homebrew-tap
|
||||||
folder: Formula
|
# folder: Formula
|
||||||
homepage: https://filebrowser.org
|
# homepage: https://filebrowser.org
|
||||||
commit_author:
|
# commit_author:
|
||||||
name: FileBrowser Robot
|
# name: FileBrowser Robot
|
||||||
email: robot@filebrowser.org
|
# email: robot@filebrowser.org
|
||||||
description: File Browser is a create-your-own-cloud-kind of software where you can install it on a server, direct it to a path and then access your files through a nice web interface
|
# description: File Browser is a create-your-own-cloud-kind of software where you can install it on a server, direct it to a path and then access your files through a nice web interface
|
||||||
license: "MIT"
|
# license: "MIT"
|
||||||
|
|||||||
6
Makefile
6
Makefile
@ -10,7 +10,7 @@ build: | build-frontend build-backend ## Build binary
|
|||||||
|
|
||||||
.PHONY: build-frontend
|
.PHONY: build-frontend
|
||||||
build-frontend: ## Build frontend
|
build-frontend: ## Build frontend
|
||||||
$Q cd frontend && npm ci && npm run build
|
$Q cd frontend && yarn && npm run build
|
||||||
|
|
||||||
.PHONY: build-backend
|
.PHONY: build-backend
|
||||||
build-backend: ## Build backend
|
build-backend: ## Build backend
|
||||||
@ -31,7 +31,7 @@ lint: lint-frontend lint-backend lint-commits ## Run all linters
|
|||||||
|
|
||||||
.PHONY: lint-frontend
|
.PHONY: lint-frontend
|
||||||
lint-frontend: ## Run frontend linters
|
lint-frontend: ## Run frontend linters
|
||||||
$Q cd frontend && npm ci && npm run lint
|
$Q cd frontend && yarn && npm run lint
|
||||||
|
|
||||||
.PHONY: lint-backend
|
.PHONY: lint-backend
|
||||||
lint-backend: | $(golangci-lint) ## Run backend linters
|
lint-backend: | $(golangci-lint) ## Run backend linters
|
||||||
@ -65,4 +65,4 @@ help: ## Show this help
|
|||||||
@awk 'BEGIN {FS = ":.*?## "} { \
|
@awk 'BEGIN {FS = ":.*?## "} { \
|
||||||
if (/^[a-zA-Z_-]+:.*?##.*$$/) {printf " ${YELLOW}%-20s${GREEN}%s${RESET}\n", $$1, $$2} \
|
if (/^[a-zA-Z_-]+:.*?##.*$$/) {printf " ${YELLOW}%-20s${GREEN}%s${RESET}\n", $$1, $$2} \
|
||||||
else if (/^## .*$$/) {printf " ${CYAN}%s${RESET}\n", substr($$1,4)} \
|
else if (/^## .*$$/) {printf " ${CYAN}%s${RESET}\n", substr($$1,4)} \
|
||||||
}' $(MAKEFILE_LIST)
|
}' $(MAKEFILE_LIST)
|
||||||
|
|||||||
9016
frontend/public/ckplayer/ckplayer.js
Normal file
9016
frontend/public/ckplayer/ckplayer.js
Normal file
File diff suppressed because it is too large
Load Diff
105
frontend/public/ckplayer/ckplayer.json
Normal file
105
frontend/public/ckplayer/ckplayer.json
Normal file
@ -0,0 +1,105 @@
|
|||||||
|
{
|
||||||
|
"config": {
|
||||||
|
"fullInteractive": true,
|
||||||
|
"delay": 30,
|
||||||
|
"timeFrequency": 100,
|
||||||
|
"autoLoad": true,
|
||||||
|
"loadNext": 0,
|
||||||
|
"definition": true,
|
||||||
|
"subtitle": true,
|
||||||
|
"playbackRate": true,
|
||||||
|
"smartRemove": true,
|
||||||
|
"bufferTime": 200,
|
||||||
|
"rtmpBufferTime": 0,
|
||||||
|
"click": true,
|
||||||
|
"doubleClick": true,
|
||||||
|
"doubleClickInterval": 200,
|
||||||
|
"keyDown": {
|
||||||
|
"space": true,
|
||||||
|
"left": true,
|
||||||
|
"right": true,
|
||||||
|
"up": true,
|
||||||
|
"down": true
|
||||||
|
},
|
||||||
|
"timeJump": 10,
|
||||||
|
"volumeJump": 0.1,
|
||||||
|
"timeScheduleAdjust": 1,
|
||||||
|
"previewDefaultLoad": true,
|
||||||
|
"promptSpotTime": true,
|
||||||
|
"buttonMode": {
|
||||||
|
"player": false,
|
||||||
|
"controlBar": false,
|
||||||
|
"timeSchedule": true,
|
||||||
|
"volumeSchedule": true
|
||||||
|
},
|
||||||
|
"liveAndVod": {
|
||||||
|
"open": false,
|
||||||
|
"vodTime": 2,
|
||||||
|
"start": "start"
|
||||||
|
},
|
||||||
|
"usehardwareeecoder": false,
|
||||||
|
"errorNum": 1,
|
||||||
|
"playCorrect": false,
|
||||||
|
"timeCorrect": true,
|
||||||
|
"m3u8Definition": {},
|
||||||
|
"m3u8MaxBufferLength": 30,
|
||||||
|
"split": ",",
|
||||||
|
"timeStamp": "",
|
||||||
|
"videoDrawImage": false,
|
||||||
|
"errorTime": 10,
|
||||||
|
"addCallback": "adPlay,adPause,playOrPause,videoPlay,videoPause,videoMute,videoEscMute,videoClear,changeVolume,fastBack,fastNext,videoSeek,newVideo,getMetaDate,videoRotation,videoBrightness,videoContrast,videoSaturation,videoHue,videoZoom,videoProportion,videoError,addListener,removeListener,addElement,getElement,deleteElement,elementShow,animate,animateResume,animatePause,deleteAnimate,changeConfig,getConfig,openUrl,fullScreen,quitFullScreen,switchFull,screenshot,custom,changeControlBarShow,getCurrentSrc,changeDefinition,changeSubtitles,changeSubtitlesSize"
|
||||||
|
},
|
||||||
|
"menu": {
|
||||||
|
"ckkey": "97b6a7181e0bdbe69e692383e1071ba1",
|
||||||
|
"name": "ckplayer",
|
||||||
|
"link": "http://www.ckplayer.com",
|
||||||
|
"domain": "",
|
||||||
|
"version": "version:X2",
|
||||||
|
"more":[]
|
||||||
|
},
|
||||||
|
"languagePath": "",
|
||||||
|
"stylePath": "",
|
||||||
|
"style": {
|
||||||
|
"loading": {
|
||||||
|
"file": "data:image/gif;base64,R0lGODlhPAAeALMIAPRqMPRmK/RqMfNkKPRyPPV+TPRpL/NfIf///wAAAAAAAAAAAAAAAAAAAAAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh/wtYTVAgRGF0YVhNUDw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTM4IDc5LjE1OTgyNCwgMjAxNi8wOS8xNC0wMTowOTowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjg3OTQ3RDUzRTEwMTExRUFCNkQxRDI3Mzc1NTY5OUQ3IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjg3OTQ3RDU0RTEwMTExRUFCNkQxRDI3Mzc1NTY5OUQ3Ij4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6ODc5NDdENTFFMTAxMTFFQUI2RDFEMjczNzU1Njk5RDciIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6ODc5NDdENTJFMTAxMTFFQUI2RDFEMjczNzU1Njk5RDciLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz4B//79/Pv6+fj39vX08/Lx8O/u7ezr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",
|
||||||
|
"fileH5": "data:image/gif;base64,R0lGODlhPAAeALMIAPRqMPRmK/RqMfNkKPRyPPV+TPRpL/NfIf///wAAAAAAAAAAAAAAAAAAAAAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh/wtYTVAgRGF0YVhNUDw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTM4IDc5LjE1OTgyNCwgMjAxNi8wOS8xNC0wMTowOTowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjg3OTQ3RDUzRTEwMTExRUFCNkQxRDI3Mzc1NTY5OUQ3IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjg3OTQ3RDU0RTEwMTExRUFCNkQxRDI3Mzc1NTY5OUQ3Ij4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6ODc5NDdENTFFMTAxMTFFQUI2RDFEMjczNzU1Njk5RDciIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6ODc5NDdENTJFMTAxMTFFQUI2RDFEMjczNzU1Njk5RDciLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz4B//79/Pv6+fj39vX08/Lx8O/u7ezr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",
|
||||||
|
"align": "center",
|
||||||
|
"vAlign": "middle",
|
||||||
|
"width": 60,
|
||||||
|
"height": 30,
|
||||||
|
"offsetX": -30,
|
||||||
|
"offsetY": -15
|
||||||
|
},
|
||||||
|
"logo": {
|
||||||
|
"file": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFcAAAAUCAYAAAD4BKGuAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAVTSURBVHja1Fl/aJVVGP4cw/mH5tUWi3I53cA0WbeIzMgaq6lQoVawm0S6glHhIKM/TELICotqCxMSGWQRdFfRLEhc9mMxqA0rbdS2wsV0GkZXuaKUWlHvgeeNh7f3u1du3Ft74eGcnXu+c873vD/Pt0nZbDZyZL2gWZAQTBH8IjggeEjgPZASPIB+g/P7EsGT6J/BfHfjHFIv2Jpjj/+dlDskvCm42Jk7X3C7YJOgw/z2oOBGwdEYRW0RVAjOCZ4ugNggqwU3CTLRBJFyQ+xuwVRY14igB78tE9QKpgmeEHwkGKRnq9AeMesHRWwEsYGUxwSdBZ51ecweE4Lct0DsOVjaZvptA8jfC4JfghWpXIJ2jMY+EDShf1pwh6DvX5x1GtpDE43cNFlfhyFWpQ9xd5FgFo3fRi++C+2nCBNBRgU3O6RsEyyEQv4QLMb4CcE9RlFBLqS1WZ6BZ83A35ofVhuvfE5QJrjWebdgCJOx51qM1QgewbMzsO57MDQrB9DeC8ObHd5Xyb2eiNiQQxmtgkZBr+OuZwV7BIcF1RgbF1wTE2MbEccX48VY9sMzBilhTke/m+b1Q9lefpgruI7OsYhIGzPJuAnn3+6EM7vu1YKl5vkrYRSfCGZivCxoMklk7M5j6eFlXyRNRSAvAoFf0Fo/CC7LkbwuQjsZsf0qwbuI9wlYgIqGl6NEzDYibJ/gbmAfxpKoMDRcaSK8xZzjZbK+NMhSYoNSngV5e+ksKXp+JdqZwDDmdpSbsqa9gNAyi5JalSGv3iQ+dtNK9HvI+sNBh2AhvNYVaH+msRtAdsa4ehoKCuQsoP2PY8+kCSkJ5IRWjD2FZ4/BOFSWYv9KhI40eUKQ31CqdnLM1c1OOnHufKSS+iEZvgHNhji8g1yT5VZKdCnHO+ajvrYK/I7GkuSWjwvq8Mzl5M79NF89aCHaBNXmWv0sQVUUZEDwsDnbr2i9s31lKyGuFs7kITEBC+snJaToRYIFrRN0CeYgoSUxJ23WUm85eB41b4IUuIvGtyIMVMY8lzHGMoYworF7J/onKYk10/wVQL6zXYr+Zq9aOEhuXZPDel8Q3If+HMzTeHPKlForEK+mws3SMfH2UMxNLIJbasKsoIQZwVLbKFkN4T1C3HxUMM+EkCAfgjwNV40Y304KriOP+jIHqa+jvYsqnH/kqzKaGCFZxWnoTqooxky8+dHUsOGwr6Jfi9jmlVVTHGLnot9L3qGWqCToWYYRF5fDa96mtb93yI2g8B0IWxlTHWmi/hOG00D4mEJfJ5WhQX7ySCsDUaNkJeud6+sgXCgs3OLEG2/xdZSh10JBeiB1zQU0HuQdSib60rOdm9kFToIL8hmFiRHzm1YM0ylet5k579OFpcUk4I0oD0/QuJ7tcBy5ERY6ixdrh5uNwN3bUV7pd4E+J958HmPxbRRydqK/in6vxj5aH9din/udEPKtuU1GqBL24xJwBInQWiHLcbQVKBXTzkVpHP0tWHsIpZUqPeWcrScXuX2ImRkqlufBhdQl15ig3WLKH0/SeAmtD+uprBqGx1ThhlWN5LKG4lcNKbDblFDjVDU0wWK7yLLqnPNk6cKzKsfXt1GQmQQXSuwymhd3tr9lkvPJMUV152kc2PsmUEMxtzdPRk2SNX2DQ3Vhr02Is18LXjHVAz/bG0NEK8johus3UBiwyfkYlDkQUyLaWrwZBrbHMaB8Z3PJLaYk8IIVKKPSJdxbv3ecynNzLNr33GKLV1YVW4IyfycXfq0UxP4X5HJdXCqX4Wv0AKqYkkipw4LG6WxMNi+GhAtH+M/K8wVe7wuWvwQYAFT+UsGCXmX3AAAAAElFTkSuQmCC",
|
||||||
|
"align": "right",
|
||||||
|
"vAlign": "top",
|
||||||
|
"width": 87,
|
||||||
|
"height": 30,
|
||||||
|
"offsetX": -100,
|
||||||
|
"offsetY": 10
|
||||||
|
},
|
||||||
|
"advertisement": {
|
||||||
|
"time": 5,
|
||||||
|
"method": "get",
|
||||||
|
"videoForce": false,
|
||||||
|
"videoVolume": 0.8,
|
||||||
|
"skipButtonShow": true,
|
||||||
|
"linkButtonShow": true,
|
||||||
|
"muteButtonShow": true,
|
||||||
|
"closeButtonShow": true,
|
||||||
|
"closeOtherButtonShow": true,
|
||||||
|
"frontSkipButtonDelay": 2,
|
||||||
|
"insertSkipButtonDelay": 0,
|
||||||
|
"endSkipButtonDelay": 0,
|
||||||
|
"frontStretched": 1,
|
||||||
|
"insertStretched": 2,
|
||||||
|
"pauseStretched": 2,
|
||||||
|
"endStretched": 2
|
||||||
|
},
|
||||||
|
"videoDefault": {
|
||||||
|
"defaultWidth": 4,
|
||||||
|
"defaultHeight": 3
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
16
frontend/public/ckplayer/ckplayer.min.js
vendored
Normal file
16
frontend/public/ckplayer/ckplayer.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
105
frontend/public/ckplayer/ckplayer.mobile.json
Normal file
105
frontend/public/ckplayer/ckplayer.mobile.json
Normal file
@ -0,0 +1,105 @@
|
|||||||
|
{
|
||||||
|
"config": {
|
||||||
|
"fullInteractive": true,
|
||||||
|
"delay": 30,
|
||||||
|
"timeFrequency": 100,
|
||||||
|
"autoLoad": true,
|
||||||
|
"loadNext": 0,
|
||||||
|
"definition": false,
|
||||||
|
"subtitle": false,
|
||||||
|
"playbackRate": true,
|
||||||
|
"smartRemove": true,
|
||||||
|
"bufferTime": 200,
|
||||||
|
"rtmpBufferTime": 0,
|
||||||
|
"click": true,
|
||||||
|
"doubleClick": true,
|
||||||
|
"doubleClickInterval": 200,
|
||||||
|
"keyDown": {
|
||||||
|
"space": true,
|
||||||
|
"left": true,
|
||||||
|
"right": true,
|
||||||
|
"up": true,
|
||||||
|
"down": true
|
||||||
|
},
|
||||||
|
"timeJump": 10,
|
||||||
|
"volumeJump": 0.1,
|
||||||
|
"timeScheduleAdjust": "1",
|
||||||
|
"previewDefaultLoad": true,
|
||||||
|
"promptSpotTime": true,
|
||||||
|
"buttonMode": {
|
||||||
|
"player": false,
|
||||||
|
"controlBar": false,
|
||||||
|
"timeSchedule": true,
|
||||||
|
"volumeSchedule": true
|
||||||
|
},
|
||||||
|
"liveAndVod": {
|
||||||
|
"open": false,
|
||||||
|
"vodTime": 2,
|
||||||
|
"start": "start"
|
||||||
|
},
|
||||||
|
"usehardwareeecoder": false,
|
||||||
|
"errorNum": 1,
|
||||||
|
"playCorrect": false,
|
||||||
|
"timeCorrect": true,
|
||||||
|
"m3u8Definition": {},
|
||||||
|
"m3u8MaxBufferLength": 30,
|
||||||
|
"split": ",",
|
||||||
|
"timeStamp": "",
|
||||||
|
"videoDrawImage": false,
|
||||||
|
"errorTime": 10,
|
||||||
|
"addCallback": "adPlay,adPause,playOrPause,videoPlay,videoPause,videoMute,videoEscMute,videoClear,changeVolume,fastBack,fastNext,videoSeek,newVideo,getMetaDate,videoRotation,videoBrightness,videoContrast,videoSaturation,videoHue,videoZoom,videoProportion,videoError,addListener,removeListener,addElement,getElement,deleteElement,elementShow,animate,animateResume,animatePause,deleteAnimate,changeConfig,getConfig,openUrl,fullScreen,quitFullScreen,switchFull,screenshot,custom,changeControlBarShow,getCurrentSrc,changeDefinition,changeSubtitles,changeSubtitlesSize"
|
||||||
|
},
|
||||||
|
"menu": {
|
||||||
|
"ckkey": "97b6a7181e0bdbe69e692383e1071ba1",
|
||||||
|
"name": "ckplayer",
|
||||||
|
"link": "http://www.ckplayer.com",
|
||||||
|
"domain": "",
|
||||||
|
"version": "version:X2",
|
||||||
|
"more":[]
|
||||||
|
},
|
||||||
|
"languagePath": "",
|
||||||
|
"stylePath": "",
|
||||||
|
"style": {
|
||||||
|
"loading": {
|
||||||
|
"file": "data:image/gif;base64,R0lGODlhPAAeALMIAPRqMPRmK/RqMfNkKPRyPPV+TPRpL/NfIf///wAAAAAAAAAAAAAAAAAAAAAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh/wtYTVAgRGF0YVhNUDw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTM4IDc5LjE1OTgyNCwgMjAxNi8wOS8xNC0wMTowOTowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjg3OTQ3RDUzRTEwMTExRUFCNkQxRDI3Mzc1NTY5OUQ3IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjg3OTQ3RDU0RTEwMTExRUFCNkQxRDI3Mzc1NTY5OUQ3Ij4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6ODc5NDdENTFFMTAxMTFFQUI2RDFEMjczNzU1Njk5RDciIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6ODc5NDdENTJFMTAxMTFFQUI2RDFEMjczNzU1Njk5RDciLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz4B//79/Pv6+fj39vX08/Lx8O/u7ezr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",
|
||||||
|
"fileH5": "data:image/gif;base64,R0lGODlhPAAeALMIAPRqMPRmK/RqMfNkKPRyPPV+TPRpL/NfIf///wAAAAAAAAAAAAAAAAAAAAAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh/wtYTVAgRGF0YVhNUDw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTM4IDc5LjE1OTgyNCwgMjAxNi8wOS8xNC0wMTowOTowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjg3OTQ3RDUzRTEwMTExRUFCNkQxRDI3Mzc1NTY5OUQ3IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjg3OTQ3RDU0RTEwMTExRUFCNkQxRDI3Mzc1NTY5OUQ3Ij4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6ODc5NDdENTFFMTAxMTFFQUI2RDFEMjczNzU1Njk5RDciIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6ODc5NDdENTJFMTAxMTFFQUI2RDFEMjczNzU1Njk5RDciLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz4B//79/Pv6+fj39vX08/Lx8O/u7ezr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",
|
||||||
|
"align": "center",
|
||||||
|
"vAlign": "middle",
|
||||||
|
"width": 60,
|
||||||
|
"height": 30,
|
||||||
|
"offsetX": -30,
|
||||||
|
"offsetY": -15
|
||||||
|
},
|
||||||
|
"logo": {
|
||||||
|
"file": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFcAAAAUCAYAAAD4BKGuAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAVTSURBVHja1Fl/aJVVGP4cw/mH5tUWi3I53cA0WbeIzMgaq6lQoVawm0S6glHhIKM/TELICotqCxMSGWQRdFfRLEhc9mMxqA0rbdS2wsV0GkZXuaKUWlHvgeeNh7f3u1du3Ft74eGcnXu+c873vD/Pt0nZbDZyZL2gWZAQTBH8IjggeEjgPZASPIB+g/P7EsGT6J/BfHfjHFIv2Jpjj/+dlDskvCm42Jk7X3C7YJOgw/z2oOBGwdEYRW0RVAjOCZ4ugNggqwU3CTLRBJFyQ+xuwVRY14igB78tE9QKpgmeEHwkGKRnq9AeMesHRWwEsYGUxwSdBZ51ecweE4Lct0DsOVjaZvptA8jfC4JfghWpXIJ2jMY+EDShf1pwh6DvX5x1GtpDE43cNFlfhyFWpQ9xd5FgFo3fRi++C+2nCBNBRgU3O6RsEyyEQv4QLMb4CcE9RlFBLqS1WZ6BZ83A35ofVhuvfE5QJrjWebdgCJOx51qM1QgewbMzsO57MDQrB9DeC8ObHd5Xyb2eiNiQQxmtgkZBr+OuZwV7BIcF1RgbF1wTE2MbEccX48VY9sMzBilhTke/m+b1Q9lefpgruI7OsYhIGzPJuAnn3+6EM7vu1YKl5vkrYRSfCGZivCxoMklk7M5j6eFlXyRNRSAvAoFf0Fo/CC7LkbwuQjsZsf0qwbuI9wlYgIqGl6NEzDYibJ/gbmAfxpKoMDRcaSK8xZzjZbK+NMhSYoNSngV5e+ksKXp+JdqZwDDmdpSbsqa9gNAyi5JalSGv3iQ+dtNK9HvI+sNBh2AhvNYVaH+msRtAdsa4ehoKCuQsoP2PY8+kCSkJ5IRWjD2FZ4/BOFSWYv9KhI40eUKQ31CqdnLM1c1OOnHufKSS+iEZvgHNhji8g1yT5VZKdCnHO+ajvrYK/I7GkuSWjwvq8Mzl5M79NF89aCHaBNXmWv0sQVUUZEDwsDnbr2i9s31lKyGuFs7kITEBC+snJaToRYIFrRN0CeYgoSUxJ23WUm85eB41b4IUuIvGtyIMVMY8lzHGMoYworF7J/onKYk10/wVQL6zXYr+Zq9aOEhuXZPDel8Q3If+HMzTeHPKlForEK+mws3SMfH2UMxNLIJbasKsoIQZwVLbKFkN4T1C3HxUMM+EkCAfgjwNV40Y304KriOP+jIHqa+jvYsqnH/kqzKaGCFZxWnoTqooxky8+dHUsOGwr6Jfi9jmlVVTHGLnot9L3qGWqCToWYYRF5fDa96mtb93yI2g8B0IWxlTHWmi/hOG00D4mEJfJ5WhQX7ySCsDUaNkJeud6+sgXCgs3OLEG2/xdZSh10JBeiB1zQU0HuQdSib60rOdm9kFToIL8hmFiRHzm1YM0ylet5k579OFpcUk4I0oD0/QuJ7tcBy5ERY6ixdrh5uNwN3bUV7pd4E+J958HmPxbRRydqK/in6vxj5aH9din/udEPKtuU1GqBL24xJwBInQWiHLcbQVKBXTzkVpHP0tWHsIpZUqPeWcrScXuX2ImRkqlufBhdQl15ig3WLKH0/SeAmtD+uprBqGx1ThhlWN5LKG4lcNKbDblFDjVDU0wWK7yLLqnPNk6cKzKsfXt1GQmQQXSuwymhd3tr9lkvPJMUV152kc2PsmUEMxtzdPRk2SNX2DQ3Vhr02Is18LXjHVAz/bG0NEK8johus3UBiwyfkYlDkQUyLaWrwZBrbHMaB8Z3PJLaYk8IIVKKPSJdxbv3ecynNzLNr33GKLV1YVW4IyfycXfq0UxP4X5HJdXCqX4Wv0AKqYkkipw4LG6WxMNi+GhAtH+M/K8wVe7wuWvwQYAFT+UsGCXmX3AAAAAElFTkSuQmCC",
|
||||||
|
"align": "right",
|
||||||
|
"vAlign": "top",
|
||||||
|
"width": 87,
|
||||||
|
"height": 30,
|
||||||
|
"offsetX": -100,
|
||||||
|
"offsetY": 10
|
||||||
|
},
|
||||||
|
"advertisement": {
|
||||||
|
"time": 5,
|
||||||
|
"method": "get",
|
||||||
|
"videoForce": false,
|
||||||
|
"videoVolume": 0.8,
|
||||||
|
"skipButtonShow": true,
|
||||||
|
"linkButtonShow": true,
|
||||||
|
"muteButtonShow": true,
|
||||||
|
"closeButtonShow": true,
|
||||||
|
"closeOtherButtonShow": true,
|
||||||
|
"frontSkipButtonDelay": 2,
|
||||||
|
"insertSkipButtonDelay": 0,
|
||||||
|
"endSkipButtonDelay": 0,
|
||||||
|
"frontStretched": 1,
|
||||||
|
"insertStretched": 2,
|
||||||
|
"pauseStretched": 2,
|
||||||
|
"endStretched": 2
|
||||||
|
},
|
||||||
|
"videoDefault": {
|
||||||
|
"defaultWidth": 4,
|
||||||
|
"defaultHeight": 3
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
28
frontend/public/ckplayer/hls/LICENSE
Normal file
28
frontend/public/ckplayer/hls/LICENSE
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
Copyright (c) 2017 Dailymotion (http://www.dailymotion.com)
|
||||||
|
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
you may not use this file except in compliance with the License.
|
||||||
|
You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
||||||
|
|
||||||
|
src/remux/mp4-generator.js and src/demux/exp-golomb.js implementation in this project
|
||||||
|
are derived from the HLS library for video.js (https://github.com/videojs/videojs-contrib-hls)
|
||||||
|
|
||||||
|
That work is also covered by the Apache 2 License, following copyright:
|
||||||
|
Copyright (c) 2013-2015 Brightcove
|
||||||
|
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
|
THE SOFTWARE.
|
||||||
15403
frontend/public/ckplayer/hls/hls.js
Normal file
15403
frontend/public/ckplayer/hls/hls.js
Normal file
File diff suppressed because it is too large
Load Diff
7
frontend/public/ckplayer/hls/hls.min.js
vendored
Normal file
7
frontend/public/ckplayer/hls/hls.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
42
frontend/public/ckplayer/language.json
Normal file
42
frontend/public/ckplayer/language.json
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
{
|
||||||
|
"adCountdown": "[$Second]",
|
||||||
|
"skipDelay": "[$Second]",
|
||||||
|
"buttonOver": {
|
||||||
|
"play": "点击播放",
|
||||||
|
"pause": "暂停播放",
|
||||||
|
"mute": "静音",
|
||||||
|
"escMute": "恢复音量",
|
||||||
|
"full": "全屏",
|
||||||
|
"escFull": "退出全屏",
|
||||||
|
"previousPage": "上一集",
|
||||||
|
"nextPage": "下一集",
|
||||||
|
"definition": "选择清晰度",
|
||||||
|
"subtitles": "选择字幕",
|
||||||
|
"playbackrate": "倍速播放"
|
||||||
|
},
|
||||||
|
"volumeSliderOver": "音量:[$volume]%",
|
||||||
|
"buffer": "[$percentage]%",
|
||||||
|
"timeSliderOver": "[$timeh]:[$timei]:[$times]",
|
||||||
|
"liveAndVod": "[$timeh]:[$timei]:[$times]",
|
||||||
|
"vod":"[$timeh]:[$timei]:[$times] / [$durationh]:[$durationi]:[$durations]",
|
||||||
|
"live": "直播中 [$liveTimeY]-[$liveTimem]-[$liveTimed] [$liveTimeh]:[$liveTimei]:[$liveTimes]",
|
||||||
|
"m3u8Definition": {
|
||||||
|
"name": [
|
||||||
|
"流畅",
|
||||||
|
"低清",
|
||||||
|
"标清",
|
||||||
|
"高清",
|
||||||
|
"超清",
|
||||||
|
"蓝光",
|
||||||
|
"未知"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"error": {
|
||||||
|
"cannotFindUrl": "视频地址不存在",
|
||||||
|
"streamNotFound": "加载失败",
|
||||||
|
"formatError": "视频格式错误"
|
||||||
|
},
|
||||||
|
"definition": "自动",
|
||||||
|
"subtitle": "默认",
|
||||||
|
"playbackrate": "默认"
|
||||||
|
}
|
||||||
883
frontend/public/ckplayer/style.json
Normal file
883
frontend/public/ckplayer/style.json
Normal file
File diff suppressed because one or more lines are too long
861
frontend/public/ckplayer/style.mobile.json
Normal file
861
frontend/public/ckplayer/style.mobile.json
Normal file
File diff suppressed because one or more lines are too long
@ -9,6 +9,7 @@
|
|||||||
<script src="[{[ .ReCaptchaHost ]}]/recaptcha/api.js?render=explicit"></script>
|
<script src="[{[ .ReCaptchaHost ]}]/recaptcha/api.js?render=explicit"></script>
|
||||||
[{[ end ]}]
|
[{[ end ]}]
|
||||||
|
|
||||||
|
<script src="[{[ .StaticURL ]}]/ckplayer/ckplayer.js"></script>
|
||||||
<title>[{[ if .Name -]}][{[ .Name ]}][{[ else ]}]File Browser[{[ end ]}]</title>
|
<title>[{[ if .Name -]}][{[ .Name ]}][{[ else ]}]File Browser[{[ end ]}]</title>
|
||||||
|
|
||||||
<link rel="icon" type="image/png" sizes="32x32" href="[{[ .StaticURL ]}]/img/icons/favicon-32x32.png">
|
<link rel="icon" type="image/png" sizes="32x32" href="[{[ .StaticURL ]}]/img/icons/favicon-32x32.png">
|
||||||
|
|||||||
@ -64,26 +64,31 @@
|
|||||||
:autoplay="autoPlay"
|
:autoplay="autoPlay"
|
||||||
@play="autoPlay = true"
|
@play="autoPlay = true"
|
||||||
></audio>
|
></audio>
|
||||||
<video
|
<!-- <video-->
|
||||||
|
<!-- v-else-if="req.type == 'video'"-->
|
||||||
|
<!-- ref="player"-->
|
||||||
|
<!-- :src="raw"-->
|
||||||
|
<!-- controls-->
|
||||||
|
<!-- :autoplay="autoPlay"-->
|
||||||
|
<!-- @play="autoPlay = true"-->
|
||||||
|
<!-- >-->
|
||||||
|
<!-- <track-->
|
||||||
|
<!-- kind="captions"-->
|
||||||
|
<!-- v-for="(sub, index) in subtitles"-->
|
||||||
|
<!-- :key="index"-->
|
||||||
|
<!-- :src="sub"-->
|
||||||
|
<!-- :label="'Subtitle ' + index"-->
|
||||||
|
<!-- :default="index === 0"-->
|
||||||
|
<!-- />-->
|
||||||
|
<!-- Sorry, your browser doesn't support embedded videos, but don't worry,-->
|
||||||
|
<!-- you can <a :href="downloadUrl">download it</a>-->
|
||||||
|
<!-- and watch it with your favorite video player!-->
|
||||||
|
<!-- </video>-->
|
||||||
|
<Video
|
||||||
v-else-if="req.type == 'video'"
|
v-else-if="req.type == 'video'"
|
||||||
ref="player"
|
ref="player"
|
||||||
:src="raw"
|
:src="raw"
|
||||||
controls
|
/>
|
||||||
:autoplay="autoPlay"
|
|
||||||
@play="autoPlay = true"
|
|
||||||
>
|
|
||||||
<track
|
|
||||||
kind="captions"
|
|
||||||
v-for="(sub, index) in subtitles"
|
|
||||||
:key="index"
|
|
||||||
:src="sub"
|
|
||||||
:label="'Subtitle ' + index"
|
|
||||||
:default="index === 0"
|
|
||||||
/>
|
|
||||||
Sorry, your browser doesn't support embedded videos, but don't worry,
|
|
||||||
you can <a :href="downloadUrl">download it</a>
|
|
||||||
and watch it with your favorite video player!
|
|
||||||
</video>
|
|
||||||
<object
|
<object
|
||||||
v-else-if="req.extension.toLowerCase() == '.pdf'"
|
v-else-if="req.extension.toLowerCase() == '.pdf'"
|
||||||
class="pdf"
|
class="pdf"
|
||||||
@ -151,6 +156,7 @@ import throttle from "lodash.throttle";
|
|||||||
import HeaderBar from "@/components/header/HeaderBar";
|
import HeaderBar from "@/components/header/HeaderBar";
|
||||||
import Action from "@/components/header/Action";
|
import Action from "@/components/header/Action";
|
||||||
import ExtendedImage from "@/components/files/ExtendedImage";
|
import ExtendedImage from "@/components/files/ExtendedImage";
|
||||||
|
import Video from "./Video";
|
||||||
|
|
||||||
const mediaTypes = ["image", "video", "audio", "blob"];
|
const mediaTypes = ["image", "video", "audio", "blob"];
|
||||||
|
|
||||||
@ -160,6 +166,7 @@ export default {
|
|||||||
HeaderBar,
|
HeaderBar,
|
||||||
Action,
|
Action,
|
||||||
ExtendedImage,
|
ExtendedImage,
|
||||||
|
Video,
|
||||||
},
|
},
|
||||||
data: function () {
|
data: function () {
|
||||||
return {
|
return {
|
||||||
@ -254,13 +261,14 @@ export default {
|
|||||||
if (this.show !== null) {
|
if (this.show !== null) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
const isNotVideo = this.req.type !== "video";
|
||||||
|
|
||||||
if (event.which === 13 || event.which === 39) {
|
if (event.which === 13 || event.which === 39) {
|
||||||
// right arrow
|
// right arrow
|
||||||
if (this.hasNext) this.next();
|
if (this.hasNext && isNotVideo) this.next();
|
||||||
} else if (event.which === 37) {
|
} else if (event.which === 37) {
|
||||||
// left arrow
|
// left arrow
|
||||||
if (this.hasPrevious) this.prev();
|
if (this.hasPrevious && isNotVideo) this.prev();
|
||||||
} else if (event.which === 27) {
|
} else if (event.which === 27) {
|
||||||
// esc
|
// esc
|
||||||
this.close();
|
this.close();
|
||||||
|
|||||||
30
frontend/src/views/files/Video.vue
Normal file
30
frontend/src/views/files/Video.vue
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
<template>
|
||||||
|
<div class="file-video" ref="player" style="height: 100%; width: 100%"/>
|
||||||
|
</template>
|
||||||
|
<script>
|
||||||
|
|
||||||
|
export default {
|
||||||
|
props: {
|
||||||
|
src: {
|
||||||
|
type: String,
|
||||||
|
default: "",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
instance: null,
|
||||||
|
};
|
||||||
|
},
|
||||||
|
mounted() {
|
||||||
|
var videoObject = {
|
||||||
|
container: ".file-video", //“#”代表容器的ID,“`.`”或“”代表容器的class
|
||||||
|
variable: "player", // 播放函数名称,该属性必需设置,值等于下面的new ckplayer()的对象
|
||||||
|
video: this.src, // 视频地址
|
||||||
|
mobileCkControls: true, // 移动端h5显示控制栏
|
||||||
|
overspread: false, //是否让视频铺满播放器
|
||||||
|
};
|
||||||
|
// eslint-disable-next-line no-undef
|
||||||
|
this.instance = new ckplayer(videoObject); //初始化播放器
|
||||||
|
},
|
||||||
|
};
|
||||||
|
</script>
|
||||||
Loading…
Reference in New Issue
Block a user