@live-change/video-call-frontend 0.8.72 → 0.8.74

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -21,7 +21,7 @@
21
21
  :src-object.prop.camel="stream"
22
22
  :volume.prop.camel="volume"
23
23
  :muted="audioMuted"
24
- :ref="videoElement"
24
+ ref="videoElement"
25
25
  @resize="handleVideoResize"
26
26
  class="w-full h-full"
27
27
  :style="mirror ? 'transform: scaleX(-1)' : ''">
@@ -102,7 +102,7 @@
102
102
  import { VolumeIndicator } from "@live-change/peer-connection-frontend"
103
103
  import { UserIdentification } from "@live-change/user-frontend"
104
104
 
105
- import { defineProps, defineEmits, toRefs, ref, computed } from 'vue'
105
+ import { defineProps, defineEmits, toRefs, ref, computed, watchEffect } from 'vue'
106
106
 
107
107
  const props = defineProps({
108
108
  id: {
@@ -141,8 +141,14 @@
141
141
  type: Boolean,
142
142
  default: false
143
143
  },
144
+ audioOutputId: {
145
+ type: String,
146
+ default: null
147
+ }
144
148
  })
145
- const { id, stream, image, ownerType, owner, peerState, audioMuted, mirror } = toRefs(props)
149
+ const {
150
+ id, stream, image, ownerType, owner, peerState, audioMuted, mirror, audioOutputId
151
+ } = toRefs(props)
146
152
 
147
153
  const emit = defineEmits(['resize'])
148
154
 
@@ -157,6 +163,20 @@
157
163
  emit('resize', { width: event.target.videoWidth, height: event.target.videoHeight })
158
164
  }
159
165
 
166
+ watchEffect(() => {
167
+ const output = videoElement.value
168
+ const outputDeviceId = audioOutputId.value
169
+ if(!output) return
170
+ (async () => {
171
+ console.log("SET OUTPUT DEVICE", outputDeviceId)
172
+ if(outputDeviceId) {
173
+ await output.setSinkId(outputDeviceId)
174
+ } else {
175
+ //await output.setSinkId(null)
176
+ }
177
+ })()
178
+ })
179
+
160
180
  </script>
161
181
 
162
182
  <style scoped>
@@ -21,6 +21,7 @@
21
21
  :owner="tile.video?.owner ?? 'unknown'"
22
22
  @resize="ev => handleVideoResize(tile, ev)"
23
23
  @click="ev => handleVideoClick(tile, ev)"
24
+ :audioOutputId="audioOutputId"
24
25
  :style="videoStyles[tile.id]">
25
26
  </PeerVideo>
26
27
  </div>
@@ -61,9 +62,16 @@
61
62
  volume: {
62
63
  type: Number,
63
64
  defaultValue: 1
65
+ },
66
+ audioOutputId: {
67
+ type: String,
68
+ default: 'default'
64
69
  }
65
70
  })
66
- const { mainVideos, topVideos, bottomVideos, myVideos, topBarHeight, bottomBarHeight, volume } = toRefs(props)
71
+ const {
72
+ mainVideos, topVideos, bottomVideos, myVideos, topBarHeight, bottomBarHeight,
73
+ volume, audioOutputId
74
+ } = toRefs(props)
67
75
 
68
76
  const emit = defineEmits(['videoClick'])
