Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

110
Views
Why video stream doesn't work on iOS 15.1?

Looks like in iOS 15 or 15.1 a bug appeared that somehow broke the video streaming feature.

I've found a couple of links related to that issue but still couldn't figure it out. I use VueJS and I tried different solutions.

So, it doesn't work on any browser in iOS 15.1.

What I exactly do I have a video tag, in which I put srcObject with a video stream. The following code works everywhere except iOS 15.1:

<template>
    <video
      autoplay
      playsinline
      ref="video"
      class="video"
      :class="{ 'video-mobile': $mq === 'sm' }"
    />
</template>

<script>
    // ...
    async mounted () {
      if (!this.deviceSupported) {
        this.handleError('NoSupportedDevice')
        return
      }

      try {
        let stream = await navigator.mediaDevices.getUserMedia(this.constraints)
        this.$refs.video.srcObject = stream

      } catch (error) {
        console.log(error, 'camera_error')
        this.handleError(error.name)
      }
    },

</script>

BUT What happens is that if I hide and show the browser window, the video appears. And even if I don't do that, I'm still able to capture the video screenshot, so technically the stream works. The only thing that doesn't work is that the image of the video tag does not appear.

I tried different solutions

  1. Using v-show, v-if and initialising video in $nextTick
  2. Using timeout (e.g. after getting video permissions I waited for a second and then initialized video with srcObject)

Without any success =\

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

You need to add 'muted' attribute in pair with 'autoplay' to make the video play by default. Also, try 'playsInline' if 'playsinline' still doesn't resolve it.

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!