Recherche avancée

Médias (1)

Mot : - Tags -/biomaping

Autres articles (38)

  • (Dés)Activation de fonctionnalités (plugins)

    18 février 2011, par

    Pour gérer l’ajout et la suppression de fonctionnalités supplémentaires (ou plugins), MediaSPIP utilise à partir de la version 0.2 SVP.
    SVP permet l’activation facile de plugins depuis l’espace de configuration de MediaSPIP.
    Pour y accéder, il suffit de se rendre dans l’espace de configuration puis de se rendre sur la page "Gestion des plugins".
    MediaSPIP est fourni par défaut avec l’ensemble des plugins dits "compatibles", ils ont été testés et intégrés afin de fonctionner parfaitement avec chaque (...)

  • Installation en mode ferme

    4 février 2011, par

    Le mode ferme permet d’héberger plusieurs sites de type MediaSPIP en n’installant qu’une seule fois son noyau fonctionnel.
    C’est la méthode que nous utilisons sur cette même plateforme.
    L’utilisation en mode ferme nécessite de connaïtre un peu le mécanisme de SPIP contrairement à la version standalone qui ne nécessite pas réellement de connaissances spécifique puisque l’espace privé habituel de SPIP n’est plus utilisé.
    Dans un premier temps, vous devez avoir installé les mêmes fichiers que l’installation (...)

  • 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 (...)

Sur d’autres sites (8231)

  • WebRTC : unsync audio after processing using ffmpeg

    22 novembre 2013, par QuickSilver

    I am recording a video and using RecordRTC : WebRTC . After receiving the webm video and wav audio at server, I'm encoding it to a mp4 file using ffmpeg(executing shell command via php). But after encoding process, the audio is unsync with video (audio ends before video). How can I fix this ?

    I have noticed that the recorded audio is 1 sec less in length with video.

    js code is here

    record.onclick = function() {
       record.disabled = true;
       var video_constraints = {
           mandatory: {
               "minWidth": "320",
               "minHeight": "240",
               "minFrameRate": "24",
               "maxWidth": "320",
               "maxHeight": "240",
               "maxFrameRate": "24"
           },
           optional: []
       };
       navigator.getUserMedia({
           audio: true,
           video: video_constraints
       }, function(stream) {
           preview.src = window.URL.createObjectURL(stream);
           preview.play();

           // var legalBufferValues = [256, 512, 1024, 2048, 4096, 8192, 16384];
           // sample-rates in at least the range 22050 to 96000.
           recordAudio = RecordRTC(stream, {
               /* extra important, we need to set a big buffer when capturing audio and video at the same time*/
               bufferSize: 16384
               //sampleRate: 45000
           });

           recordVideo = RecordRTC(stream, {
               type: 'video'
           });

           recordVideo.startRecording();
           recordAudio.startRecording();

           stop.disabled = false;
           recording_flag = true;
           $("#divcounter").show();
           $("#second-step-title").text('Record your video');
           initCountdown();
           uploadStatus.video = false;
           uploadStatus.audio = false;
       });
    };

    ffmpeg command used is :

    ffmpeg -y -i 166890589.wav -i 166890589.webm -vcodec libx264 166890589.mp4

    Currently I'm adding an offset of -1 to ffmpeg, but i don't think it's right.

    ffmpeg -y -itsoffset -1 -i 166890589.wav -i 166890589.webm -vcodec libx264 166890589.mp4
  • FFmpeg to RTMP - no audio on output [closed]

    25 mars 2022, par John Mergene Arellano

    From my client side, I am sending a stream using the Socket.IO library. I captured the video and audio using getUserMedia API.

    


    navigator.mediaDevices.getUserMedia(constraints).then((stream) => {
    window.videoStream = video.srcObject = stream;
    let mediaRecorder = new MediaRecorder(stream, {
        videoBitsPerSecond : 3 * 1024 * 1024
    });
    mediaRecorder.addEventListener('dataavailable', (e) => {
        let data = e.data;
        socket.emit('live', data);
    });
    mediaRecorder.start(1000);
});


    


    Then my server will receive the stream and write it to FFmpeg.

    


    client.on('live', (stream)=>{
   if(ffmpeg)
       ffmpeg.stdin.write(stream);
});


    


    I tried watching the live video in VLC media player. There is a 5 seconds delay and no audio output.

    


    Please see below for FFmpeg options I used :

    


    ffmpeg = this.CHILD_PROCESS.spawn("ffmpeg", [
   '-f',
   'lavfi',
   '-i', 'anullsrc',
   '-i','-',
   '-c:v', 'libx264', '-preset', 'veryfast', '-tune', 'zerolatency',
   '-c:a', 'aac', '-ar', '44100', '-b:a', '64k',
   '-y', //force to overwrite
   '-use_wallclock_as_timestamps', '1', // used for audio sync
   '-async', '1', // used for audio sync
   '-bufsize', '1000',
   '-f',
   'flv',
   `rtmp://127.0.0.1:1935/live/stream` ]);


    


    What is wrong with my setup ?

    


    I tried removing some of the options but failed. I am expecting to have an output of video and audio from the getUserMedia API.

    


  • Is there a way to horizontal flip video captured from flutter front camera

    5 mai 2024, par JoyJoy

    Basically, I'm trying to flip video horizontally after capturing it from flutter front camera. So I start recording, stop recording, flip the video and pass it to another page. I'm fairly new and would appreciate any assistance as my code isn't working

    


    I've tried doing so using the new ffmpeg_kit flutter

    


    Future<void> flipVideo(String inputPath, String outputPath) async{&#xA;final ffmpegCommand = "-i $inputPath -vf hflip $outputPath";&#xA;final session = FFmpegKit.executeAsync(ffmpegCommand);&#xA;await session.then((session) async {&#xA;  final returnCode = await session.getReturnCode();&#xA;  if (ReturnCode.isSuccess(returnCode)) {&#xA;    print(&#x27;Video flipping successful&#x27;);&#xA;  } else {&#xA;    print(&#x27;Video flipping failed: ${session.getAllLogs()}&#x27;);&#xA;  }&#xA;});}&#xA;&#xA;void stopVideoRecording() async {&#xA;XFile videopath = await cameraController.stopVideoRecording();&#xA;&#xA;try {&#xA;  final Directory appDocDir = await &#xA;  getApplicationDocumentsDirectory();&#xA;  final String outputDirectory = appDocDir.path;&#xA;  final String timeStamp = DateTime.now().millisecondsSinceEpoch.toString();&#xA;  final String outputPath = &#x27;$outputDirectory/flipped_video_$timeStamp.mp4&#x27;;&#xA;&#xA;  await flipVideo(videopath.path, outputPath);&#xA;&#xA;  // Once completed,&#xA;   Navigator.push(&#xA;    context,&#xA;    MaterialPageRoute(&#xA;      builder: (builder) => VideoViewPage(&#xA;        path: File(outputPath),&#xA;        fromFrontCamera: iscamerafront,&#xA;        flash: flash,&#xA;      )));&#xA;  print(&#x27;Video flipping completed&#x27;);&#xA;} catch (e) {&#xA;  print(&#x27;Error flipping video: $e&#x27;);&#xA;}&#xA;</void>

    &#xA;

    }

    &#xA;