69
77
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@live-change/video-call-frontend",
3
- "version": "0.8.72",
3
+ "version": "0.8.74",
4
4
  "scripts": {
5
5
  "memDev": "node server/start.js memDev --enableSessions --initScript ./init.js --dbAccess",
6
6
  "localDevInit": "rm tmp.db; node server/start.js localDev --enableSessions --initScript ./init.js",
@@ -35,41 +35,41 @@
35
35
  "@codemirror/language": "6.10.1",
36
36
  "@dotenvx/dotenvx": "0.27.0",
37
37
  "@fortawesome/fontawesome-free": "^6.5.2",
38
- "@live-change/access-control-frontend": "^0.8.72",
39
- "@live-change/access-control-service": "^0.8.72",
40
- "@live-change/backup-service": "^0.8.72",
41
- "@live-change/blog-frontend": "^0.8.72",
42
- "@live-change/blog-service": "^0.8.72",
43
- "@live-change/cli": "^0.8.72",
44
- "@live-change/content-frontend": "^0.8.72",
45
- "@live-change/content-service": "^0.8.72",
46
- "@live-change/dao": "^0.8.72",
47
- "@live-change/dao-vue3": "^0.8.72",
48
- "@live-change/dao-websocket": "^0.8.72",
49
- "@live-change/db-client": "^0.8.72",
50
- "@live-change/email-service": "^0.8.72",
51
- "@live-change/framework": "^0.8.72",
52
- "@live-change/frontend-auto-form": "^0.8.72",
53
- "@live-change/frontend-base": "^0.8.72",
54
- "@live-change/geoip-service": "^0.8.72",
55
- "@live-change/image-frontend": "^0.8.72",
56
- "@live-change/locale-settings-service": "^0.8.72",
57
- "@live-change/password-authentication-service": "^0.8.72",
58
- "@live-change/peer-connection-service": "^0.8.72",
59
- "@live-change/prosemirror-service": "^0.8.72",
60
- "@live-change/secret-code-service": "^0.8.72",
61
- "@live-change/secret-link-service": "^0.8.72",
62
- "@live-change/session-service": "^0.8.72",
63
- "@live-change/task-service": "^0.8.72",
64
- "@live-change/upload-frontend": "^0.8.72",
65
- "@live-change/url-frontend": "^0.8.72",
66
- "@live-change/url-service": "^0.8.72",
67
- "@live-change/user-frontend": "^0.8.72",
68
- "@live-change/user-identification-service": "^0.8.72",
69
- "@live-change/user-service": "^0.8.72",
70
- "@live-change/vote-service": "^0.8.72",
71
- "@live-change/vue3-components": "^0.8.72",
72
- "@live-change/vue3-ssr": "^0.8.72",
38
+ "@live-change/access-control-frontend": "^0.8.74",
39
+ "@live-change/access-control-service": "^0.8.74",
40
+ "@live-change/backup-service": "^0.8.74",
41
+ "@live-change/blog-frontend": "^0.8.74",
42
+ "@live-change/blog-service": "^0.8.74",
43
+ "@live-change/cli": "^0.8.74",
44
+ "@live-change/content-frontend": "^0.8.74",
45
+ "@live-change/content-service": "^0.8.74",
46
+ "@live-change/dao": "^0.8.74",
47
+ "@live-change/dao-vue3": "^0.8.74",
48
+ "@live-change/dao-websocket": "^0.8.74",
49
+ "@live-change/db-client": "^0.8.74",
50
+ "@live-change/email-service": "^0.8.74",
51
+ "@live-change/framework": "^0.8.74",
52
+ "@live-change/frontend-auto-form": "^0.8.74",
53
+ "@live-change/frontend-base": "^0.8.74",
54
+ "@live-change/geoip-service": "^0.8.74",
55
+ "@live-change/image-frontend": "^0.8.74",
56
+ "@live-change/locale-settings-service": "^0.8.74",
57
+ "@live-change/password-authentication-service": "^0.8.74",
58
+ "@live-change/peer-connection-service": "^0.8.74",
59
+ "@live-change/prosemirror-service": "^0.8.74",
60
+ "@live-change/secret-code-service": "^0.8.74",
61
+ "@live-change/secret-link-service": "^0.8.74",
62
+ "@live-change/session-service": "^0.8.74",
63
+ "@live-change/task-service": "^0.8.74",
64
+ "@live-change/upload-frontend": "^0.8.74",
65
+ "@live-change/url-frontend": "^0.8.74",
66
+ "@live-change/url-service": "^0.8.74",
67
+ "@live-change/user-frontend": "^0.8.74",
68
+ "@live-change/user-identification-service": "^0.8.74",
69
+ "@live-change/user-service": "^0.8.74",
70
+ "@live-change/vote-service": "^0.8.74",
71
+ "@live-change/vue3-components": "^0.8.74",
72
+ "@live-change/vue3-ssr": "^0.8.74",
73
73
  "@vueuse/core": "^10.11.0",
74
74
  "boxicons": "^2.1.4",
75
75
  "codeceptjs-assert": "^0.0.5",
@@ -93,7 +93,7 @@
93
93
  "vue3-scroll-border": "0.1.6"
94
94
  },
95
95
  "devDependencies": {
96
- "@live-change/codeceptjs-helper": "^0.8.72",
96
+ "@live-change/codeceptjs-helper": "^0.8.74",
97
97
  "codeceptjs": "^3.6.5",
98
98
  "generate-password": "1.7.1",
99
99
  "playwright": "^1.41.2",
@@ -104,5 +104,5 @@
104
104
  "author": "Michał Łaszczewski <michal@laszczewski.pl>",
105
105
  "license": "ISC",
106
106
  "description": "",
107
- "gitHead": "58800a29cbc31ab9292cfaeeb1cdf2eeee21244d"
107
+ "gitHead": "d8c3d9737790e0e320216cfcdfc07012ad139911"
108
108
  }