Recherche avancée

Médias (1)

Mot : - Tags -/framasoft

Autres articles (55)

  • HTML5 audio and video support

    13 avril 2011, par

    MediaSPIP uses HTML5 video and audio tags to play multimedia files, taking advantage of the latest W3C innovations supported by modern browsers.
    The MediaSPIP player used has been created specifically for MediaSPIP and can be easily adapted to fit in with a specific theme.
    For older browsers the Flowplayer flash fallback is used.
    MediaSPIP allows for media playback on major mobile platforms with the above (...)

  • Support de tous types de médias

    10 avril 2011

    Contrairement à beaucoup de logiciels et autres plate-formes modernes de partage de documents, MediaSPIP a l’ambition de gérer un maximum de formats de documents différents qu’ils soient de type : images (png, gif, jpg, bmp et autres...) ; audio (MP3, Ogg, Wav et autres...) ; vidéo (Avi, MP4, Ogv, mpg, mov, wmv et autres...) ; contenu textuel, code ou autres (open office, microsoft office (tableur, présentation), web (html, css), LaTeX, Google Earth) (...)

  • Support audio et vidéo HTML5

    10 avril 2011

    MediaSPIP utilise les balises HTML5 video et audio pour la lecture de documents multimedia en profitant des dernières innovations du W3C supportées par les navigateurs modernes.
    Pour les navigateurs plus anciens, le lecteur flash Flowplayer est utilisé.
    Le lecteur HTML5 utilisé a été spécifiquement créé pour MediaSPIP : il est complètement modifiable graphiquement pour correspondre à un thème choisi.
    Ces technologies permettent de distribuer vidéo et son à la fois sur des ordinateurs conventionnels (...)

Sur d’autres sites (7902)

  • How can I correctly provide a mock webcam video to Chrome ?

    15 décembre 2022, par doppelgreener

    I'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 and microphone.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 ?

    


  • Revert "avcodec/decode : copy the output parameters from the last bsf in the chain...

    12 septembre 2018, par James Almer
    Revert "avcodec/decode : copy the output parameters from the last bsf in the chain back to the AVCodecContext"
    

    This reverts commit f631c328e680a3dd491936b92f69970c20cdcfc7.

    The avcodec_parameters_to_context() call was freeing and reallocating
    AVCodecContext->extradata, essentially taking ownership of it, which according
    to the doxy is user owned. This is an API break and has produced crashes in
    some library users like Firefox[1].

    Revert until a better solution is found to internally propagate the filtered
    extradata back into the decoder context, or a decision is made to change the
    API.

    [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1486080

    Signed-off-by : James Almer <jamrial@gmail.com>

    • [DH] libavcodec/decode.c
  • Revert "decode : copy the output parameters from the last bsf in the chain back to...

    12 septembre 2018, par James Almer
    Revert "decode : copy the output parameters from the last bsf in the chain back to the AVCodecContext"
    

    This reverts commit 662558f985f50834eebe82d6b6854c66f33ab320.

    The avcodec_parameters_to_context() call was freeing and reallocating
    AVCodecContext->extradata, essentially taking ownership of it, which according
    to the doxy is user owned. This is an API break and has produces crashes in
    some library users like Firefox.
    Revert until a better solution is found to internally propagate the filtered
    extradata back into the decoder context.

    Signed-off-by : James Almer <jamrial@gmail.com>

    • [DBH] libavcodec/decode.c