From 408fd5e424475be0e21d207d518ea9cb7aa57c1d Mon Sep 17 00:00:00 2001 From: Chocobozzz Date: Thu, 23 Jun 2022 10:45:28 +0200 Subject: More precise format byte with GB --- client/src/assets/player/shared/common/utils.ts | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) (limited to 'client') diff --git a/client/src/assets/player/shared/common/utils.ts b/client/src/assets/player/shared/common/utils.ts index da7dda0c7..a010d9184 100644 --- a/client/src/assets/player/shared/common/utils.ts +++ b/client/src/assets/player/shared/common/utils.ts @@ -4,17 +4,15 @@ function toTitleCase (str: string) { return str.charAt(0).toUpperCase() + str.slice(1) } -// https://github.com/danrevah/ngx-pipes/blob/master/src/pipes/math/bytes.ts -// Don't import all Angular stuff, just copy the code with shame -const dictionaryBytes: Array<{max: number, type: string}> = [ - { max: 1024, type: 'B' }, - { max: 1048576, type: 'KB' }, - { max: 1073741824, type: 'MB' }, - { max: 1.0995116e12, type: 'GB' } +const dictionaryBytes = [ + { max: 1024, type: 'B', decimals: 0 }, + { max: 1048576, type: 'KB', decimals: 0 }, + { max: 1073741824, type: 'MB', decimals: 0 }, + { max: 1.0995116e12, type: 'GB', decimals: 1 } ] function bytes (value: number) { const format = dictionaryBytes.find(d => value < d.max) || dictionaryBytes[dictionaryBytes.length - 1] - const calc = Math.floor(value / (format.max / 1024)).toString() + const calc = (value / (format.max / 1024)).toFixed(format.decimals) return [ calc, format.type ] } -- cgit v1.2.3 From b6898035bfc5ba60ec54f7e61ff832e5e2ac30eb Mon Sep 17 00:00:00 2001 From: Chocobozzz Date: Thu, 23 Jun 2022 10:52:27 +0200 Subject: Fix going live latency mode --- .../+video-edit/video-add-components/video-go-live.component.ts | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'client') diff --git a/client/src/app/+videos/+video-edit/video-add-components/video-go-live.component.ts b/client/src/app/+videos/+video-edit/video-add-components/video-go-live.component.ts index d81f577b2..80e5a73da 100644 --- a/client/src/app/+videos/+video-edit/video-add-components/video-go-live.component.ts +++ b/client/src/app/+videos/+video-edit/video-add-components/video-go-live.component.ts @@ -7,7 +7,7 @@ import { FormValidatorService } from '@app/shared/shared-forms' import { Video, VideoCaptionService, VideoEdit, VideoService } from '@app/shared/shared-main' import { LiveVideoService } from '@app/shared/shared-video-live' import { LoadingBarService } from '@ngx-loading-bar/core' -import { LiveVideo, LiveVideoCreate, LiveVideoUpdate, PeerTubeProblemDocument, ServerErrorCode } from '@shared/models' +import { LiveVideo, LiveVideoCreate, LiveVideoLatencyMode, LiveVideoUpdate, PeerTubeProblemDocument, ServerErrorCode } from '@shared/models' import { VideoSend } from './video-send' @Component({ @@ -71,12 +71,13 @@ export class VideoGoLiveComponent extends VideoSend implements OnInit, AfterView nsfw: this.serverConfig.instance.isNSFW, waitTranscoding: true, permanentLive: this.firstStepPermanentLive, + latencyMode: LiveVideoLatencyMode.DEFAULT, saveReplay: this.isReplayAllowed(), channelId: this.firstStepChannelId } // Go live in private mode, but correctly fill the update form with the first user choice - const toPatch = Object.assign({}, video, { privacy: this.firstStepPrivacyId }) + const toPatch = { ...video, privacy: this.firstStepPrivacyId } this.form.patchValue(toPatch) this.liveVideoService.goLive(video) @@ -121,6 +122,7 @@ export class VideoGoLiveComponent extends VideoSend implements OnInit, AfterView const liveVideoUpdate: LiveVideoUpdate = { saveReplay: this.form.value.saveReplay, + latencyMode: this.form.value.latencyMode, permanentLive: this.form.value.permanentLive } -- cgit v1.2.3