Compare commits
10 Commits
4ee7e30206
...
dev
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a3f743de4c | ||
|
|
3f402b1398 | ||
|
|
9e797e018a | ||
|
|
cf94ae2926 | ||
|
|
33793d7370 | ||
|
|
1753829889 | ||
|
|
fa3e1d5924 | ||
|
|
39df8bcbf8 | ||
|
|
c02a8f7172 | ||
|
|
dd6fbe777e |
2
.gitignore
vendored
2
.gitignore
vendored
@@ -33,7 +33,7 @@ build/
|
||||
|
||||
# Vue distributable files
|
||||
# /frontend/dist/*
|
||||
!/frontend/dist/.gitkeep
|
||||
#!/frontend/dist/.gitkeep
|
||||
|
||||
# Playwright files
|
||||
/frontend/test-results/
|
||||
|
||||
@@ -59,7 +59,9 @@ func init() {
|
||||
}
|
||||
|
||||
func addServerFlags(flags *pflag.FlagSet) {
|
||||
flags.StringP("address", "a", "127.0.0.1", "address to listen on")
|
||||
// flags.StringP("address", "a", "127.0.0.1", "address to listen on")
|
||||
flags.StringP("address", "a", "0.0.0.0", "address to listen on")
|
||||
|
||||
flags.StringP("log", "l", "stdout", "log output")
|
||||
flags.StringP("port", "p", "8080", "port to listen on")
|
||||
flags.StringP("cert", "t", "", "tls certificate")
|
||||
|
||||
BIN
filebrowser_arm64 → filebrowser_dev
Normal file → Executable file
BIN
filebrowser_arm64 → filebrowser_dev
Normal file → Executable file
Binary file not shown.
BIN
frontend/dist/assets/Editor-QvDUbjLs.js.gz
vendored
Normal file
BIN
frontend/dist/assets/Editor-QvDUbjLs.js.gz
vendored
Normal file
Binary file not shown.
Binary file not shown.
BIN
frontend/dist/assets/Editor-uE1Voqk0.js.gz
vendored
BIN
frontend/dist/assets/Editor-uE1Voqk0.js.gz
vendored
Binary file not shown.
BIN
frontend/dist/assets/Preview-COHNXs63.js.gz
vendored
BIN
frontend/dist/assets/Preview-COHNXs63.js.gz
vendored
Binary file not shown.
BIN
frontend/dist/assets/Preview-j_vDg5Uw.js.gz
vendored
Normal file
BIN
frontend/dist/assets/Preview-j_vDg5Uw.js.gz
vendored
Normal file
Binary file not shown.
BIN
frontend/dist/assets/Preview-legacy-CBojGWKW.js.gz
vendored
BIN
frontend/dist/assets/Preview-legacy-CBojGWKW.js.gz
vendored
Binary file not shown.
BIN
frontend/dist/assets/Preview-legacy-gAQj6al5.js.gz
vendored
Normal file
BIN
frontend/dist/assets/Preview-legacy-gAQj6al5.js.gz
vendored
Normal file
Binary file not shown.
BIN
frontend/dist/assets/ar-DtFJJrir.js.gz
vendored
Normal file
BIN
frontend/dist/assets/ar-DtFJJrir.js.gz
vendored
Normal file
Binary file not shown.
BIN
frontend/dist/assets/ar-grBMsqD0.js.gz
vendored
BIN
frontend/dist/assets/ar-grBMsqD0.js.gz
vendored
Binary file not shown.
BIN
frontend/dist/assets/dayjs-BaXUFriC.js.gz
vendored
BIN
frontend/dist/assets/dayjs-BaXUFriC.js.gz
vendored
Binary file not shown.
BIN
frontend/dist/assets/dayjs-DoHIBBbq.js.gz
vendored
Normal file
BIN
frontend/dist/assets/dayjs-DoHIBBbq.js.gz
vendored
Normal file
Binary file not shown.
BIN
frontend/dist/assets/dayjs-legacy-BtyXlkBf.js.gz
vendored
Normal file
BIN
frontend/dist/assets/dayjs-legacy-BtyXlkBf.js.gz
vendored
Normal file
Binary file not shown.
BIN
frontend/dist/assets/dayjs-legacy-BzWTee52.js.gz
vendored
BIN
frontend/dist/assets/dayjs-legacy-BzWTee52.js.gz
vendored
Binary file not shown.
BIN
frontend/dist/assets/de-B_RdXGrw.js.gz
vendored
BIN
frontend/dist/assets/de-B_RdXGrw.js.gz
vendored
Binary file not shown.
BIN
frontend/dist/assets/de-CsTqJtDw.js.gz
vendored
Normal file
BIN
frontend/dist/assets/de-CsTqJtDw.js.gz
vendored
Normal file
Binary file not shown.
BIN
frontend/dist/assets/en-B9cUi7yp.js.gz
vendored
BIN
frontend/dist/assets/en-B9cUi7yp.js.gz
vendored
Binary file not shown.
BIN
frontend/dist/assets/en-VcjLuOQ9.js.gz
vendored
Normal file
BIN
frontend/dist/assets/en-VcjLuOQ9.js.gz
vendored
Normal file
Binary file not shown.
BIN
frontend/dist/assets/he-B4IfBkLC.js.gz
vendored
Normal file
BIN
frontend/dist/assets/he-B4IfBkLC.js.gz
vendored
Normal file
Binary file not shown.
BIN
frontend/dist/assets/he-CKoFb239.js.gz
vendored
BIN
frontend/dist/assets/he-CKoFb239.js.gz
vendored
Binary file not shown.
BIN
frontend/dist/assets/hu-BPfANBiL.js.gz
vendored
Normal file
BIN
frontend/dist/assets/hu-BPfANBiL.js.gz
vendored
Normal file
Binary file not shown.
BIN
frontend/dist/assets/hu-DgScp7Vz.js.gz
vendored
BIN
frontend/dist/assets/hu-DgScp7Vz.js.gz
vendored
Binary file not shown.
BIN
frontend/dist/assets/i18n-B51KFB2t.js.gz
vendored
Normal file
BIN
frontend/dist/assets/i18n-B51KFB2t.js.gz
vendored
Normal file
Binary file not shown.
BIN
frontend/dist/assets/i18n-UjFZsrt2.js.gz
vendored
BIN
frontend/dist/assets/i18n-UjFZsrt2.js.gz
vendored
Binary file not shown.
BIN
frontend/dist/assets/i18n-legacy-BMkeMmTj.js.gz
vendored
Normal file
BIN
frontend/dist/assets/i18n-legacy-BMkeMmTj.js.gz
vendored
Normal file
Binary file not shown.
BIN
frontend/dist/assets/i18n-legacy-BbZgAJpU.js.gz
vendored
BIN
frontend/dist/assets/i18n-legacy-BbZgAJpU.js.gz
vendored
Binary file not shown.
BIN
frontend/dist/assets/index-CQxnOeHi.js.gz
vendored
BIN
frontend/dist/assets/index-CQxnOeHi.js.gz
vendored
Binary file not shown.
File diff suppressed because one or more lines are too long
BIN
frontend/dist/assets/index-EUD6rfX7.js.gz
vendored
Normal file
BIN
frontend/dist/assets/index-EUD6rfX7.js.gz
vendored
Normal file
Binary file not shown.
BIN
frontend/dist/assets/index-legacy-D1Xq-vUG.js.gz
vendored
Normal file
BIN
frontend/dist/assets/index-legacy-D1Xq-vUG.js.gz
vendored
Normal file
Binary file not shown.
BIN
frontend/dist/assets/index-legacy-LFCxiX0p.js.gz
vendored
BIN
frontend/dist/assets/index-legacy-LFCxiX0p.js.gz
vendored
Binary file not shown.
BIN
frontend/dist/assets/it-CxzZEkDv.js.gz
vendored
Normal file
BIN
frontend/dist/assets/it-CxzZEkDv.js.gz
vendored
Normal file
Binary file not shown.
BIN
frontend/dist/assets/it-_2pKjYFU.js.gz
vendored
BIN
frontend/dist/assets/it-_2pKjYFU.js.gz
vendored
Binary file not shown.
BIN
frontend/dist/assets/ja-BGcYKjzK.js.gz
vendored
Normal file
BIN
frontend/dist/assets/ja-BGcYKjzK.js.gz
vendored
Normal file
Binary file not shown.
BIN
frontend/dist/assets/ja-Ba2FCdJ4.js.gz
vendored
BIN
frontend/dist/assets/ja-Ba2FCdJ4.js.gz
vendored
Binary file not shown.
BIN
frontend/dist/assets/ko-Ck5pBF4s.js.gz
vendored
Normal file
BIN
frontend/dist/assets/ko-Ck5pBF4s.js.gz
vendored
Normal file
Binary file not shown.
BIN
frontend/dist/assets/ko-DKOY2mvq.js.gz
vendored
BIN
frontend/dist/assets/ko-DKOY2mvq.js.gz
vendored
Binary file not shown.
BIN
frontend/dist/assets/nl-BUJf3J9m.js.gz
vendored
Normal file
BIN
frontend/dist/assets/nl-BUJf3J9m.js.gz
vendored
Normal file
Binary file not shown.
BIN
frontend/dist/assets/nl-Dm22rvoT.js.gz
vendored
BIN
frontend/dist/assets/nl-Dm22rvoT.js.gz
vendored
Binary file not shown.
BIN
frontend/dist/assets/pl-CE4mQrXb.js.gz
vendored
BIN
frontend/dist/assets/pl-CE4mQrXb.js.gz
vendored
Binary file not shown.
BIN
frontend/dist/assets/pl-pV3PHVMk.js.gz
vendored
Normal file
BIN
frontend/dist/assets/pl-pV3PHVMk.js.gz
vendored
Normal file
Binary file not shown.
BIN
frontend/dist/assets/polyfills-legacy-D8GbthlL.js.gz
vendored
BIN
frontend/dist/assets/polyfills-legacy-D8GbthlL.js.gz
vendored
Binary file not shown.
BIN
frontend/dist/assets/polyfills-legacy-whU9bDSR.js.gz
vendored
Normal file
BIN
frontend/dist/assets/polyfills-legacy-whU9bDSR.js.gz
vendored
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
frontend/dist/assets/tr-DBYvv1ex.js.gz
vendored
Normal file
BIN
frontend/dist/assets/tr-DBYvv1ex.js.gz
vendored
Normal file
Binary file not shown.
BIN
frontend/dist/assets/tr-DayNcc5h.js.gz
vendored
BIN
frontend/dist/assets/tr-DayNcc5h.js.gz
vendored
Binary file not shown.
BIN
frontend/dist/assets/uk-C2gOFBkq.js.gz
vendored
BIN
frontend/dist/assets/uk-C2gOFBkq.js.gz
vendored
Binary file not shown.
BIN
frontend/dist/assets/uk-D_F9n3KQ.js.gz
vendored
Normal file
BIN
frontend/dist/assets/uk-D_F9n3KQ.js.gz
vendored
Normal file
Binary file not shown.
BIN
frontend/dist/assets/zh-CN-BkxKbQZB.js.gz
vendored
Normal file
BIN
frontend/dist/assets/zh-CN-BkxKbQZB.js.gz
vendored
Normal file
Binary file not shown.
BIN
frontend/dist/assets/zh-CN-DH_OOwBr.js.gz
vendored
BIN
frontend/dist/assets/zh-CN-DH_OOwBr.js.gz
vendored
Binary file not shown.
BIN
frontend/dist/assets/zh-TW-BuS31BG2.js.gz
vendored
BIN
frontend/dist/assets/zh-TW-BuS31BG2.js.gz
vendored
Binary file not shown.
BIN
frontend/dist/assets/zh-TW-DV5gbLiY.js.gz
vendored
Normal file
BIN
frontend/dist/assets/zh-TW-DV5gbLiY.js.gz
vendored
Normal file
Binary file not shown.
12
frontend/dist/public/index.html
vendored
12
frontend/dist/public/index.html
vendored
@@ -125,10 +125,10 @@
|
||||
}
|
||||
}
|
||||
</style>
|
||||
<script type="module" crossorigin src="[{[ .StaticURL ]}]/assets/index-CQxnOeHi.js"></script>
|
||||
<link rel="modulepreload" crossorigin href="[{[ .StaticURL ]}]/assets/dayjs-BaXUFriC.js">
|
||||
<link rel="modulepreload" crossorigin href="[{[ .StaticURL ]}]/assets/i18n-UjFZsrt2.js">
|
||||
<link rel="stylesheet" crossorigin href="[{[ .StaticURL ]}]/assets/index-CKNdCj14.css">
|
||||
<script type="module" crossorigin src="[{[ .StaticURL ]}]/assets/index-EUD6rfX7.js"></script>
|
||||
<link rel="modulepreload" crossorigin href="[{[ .StaticURL ]}]/assets/dayjs-DoHIBBbq.js">
|
||||
<link rel="modulepreload" crossorigin href="[{[ .StaticURL ]}]/assets/i18n-B51KFB2t.js">
|
||||
<link rel="stylesheet" crossorigin href="[{[ .StaticURL ]}]/assets/index-Cckpz6IB.css">
|
||||
<script type="module">import.meta.url;import("_").catch(()=>1);(async function*(){})().next();if(location.protocol!="file:"){window.__vite_is_modern_browser=true}</script>
|
||||
<script type="module">!function(){if(window.__vite_is_modern_browser)return;console.warn("vite: loading legacy chunks, syntax error above and the same error below should be ignored");var e=document.getElementById("vite-legacy-polyfill"),n=document.createElement("script");n.src=e.src,n.onload=function(){System.import(document.getElementById('vite-legacy-entry').getAttribute('data-src'))},document.body.appendChild(n)}();</script>
|
||||
</head>
|
||||
@@ -148,7 +148,7 @@
|
||||
[{[ if .CSS -]}]
|
||||
<link rel="stylesheet" href="[{[ .StaticURL ]}]/custom.css" />
|
||||
[{[ end ]}]
|
||||
<script nomodule>!function(){var e=document,t=e.createElement("script");if(!("noModule"in t)&&"onbeforeload"in t){var n=!1;e.addEventListener("beforeload",(function(e){if(e.target===t)n=!0;else if(!e.target.hasAttribute("nomodule")||!n)return;e.preventDefault()}),!0),t.type="module",t.src=".",e.head.appendChild(t),t.remove()}}();</script>
|
||||
<script nomodule crossorigin id="vite-legacy-polyfill" src="[{[ .StaticURL ]}]/assets/polyfills-legacy-D8GbthlL.js"></script>
|
||||
<script nomodule>!function(){var e=document,t=e.createElement("script");if(!("noModule"in t)&&"onbeforeload"in t){var n=!1;e.addEventListener("beforeload",(function(e){if(e.target===t)n=!0;else if(!e.target.hasAttribute("nomodule")||!n)return;e.preventDefault()}),!0),t.type="module",t.src=".",e.head.appendChild(t),t.remove()}}();</script>
|
||||
<script nomodule crossorigin id="vite-legacy-polyfill" src="[{[ .StaticURL ]}]/assets/polyfills-legacy-whU9bDSR.js"></script>
|
||||
<script nomodule crossorigin id="vite-legacy-entry" data-src="[{[ .StaticURL ]}]/assets/index-legacy-D1Xq-vUG.js">System.import(document.getElementById('vite-legacy-entry').getAttribute('data-src'))</script>
|
||||
</body>
|
||||
|
||||
@@ -24,7 +24,9 @@ export default defineConfig({
|
||||
/* Shared settings for all the projects below. See https://playwright.dev/docs/api/class-testoptions. */
|
||||
use: {
|
||||
/* Base URL to use in actions like `await page.goto('/')`. */
|
||||
baseURL: "http://127.0.0.1:5173",
|
||||
// baseURL: "http://127.0.0.1:5173",
|
||||
baseURL: "http://0.0.0.0:5173",
|
||||
|
||||
|
||||
/* Collect trace when retrying the failed test. See https://playwright.dev/docs/trace-viewer */
|
||||
trace: "on-first-retry",
|
||||
@@ -74,7 +76,8 @@ export default defineConfig({
|
||||
/* Run your local dev server before starting the tests */
|
||||
webServer: {
|
||||
command: "npm run dev",
|
||||
url: "http://127.0.0.1:5173",
|
||||
// url: "http://127.0.0.1:5173",
|
||||
url: "http://0.0.0.0:5173",
|
||||
reuseExistingServer: !process.env.CI,
|
||||
},
|
||||
});
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
<p class="modified">
|
||||
<time :datetime="modified">{{ humanTime() }}</time>
|
||||
<!-- 直播按钮 -->
|
||||
<button v-if="!isDir && isVideoFile(name)" class="live-button" @click="loopLive">
|
||||
<button v-if="!isDir && isVideoFile(name)" class="live-button" @click="loopLive">
|
||||
循环直播
|
||||
</button>
|
||||
<button v-if="!isDir && isVideoFile(name)" class="live-button" @click="startLive">
|
||||
@@ -30,7 +30,7 @@
|
||||
<button v-if="!isDir && isVideoFile(name)" class="live-button" @click="stopLive">
|
||||
停止直播
|
||||
</button>
|
||||
|
||||
|
||||
</p>
|
||||
|
||||
</div>
|
||||
@@ -386,7 +386,9 @@ const stopLive = async () => {
|
||||
const thread_id = props.url.replace(/\//g, "_");
|
||||
|
||||
// 调用 FastAPI 停止接口
|
||||
const res = await fetch("http://192.168.31.103:8700/stop_live", {
|
||||
// const res = await fetch("http://192.168.31.103:8700/stop_live", {
|
||||
const res = await fetch(`${location.protocol}//${location.hostname}:8700/stop_live`, {
|
||||
|
||||
method: "POST",
|
||||
headers: { "Content-Type": "application/json" },
|
||||
body: JSON.stringify({ thread_id }) // 如果想停止全部可以 body: {}
|
||||
@@ -411,11 +413,11 @@ const loopLive = async () => {
|
||||
// props.url 是 FileBrowser 内部路径,例如 /videos/test.mp4
|
||||
const file_path = props.url;
|
||||
// const file_path = encodeURIComponent(props.url);
|
||||
console.log('file_path',file_path)
|
||||
console.log('file_path', file_path)
|
||||
|
||||
// 调用 FastAPI 后端接口
|
||||
const res = await fetch("http://192.168.31.103:8700/loop_Live", {
|
||||
// const res = await fetch("http://192.168.31.245:8700/start_live", {
|
||||
// const res = await fetch("http://192.168.31.103:8700/loop_Live", {
|
||||
const res = await fetch(`${location.protocol}//${location.hostname}:8700/loop_Live`, {
|
||||
|
||||
method: "POST",
|
||||
headers: { "Content-Type": "application/json" },
|
||||
@@ -444,7 +446,9 @@ const obsLive = async () => {
|
||||
console.log('file_path for OBS:', file_path);
|
||||
|
||||
// 这里模拟 OBS 推流逻辑,你可以根据实际后端接口来调整
|
||||
const res = await fetch("http://192.168.31.103:8700/obs_live", {
|
||||
// const res = await fetch("http://192.168.31.103:8700/obs_live", {
|
||||
const res = await fetch(`${location.protocol}//${location.hostname}:8700/obs_live`, {
|
||||
|
||||
method: "POST",
|
||||
headers: { "Content-Type": "application/json" },
|
||||
body: JSON.stringify({ filename: file_path })
|
||||
@@ -468,11 +472,11 @@ const startLive = async () => {
|
||||
// props.url 是 FileBrowser 内部路径,例如 /videos/test.mp4
|
||||
const file_path = props.url;
|
||||
// const file_path = encodeURIComponent(props.url);
|
||||
console.log('file_path',file_path)
|
||||
console.log('file_path', file_path)
|
||||
|
||||
// 调用 FastAPI 后端接口
|
||||
const res = await fetch("http://192.168.31.103:8700/start_live", {
|
||||
// const res = await fetch("http://192.168.31.245:8700/start_live", {
|
||||
const res = await fetch(`${location.protocol}//${location.hostname}:8700/start_live`, {
|
||||
// const res = await fetch("http://127.0.0.1:8700/start_live", {
|
||||
|
||||
method: "POST",
|
||||
headers: { "Content-Type": "application/json" },
|
||||
|
||||
@@ -41,13 +41,13 @@ export default defineConfig(({ command }) => {
|
||||
proxy: {
|
||||
// Zero3 后端 WebSocket(如果你有 ws 接口)
|
||||
"/api/command": {
|
||||
target: "ws://192.168.31.103:8081",
|
||||
target: `ws://${location.protocol}//${location.hostname}:8081`,
|
||||
// target: "ws://live.local:8081",
|
||||
|
||||
ws: true,
|
||||
},
|
||||
// Zero3 后端 HTTP
|
||||
"/api": "http://192.168.31.103:8081",
|
||||
"/api": `${location.protocol}//${location.hostname}:8081`,
|
||||
// "/api": "http://live.local:8081",
|
||||
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user