
Recherche avancée
Médias (91)
-
Corona Radiata
26 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
Lights in the Sky
26 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
Head Down
26 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
Echoplex
26 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
Discipline
26 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
Letting You
26 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
Autres articles (97)
-
Publier sur MédiaSpip
13 juin 2013Puis-je poster des contenus à partir d’une tablette Ipad ?
Oui, si votre Médiaspip installé est à la version 0.2 ou supérieure. Contacter au besoin l’administrateur de votre MédiaSpip pour le savoir -
MediaSPIP 0.1 Beta version
25 avril 2011, parMediaSPIP 0.1 beta is the first version of MediaSPIP proclaimed as "usable".
The zip file provided here only contains the sources of MediaSPIP in its standalone version.
To get a working installation, you must manually install all-software dependencies on the server.
If you want to use this archive for an installation in "farm mode", you will also need to proceed to other manual (...) -
Problèmes fréquents
10 mars 2010, parPHP et safe_mode activé
Une des principales sources de problèmes relève de la configuration de PHP et notamment de l’activation du safe_mode
La solution consiterait à soit désactiver le safe_mode soit placer le script dans un répertoire accessible par apache pour le site
Sur d’autres sites (7646)
-
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 ?


-
How can I correctly provide a fake webcam input to Chrome ?
30 août 2018, 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.y4mWhen 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.y4mWhen 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 ?
-
How to compress webcam videos recorded by html5 MediaRecorder api ?
19 mai 2017, par JasonYI successfully recorded my webcam using MediaRecorder api and the resulting filesizes seemed far too big for their quality.
For example, for an 8 second video that was 480x640 I got a 1mB file size. That does not seem right.
My code to record()
navigator.mediaDevices.getUserMedia({video: true, audio: true})
.then(function(stream){
var options = {
mimeType : "video/webm;codecs=vp9"
//I don't set bitrate here even if I do the quality is too bad
}
var media_recorder = new MediaRecorder(media_stream, options);
var recorded_data = [];
media_recorder.ondataavailable = function(e){
recorded_data.push(e.data);
}
media_recorder.onstop = function(e){
recorded_data.push(e.data);
var recorded_blob = new Blob(recorded_data, { 'type' : 'video/webm; codecs=vp9' });
var recorded_video_url = window.URL.createObjectURL(recorded_blob);
//here I write some code to download the blob from this url through a href
}
})The file obtained by this method is unreasonably large which makes me wonder if it was even compressed when encoded by VP9 ? A 7 second video is about 870kB !
Inspecting the file with a mediainfo tool gives me
General
Count : 323
Count of stream of this kind : 1
Kind of stream : General
Kind of stream : General
Stream identifier : 0
Count of video streams : 1
Count of audio streams : 1
Video_Format_List : VP9
Video_Format_WithHint_List : VP9
Codecs Video : V_VP9
Video_Language_List : English
Audio_Format_List : Opus
Audio_Format_WithHint_List : Opus
Audio codecs : Opus
Audio_Language_List : English
Complete name : recorded_video.webm
File name : recorded_video
File extension : webm
Format : WebM
Format : WebM
Format/Url : http://www.webmproject.org/
Format/Extensions usually used : webm
Commercial name : WebM
Format version : Version 2
Internet media type : video/webm
Codec : WebM
Codec : WebM
Codec/Url : http://www.webmproject.org/
Codec/Extensions usually used : webm
File size : 867870
File size : 848 KiB
File size : 848 KiB
File size : 848 KiB
File size : 848 KiB
File size : 847.5 KiB
File last modification date : UTC 2017-05-19 05:48:00
File last modification date (local) : 2017-05-19 17:48:00
Writing application : Chrome
Writing application : Chrome
Writing library : Chrome
Writing library : Chrome
IsTruncated : Yes
Video
Count : 332
Count of stream of this kind : 1
Kind of stream : Video
Kind of stream : Video
Stream identifier : 0
StreamOrder : 1
ID : 2
ID : 2
Unique ID : 62101435245162993
Format : VP9
Commercial name : VP9
Codec ID : V_VP9
Codec ID/Url : http://www.webmproject.org/
Codec : V_VP9
Codec : V_VP9
Width : 640
Width : 640 pixels
Height : 480
Height : 480 pixels
Pixel aspect ratio : 1.000
Display aspect ratio : 1.333
Display aspect ratio : 4:3
Frame rate mode : VFR
Frame rate mode : Variable
Language : en
Language : English
Language : English
Language : en
Language : eng
Language : en
Default : Yes
Default : Yes
Forced : No
Forced : No
Audio
Count : 272
Count of stream of this kind : 1
Kind of stream : Audio
Kind of stream : Audio
Stream identifier : 0
StreamOrder : 0
ID : 1
ID : 1
Unique ID : 32224324715799545
Format : Opus
Format/Url : http://opus-codec.org/
Commercial name : Opus
Internet media type : audio/opus
Codec ID : A_OPUS
Codec ID/Url : http://opus-codec.org
Codec : Opus
Codec : Opus
Codec/Family : PCM
Channel(s) : 1
Channel(s) : 1 channel
Channel positions : Front: C
Channel positions : 1/0/0
Sampling rate : 48000
Sampling rate : 48.0 KHz
Compression mode : Lossy
Compression mode : Lossy
Delay : 718
Delay : 718ms
Delay : 718ms
Delay : 718ms
Delay : 00:00:00.718
Delay, origin : Container
Delay, origin : Container
Language : en
Language : English
Language : English
Language : en
Language : eng
Language : en
Default : Yes
Default : Yes
Forced : No
Forced : NoWhat did I do wrong ? Do I have to re-encode it after the chunks get appended ? Is there some attribute I’m missing ? VP9 is supposed to reduce file sizes drastically.