
Recherche avancée
Autres articles (60)
-
Websites made with MediaSPIP
2 mai 2011, parThis page lists some websites based on MediaSPIP.
-
Creating farms of unique websites
13 avril 2011, parMediaSPIP platforms can be installed as a farm, with a single "core" hosted on a dedicated server and used by multiple websites.
This allows (among other things) : implementation costs to be shared between several different projects / individuals rapid deployment of multiple unique sites creation of groups of like-minded sites, making it possible to browse media in a more controlled and selective environment than the major "open" (...) -
MediaSPIP : Modification des droits de création d’objets et de publication définitive
11 novembre 2010, parPar défaut, MediaSPIP permet de créer 5 types d’objets.
Toujours par défaut les droits de création et de publication définitive de ces objets sont réservés aux administrateurs, mais ils sont bien entendu configurables par les webmestres.
Ces droits sont ainsi bloqués pour plusieurs raisons : parce que le fait d’autoriser à publier doit être la volonté du webmestre pas de l’ensemble de la plateforme et donc ne pas être un choix par défaut ; parce qu’avoir un compte peut servir à autre choses également, (...)
Sur d’autres sites (11010)
-
How can I correctly provide a mock webcam video to Chrome ?
15 décembre 2022, par doppelgreenerI'm trying to run end-to-end testing in Chrome for a product that requires a webcam feed halfway through to operate. From what I understand this means providing a fake webcam video to Chrome using the
--use-file-for-fake-video-capture="/path/to/video.y4m"
command line argument. It will then use that as a webcam video.


However, no matter what y4m file I provide, I get the following error from Chrome running under these conditions :



DOMException: Could not start video source
{
 code: 0,
 message: "Could not start video source",
 name: "NotReadableError"
}




Notably I can provide an audio file just fine using
--use-file-for-fake-audio-capture
and Chrome will work with it well. The video has been my sticking point.


This error comes out of the following straightforward mediaDevices request :



navigator.mediaDevices.getUserMedia({ video: true, audio: true })
 .then(data => {
 // do stuff
 })
 .catch(err => {
 // oh no!
 });




(This always hits the “oh no !” branch when a video file is provided.)



What I've tried so far



I've been running Chrome with the following command line arguments (newlines added for readability), and I'm using a Mac hence the
open
command :




open -a "Google Chrome" --args
 --disable-gpu
 --use-fake-device-for-media-stream
 --use-file-for-fake-video-capture="~/Documents/mock/webcam.y4m"
 --use-file-for-fake-audio-capture="~/Documents/mock/microphone.wav"




webcam.y4m
andmicrophone.wav
were generated from a video file I recorded.


I first recorded a twenty-second mp4 video using my browser's MediaRecorder, downloaded the result, and converted it using the following command line commands :



ffmpeg -y -i original.mp4 -f wav -vn microphone.wav
ffmpeg -y -i original.mp4 webcam.y4m




When this didn't work, I tried the same using a twenty-second movie file I recorded in Quicktime :



ffmpeg -y -i original.mov -f wav -vn microphone.wav
ffmpeg -y -i original.mov webcam.y4m




When that also failed, I went straight to the Chromium file that explains fake video capture, went to the example y4m file list it provided, and downloaded the grandma file and provided that as a command line argument to Chrome instead :



open -a "Google Chrome" --args
 --disable-gpu
 --use-fake-device-for-media-stream
 --use-file-for-fake-video-capture="~/Documents/mock/grandma_qcif.y4m"
 --use-file-for-fake-audio-capture="~/Documents/mock/microphone.wav"




Chrome provides me with the exact same error in all of these situations.



The only time Chrome doesn't error out with that mediaDevices request is when I omit the video completely :



open -a "Google Chrome" --args
 --disable-gpu
 --use-fake-device-for-media-stream
 --use-file-for-fake-audio-capture="~/Documents/mock/microphone.wav"




Accounting for C420mpeg2



TestRTC suggests Chrome will “crash” if I give it a
C420mpeg2
file, and recommends that simply replacing the metadata fixes the issue. Indeed the video file I generate from ffmpeg gives me the following header :


YUV4MPEG2 W1280 H720 F30:1 Ip A1:1 C420mpeg2 XYSCSS=420MPEG2




Chrome doesn't actually crash when run with this file, I just get the error above. If I edit the video file to the following header though per TestRTC's recommendations I get the same situation :



YUV4MPEG2 W1280 H720 F30:1 Ip A1:1 C420 XYSCSS=420MPEG2




The video file still gives me the above error in these conditions.



What can/should I do ?



How should I be providing a video file to Chrome for this command line argument ?



How should I be recording or creating the video file ?



How should I convert it to y4m ?


-
CRO Audit : Increase Your Conversions in 10 Simple Steps
25 mars 2024, par Erin -
Clickstream Data : Definition, Use Cases, and More
15 avril 2024, par Erin