Bilibili-Evolved/min/download-video.min.html
2020-01-31 11:09:46 +08:00

1 line
4.7 KiB
HTML

<div class=download-video><a :href=blobUrl id=video-complete style="display: none"></a><div class=header><i class="mdi mdi-download"></i><h1>下载视频</h1><div class=grow></div><i class="mdi mdi-close"@click=close()></i></div><div v-if=batch class=tabs><div class="tab download-single":class="{active: downloadSingle}"@click="downloadSingle = true">单个视频</div><div class="tab download-batch":class="{active: !downloadSingle}"@click="downloadSingle = false">批量导出</div></div><div v-show=downloadSingle class=info><img :src=coverUrl class=cover><div class=title><span class=size><div v-if=sizeWarning class=size-warning><i class="mdi mdi-alert-circle"></i><div class=size-warning-tip>警告: 过大的视频大小会在直接下载时占用大量内存, 并可能导致浏览器标签页崩溃. 请考虑降低清晰度或使用导出选项.</div></div>预计大小: {{displaySize}}</span></div></div><div class=options><div class=option-item v-if=enableDash>格式<v-dropdown style="text-transform: uppercase;"@change=dashChange() :items=dashModel.items :value.sync=dashModel.value></v-dropdown></div><div class=option-item>清晰度<v-dropdown @change=formatChange(true) :items=qualityModel.items :value.sync=qualityModel.value></v-dropdown></div><div class=option-item>弹幕<v-dropdown @change=danmakuOptionChange() :items=danmakuModel.items :value.sync=danmakuModel.value></v-dropdown></div><div class=option-item v-if="enableDash && dashModel.value === 'dash'">首选编码<v-dropdown @change=codecChange() :items=codecModel.items :value.sync=codecModel.value></v-dropdown></div></div><div class=separator></div><div v-show=downloadSingle class=direct-download><div class=direct-download-header><h2>直接下载</h2><span class=download-speed>{{speed}}</span></div><button v-if=!downloading class="primary start-download"@click=startDownload()>开始</button><button v-else class="primary cancel-download"@click=cancelDownload()>取消</button><div class=progress><div class=background><div class=foreground :style="{width: progressPercent + '%'}"></div></div><span class=percent>{{progressPercent}}%</span></div></div><div v-show=!downloadSingle class=batch-download><div class=episode-header><h2>选集</h2><button class=list-tool title=全选 @click=selectAllEpisodes()><i class="mdi mdi-checkbox-multiple-marked-circle"></i></button><button class=list-tool title=全不选 @click=unselectAllEpisodes()><i class="mdi mdi-checkbox-multiple-blank-circle-outline"></i></button><button class=list-tool title=反选 @click=inverseAllEpisodes()><i class="mdi mdi-circle-slice-4"></i></button><span class=selected-count>{{selectedEpisodeCount}}/{{episodeList.length}}</span></div><div class=episode-list><v-checkbox v-for="ep of episodeList":key=ep.index :title=ep.title :checked.sync=ep.checked></v-checkbox></div></div><div class=separator></div><div class=exports><h2>导出</h2><div class=actions :class="{busy: busy}"><button class=show-link :disabled="downloadSingle ? null : 'disabled'"@click="exportData('showLink')">显示链接</button><button class=aria2-file @click="exportData('aria2')">aria2</button><button class=ffmpeg-fragments v-if=!dash @click="exportData('ffmpegFragments')">ffmpeg - 分段列表</button><button class=ffmpeg-episodes v-if=!dash :disabled="downloadSingle ? 'disabled' : null"@click="exportData('ffmpegEpisodes')">ffmpeg - 分P列表</button><div class="button aria2-rpc"@click.self=toggleRpcSettings()>{{showRpcSettings ? '取消' : 'aria2 RPC'}}<i :class="{'mdi-close': showRpcSettings, 'mdi-chevron-right': !showRpcSettings}"class=mdi @click.self=toggleRpcSettings()></i><div class=rpc-settings :class="{show: showRpcSettings}"><h1>aria2 RPC</h1><rpc-profiles @profile-change=updateProfile></rpc-profiles><h2>配置</h2><div class=rpc-settings-item>主机<input type=text v-model=rpcSettings.host placeholder=127.0.0.1></div><div class=rpc-settings-item>端口<input type=text v-model=rpcSettings.port placeholder=6800></div><div class=rpc-settings-item>密钥<input type=text v-model=rpcSettings.secretKey></div><div class=rpc-settings-item>限速<input type=text v-model=rpcSettings.maxDownloadLimit placeholder=></div><div class=rpc-settings-item>默认路径<input type=text v-model=rpcSettings.baseDir></div><div class=rpc-settings-item>路径<input type=text v-model=rpcSettings.dir></div><div class=final-dir>最终路径: {{rpcSettings.baseDir + rpcSettings.dir}}</div><div class=rpc-settings-item>方法<v-dropdown style="text-transform: uppercase;":items="['get', 'post']":value.sync=rpcSettings.method></v-dropdown></div><div class=operations><div class="primary button"@click="saveRpcSettings();toggleRpcSettings();exportData('aria2RPC')">开始下载</div><div class=button @click=saveRpcSettings()>{{saveRpcSettingsText}}</div></div></div></div></div></div></div>