Parcourir la source

提交 测试video

wangguoyu il y a 5 mois
Parent
commit
ec4e4ee213
5 fichiers modifiés avec 142 ajouts et 27 suppressions
  1. 36 0
      api/shipin.js
  2. 3 5
      index.html
  3. 1 2
      main.js
  4. 3 1
      manifest.json
  5. 99 19
      pages/study/lookShipin.vue

+ 36 - 0
api/shipin.js

@@ -0,0 +1,36 @@
+import request from '@/utils/request'
+export function videoPolicy(data = {}) {
+  return request({
+    'url': '/admin/video/policy',
+    headers: {
+      isToken: true
+    },
+    method: 'post',
+    data,
+    timeout: 20000
+  })
+}
+
+export function getVideoAuth(data = {}) {
+  return request({
+    'url': '/admin/video/auth',
+    headers: {
+      isToken: true
+    },
+    method: 'post',
+    data,
+    timeout: 20000
+  })
+}
+
+export function getVideoRefresh(data = {}) {
+  return request({
+    'url': '/admin/video/refresh',
+    headers: {
+      isToken: true
+    },
+    method: 'post',
+    data,
+    timeout: 20000
+  })
+}

+ 3 - 5
index.html

@@ -2,10 +2,8 @@
 <html lang="en">
 	<head>
 		<meta charset="UTF-8" />
-		<link rel="stylesheet"
-			href="https://g.alicdn.com/apsara-media-box/imp-web-player/2.27.1/skins/default/aliplayer-min.css" />
-		<script type="text/javascript" charset="utf-8"
-			src="https://g.alicdn.com/apsara-media-box/imp-web-player/2.27.1/aliplayer-min.js"></script>
+		    <link rel="stylesheet" href="https://g.alicdn.com/de/prismplayer/2.9.6/skins/default/aliplayer-min.css" />
+		    <script type="text/javascript" charset="utf-8" src="https://g.alicdn.com/de/prismplayer/2.9.6/aliplayer-min.js"></script>
 		<script src="https://g.alicdn.com/AWSC/AWSC/awsc.js"></script>
 		<script>
 			var coverSupport = 'CSS' in window && typeof CSS.supports === 'function' && (CSS.supports('top: env(a)') ||
@@ -22,4 +20,4 @@
 		<div id="app"><!--app-html--></div>
 		<script type="module" src="/main.js"></script>
 	</body>
-</html>
+</html> 

+ 1 - 2
main.js

@@ -4,13 +4,12 @@ import App from './App.vue'
 //import './permission' // permission
 import { createPinia } from 'pinia'
 import uviewPlus from 'uview-plus'
-import prototype from './common/prototype.js'//全局挂载
+import './common/prototype.js'//全局挂载
 const pinia = createPinia()
 // 创建Vue应用实例
 const app = createApp(App)
 //app.use(plugins)
 app.use(createPinia())
 app.use(uviewPlus)
-app.use(prototype)
 // 挂载Vue应用实例
 app.mount('#app')

+ 3 - 1
manifest.json

@@ -23,7 +23,9 @@
             }
         },
         /* 模块配置 */
-        "modules" : {},
+        "modules" : {
+            "VideoPlayer" : {}
+        },
         /* 应用发布信息 */
         "distribute" : {
             /* android打包配置 */

+ 99 - 19
pages/study/lookShipin.vue

@@ -1,27 +1,107 @@
 <template>
-  <view >
-   
-	123
-	
-  </view>
+	<view id="player-con"></view>
 </template>
 
+<script setup>
+	import {
+		videoPolicy,
+		getVideoAuth,
+		getVideoRefresh
+	} from "@/api/shipin.js"
+	import {
+		onLoad,
+		onReady
+	} from '@dcloudio/uni-app';
+	import {
+		ref,
+		reactive
+	} from "vue"
+	let videoUrl = 'https://qiniu-web-assets.dcloud.net.cn/unidoc/zh/2minute-demo.mp4'
+	let pageData = reactive({
+		type: '',
+		partUrl: '',
+		downloadUrl: '',
+		videoId: '',
+		uploadAddress: '',
+		uploadAuth: '',
+		signature: '',
+		playauth: '',
+	})
 
-<script>
-	export default {
-		data() {
-			return {
-			
-			}
-		},
-		onReady: function (res) {
-			console.log(this)
-			// console.log(Aliplayer)
-		
-		},
-		methods: {
-		
+	onReady(() => {
+			getPlayAuth()
+		}),
+		onLoad(() => {
+
+		})
+
+	// function getVideoId(){
+	// 	let req  ={
+	// 		fileName:videoUrl,
+	// 		title:"测试视频"
+	// 	}
+	// 	videoPolicy(req).then(res=>{
+	// 		pageData.videoId = res.data.videoId
+	// 		getPlayAuth()
+	// 	})
+	// }
+
+	function getPlayAuth() {
+		let req = {
+			videoId: 'b997f16cb9cb474cb93526cff77d8801'
 		}
+		getVideoAuth(req).then(res => {
+			pageData.playauth = res.data
+			playAli()
+		})
 	}
 
+	function playAli() {
+		let configData = {
+			"id": "player-con",
+			"vid": 'b997f16cb9cb474cb93526cff77d8801',
+			"playauth": pageData.playauth,
+			"qualitySort": "asc",
+			"format": "m3u8",
+			"mediaType": "video",
+			"encryptType": 1,
+			"width": '100%',
+			progressMarkers: [{
+				offset: 30,
+				isCustomized: true,
+				coverUrl: 'https://alivc-demo-vod.aliyuncs.com/image/cover/9A3F562E595E4764AD1DD546FA52C6E5-6-2.png',
+				title: 'test title',
+				describe: 'test string',
+			}, {
+				offset: 50,
+				isCustomized: true,
+				coverUrl: 'https://alivc-demo-vod.aliyuncs.com/image/cover/1E7F402241CD4C0F94AD2BBB5CCC3EC7-6-2.png',
+				title: 'test title',
+				describe: 'test string',
+			}, {
+				offset: 150,
+				isCustomized: true,
+				coverUrl: 'https://alivc-demo-vod.aliyuncs.com/image/cover/553AEA01161342C8A2B1756E83B69B5B-6-2.png',
+				title: 'test title',
+				describe: 'test string',
+			}, {
+				offset: 120,
+				isCustomized: true,
+				coverUrl: 'https://alivc-demo-vod.aliyuncs.com/image/cover/553AEA01161342C8A2B1756E83B69B5B-6-2.png',
+				title: 'test title',
+				describe: 'test string',
+			}],
+			"height": '500px',
+			"autoplay": false,
+			"isLive": false,
+			"rePlay": false,
+			"playsinline": true,
+			"preload": false,
+			"controlBarVisibility": "hover",
+			"useH5Prism": true
+		}
+		var player = new Aliplayer(configData, function(player) {
+			console.log('The player is created.')
+		});
+	}
 </script>