Recherche avancée

Médias (1)

Mot : - Tags -/wave

Autres articles (88)

  • Gestion des droits de création et d’édition des objets

    8 février 2011, par

    Par défaut, beaucoup de fonctionnalités sont limitées aux administrateurs mais restent configurables indépendamment pour modifier leur statut minimal d’utilisation notamment : la rédaction de contenus sur le site modifiables dans la gestion des templates de formulaires ; l’ajout de notes aux articles ; l’ajout de légendes et d’annotations sur les images ;

  • Le profil des utilisateurs

    12 avril 2011, par

    Chaque utilisateur dispose d’une page de profil lui permettant de modifier ses informations personnelle. Dans le menu de haut de page par défaut, un élément de menu est automatiquement créé à l’initialisation de MediaSPIP, visible uniquement si le visiteur est identifié sur le site.
    L’utilisateur a accès à la modification de profil depuis sa page auteur, un lien dans la navigation "Modifier votre profil" est (...)

  • Dépôt de média et thèmes par FTP

    31 mai 2013, par

    L’outil MédiaSPIP traite aussi les média transférés par la voie FTP. Si vous préférez déposer par cette voie, récupérez les identifiants d’accès vers votre site MédiaSPIP et utilisez votre client FTP favori.
    Vous trouverez dès le départ les dossiers suivants dans votre espace FTP : config/ : dossier de configuration du site IMG/ : dossier des média déjà traités et en ligne sur le site local/ : répertoire cache du site web themes/ : les thèmes ou les feuilles de style personnalisées tmp/ : dossier de travail (...)

Sur d’autres sites (8892)

  • configure : fix —enable-omx compile on raspberry pi

    29 août 2019, par Aman Gupta
    configure : fix —enable-omx compile on raspberry pi
    

    Many ffmpeg + rpi compilation guides on the internet recommend
    using `./configure —enable-omx —enable-omx-rpi`. This fails
    to find the IL OMX headers on device because the omx require_headers
    check happens first before the add_cflags in omx_rpi.

    A workaround is to use `./configure —enable-omx-rpi` only, since
    omx_rpi already implies omx. But because many users expect to use
    existing scripts and commands, we swap the order here so omx_rpi
    special cases are applied first.

    In the past this wasn't an issue because users noticed the OMX_Core.h
    missing error and installed libomxil-bellagio-dev. But since
    76c82843ccad1, the rpi specific headers from /opt/vc/include/IL
    are required.

    Signed-off-by : Aman Gupta <aman@tmm1.net>

    • [DH] configure
  • AVAssetWriter creating mp4 with no sound in last 50msec

    12 août 2015, par Joseph K

    I’m working on a project involving live streaming from the iPhone’s camera.

    To minimize loss during AVAssetWriter finishWriting, I use an array of 2 asset writers and swap them whenever I need to create an mp4 fragment out of the recorded buffers.

    Code responsible for capturing Audio & Video sample buffers

    func captureOutput(captureOutput: AVCaptureOutput!, didOutputSampleBuffer sampleBuffer: CMSampleBuffer!, fromConnection connection: AVCaptureConnection!) {

       if CMSampleBufferDataIsReady(sampleBuffer) &lt;= 0 {
               println("Skipped sample because it was not ready")
               return
           }

       if captureOutput == audioOutput  {

           if audioWriterBuffers[0].readyForMoreMediaData() {
               if !writers[0].appendAudio(sampleBuffer) { println("Failed to append: \(recordingPackages[0].name). Error: \(recordingPackages[0].outputWriter.error.localizedDescription)") }
               else {
                   writtenAudioFrames++

                   if writtenAudioFrames == framesPerFragment {
                       writeFragment()
                   }
               }
           }
           else {
               println("Skipped audio sample; it is not ready.")
           }
       }

       else if captureOutput == videoOutput {
           //Video sample buffer
           if videoWriterBuffers[0].readyForMoreMediaData() {
               //Call startSessionAtSourceTime if needed
               //Append sample buffer with a source time
           }
       }
    }

    Code responsible for the writing and swapping

    func writeFragment() {
       writtenAudioFrames = 0

       swap(&amp;writers[0], &amp;writers[1])
       if !writers[0].startWriting() {println( "Failed to start OTHER writer writing") }
       else { startTime  = CFAbsoluteTimeGetCurrent() }

       audioWriterBuffers[0].markAsFinished()
       videoWriterBuffers[0].markAsFinished()

       writers[1].outputWriter.finishWritingWithCompletionHandler { () -> Void in
           println("Finish Package record Writing, now Resetting")
           //
           // Handle written MP4 fragment code
           //

           //Reset Writer
           //Basically reallocate it as a new AVAssetWriter with a given URL and MPEG4 file Type and add inputs to it
           self.resetWriter()
       }

    The issue at hand

    The written MP4 fragments are being sent over to a local sandbox server to be analyzed.

    When MP4 fragments are stitched together using FFMpeg, there is a noticeable glitch in sound due to the fact that there is not audio at the last 50msec of every fragment.

    My audio AVAssetWriterInput’s settings are the following :

    static let audioSettings: [NSObject : AnyObject]! =
    [
       AVFormatIDKey : NSNumber(integer: kAudioFormatMPEG4AAC),
       AVNumberOfChannelsKey : NSNumber(integer: 1),
       AVSampleRateKey : NSNumber(int: 44100),
       AVEncoderBitRateKey : NSNumber(int: 64000),
    ]

    As such, I encode 44 audio sample buffers every second. They are all being successfully appended.

    Further resources

    Here’s a waveform display of the audio stream after concatenating the mp4 fragments

    Waveform of audio stream

     !! Note that my fragments are about 2secs in length.
     !! Note that I’m focusing on audio since video frames are extremely smooth when jumping from one fragment to another.

    Any idea as to what is causing this ? I can provide further code or info if needed.

  • ffmpeg with high delay in first input stream

    15 juin 2018, par DeStOv

    My goal is to use ffmpeg to create a stream which contains two other streams (both input streams should be next to each other). In general it works with the following command :

    ffmpeg -i rtmp://server/live/streamA -i rtmp://server/live/streamB \
       -filter_complex '[0:v]pad=800:ih+10[int];[int][1:v]overlay=400:0[vid]' \
       -map [vid] -f flv - | ffplay -fflags nobuffer -

    The problem is that streamA has a quite large delay of two to three seconds, i.e. if something happens in streamA it is shown after 2 seconds. The delay for streamB is moderate.

    If I swap the order of the input streams, i.e. "-i .../streamB -i .../streamA" streamB has the high delay and the delay of streamA is moderate. My guess is that this is because the second stream is opened some seconds after the first stream was opened (but I don’t know for sure).

    How can i fix it so that both streamA and streamB are in real time ?