|
@@ -199,6 +199,65 @@ export default defineComponent({
|
|
|
videoFroms.speedControl = !videoFroms.speedControl;
|
|
|
}}>
|
|
|
<img src={iconSpeed} />
|
|
|
+
|
|
|
+ <div
|
|
|
+ style={{
|
|
|
+ display: videoFroms.speedControl ? 'block' : 'none'
|
|
|
+ }}>
|
|
|
+ <div
|
|
|
+ class={styles.sliderPopup}
|
|
|
+ onClick={(e: Event) => {
|
|
|
+ e.stopPropagation();
|
|
|
+ }}>
|
|
|
+ <i
|
|
|
+ class={styles.iconAdd}
|
|
|
+ onClick={() => {
|
|
|
+ if (videoFroms.defaultSpeed >= 1.5) {
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
+ if (videoItem.value) {
|
|
|
+ videoFroms.defaultSpeed =
|
|
|
+ (videoFroms.defaultSpeed * 10 + 1) / 10;
|
|
|
+ videoItem.value.playbackRate(videoFroms.defaultSpeed);
|
|
|
+ }
|
|
|
+ }}></i>
|
|
|
+ <NSlider
|
|
|
+ value={videoFroms.defaultSpeed}
|
|
|
+ step={0.1}
|
|
|
+ max={1.5}
|
|
|
+ min={0.5}
|
|
|
+ vertical
|
|
|
+ tooltip={false}
|
|
|
+ onUpdate:value={(val: number) => {
|
|
|
+ videoFroms.defaultSpeed = val;
|
|
|
+ if (videoItem.value) {
|
|
|
+ videoItem.value.playbackRate(videoFroms.defaultSpeed);
|
|
|
+ }
|
|
|
+ }}>
|
|
|
+ {{
|
|
|
+ thumb: () => (
|
|
|
+ <div class={styles.sliderPoint}>
|
|
|
+ {videoFroms.defaultSpeed}
|
|
|
+ <span>x</span>
|
|
|
+ </div>
|
|
|
+ )
|
|
|
+ }}
|
|
|
+ </NSlider>
|
|
|
+ <i
|
|
|
+ class={[styles.iconCut]}
|
|
|
+ onClick={() => {
|
|
|
+ if (videoFroms.defaultSpeed <= 0.5) {
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ if (videoItem.value) {
|
|
|
+ videoFroms.defaultSpeed =
|
|
|
+ (videoFroms.defaultSpeed * 10 - 1) / 10;
|
|
|
+ videoItem.value.playbackRate(videoFroms.defaultSpeed);
|
|
|
+ }
|
|
|
+ }}></i>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
@@ -241,65 +300,6 @@ export default defineComponent({
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
-
|
|
|
- <div
|
|
|
- style={{
|
|
|
- display: videoFroms.speedControl ? 'block' : 'none'
|
|
|
- }}>
|
|
|
- <div
|
|
|
- class={styles.sliderPopup}
|
|
|
- onClick={(e: Event) => {
|
|
|
- e.stopPropagation();
|
|
|
- }}>
|
|
|
- <i
|
|
|
- class={styles.iconAdd}
|
|
|
- onClick={() => {
|
|
|
- if (videoFroms.defaultSpeed >= 1.5) {
|
|
|
- return;
|
|
|
- }
|
|
|
-
|
|
|
- if (videoItem.value) {
|
|
|
- videoFroms.defaultSpeed =
|
|
|
- (videoFroms.defaultSpeed * 10 + 1) / 10;
|
|
|
- videoItem.value.playbackRate(videoFroms.defaultSpeed);
|
|
|
- }
|
|
|
- }}></i>
|
|
|
- <NSlider
|
|
|
- value={videoFroms.defaultSpeed}
|
|
|
- step={0.1}
|
|
|
- max={1.5}
|
|
|
- min={0.5}
|
|
|
- vertical
|
|
|
- tooltip={false}
|
|
|
- onUpdate:value={(val: number) => {
|
|
|
- videoFroms.defaultSpeed = val;
|
|
|
- if (videoItem.value) {
|
|
|
- videoItem.value.playbackRate(videoFroms.defaultSpeed);
|
|
|
- }
|
|
|
- }}>
|
|
|
- {{
|
|
|
- thumb: () => (
|
|
|
- <div class={styles.sliderPoint}>
|
|
|
- {videoFroms.defaultSpeed}
|
|
|
- <span>x</span>
|
|
|
- </div>
|
|
|
- )
|
|
|
- }}
|
|
|
- </NSlider>
|
|
|
- <i
|
|
|
- class={[styles.iconCut]}
|
|
|
- onClick={() => {
|
|
|
- if (videoFroms.defaultSpeed <= 0.5) {
|
|
|
- return;
|
|
|
- }
|
|
|
- if (videoItem.value) {
|
|
|
- videoFroms.defaultSpeed =
|
|
|
- (videoFroms.defaultSpeed * 10 - 1) / 10;
|
|
|
- videoItem.value.playbackRate(videoFroms.defaultSpeed);
|
|
|
- }
|
|
|
- }}></i>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
</div>
|
|
|
);
|
|
|
}
|