Recherche avancée

Médias (91)

Autres articles (72)

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

  • Configurer la prise en compte des langues

    15 novembre 2010, par

    Accéder à la configuration et ajouter des langues prises en compte
    Afin de configurer la prise en compte de nouvelles langues, il est nécessaire de se rendre dans la partie "Administrer" du site.
    De là, dans le menu de navigation, vous pouvez accéder à une partie "Gestion des langues" permettant d’activer la prise en compte de nouvelles langues.
    Chaque nouvelle langue ajoutée reste désactivable tant qu’aucun objet n’est créé dans cette langue. Dans ce cas, elle devient grisée dans la configuration et (...)

  • La sauvegarde automatique de canaux SPIP

    1er avril 2010, par

    Dans le cadre de la mise en place d’une plateforme ouverte, il est important pour les hébergeurs de pouvoir disposer de sauvegardes assez régulières pour parer à tout problème éventuel.
    Pour réaliser cette tâche on se base sur deux plugins SPIP : Saveauto qui permet une sauvegarde régulière de la base de donnée sous la forme d’un dump mysql (utilisable dans phpmyadmin) mes_fichiers_2 qui permet de réaliser une archive au format zip des données importantes du site (les documents, les éléments (...)

Sur d’autres sites (9512)

  • Revision 36454 : uniformiser les inputs du formulaire de login

    19 mars 2010, par brunobergot@… — Log

    uniformiser les inputs du formulaire de login

  • dashjs can't find initialization segment on manifest.mpd

    30 avril 2016, par Abelardo Mendoza

    I am following this tutorial to stream a WebM. I have no issues running the ffmpeg commands to generate the videos/audio/manifest files but when I try to run it locally, there’s no video or audio at all and dashjs floods the console with :

    Searching for initialization.    
    Start searching for initialization.    
    Perform init search: http://localhost:8080/video_1280x720_500k.webm    
    Perform SIDX load: http://localhost:8080/video_640x360_750k.webm    
    Perform SIDX load: http://localhost:8080/video_1280x720_500k.webm

    Writing that to console until I stop the server. I have tried using other mpd files such as this, which is used on the dashjs quickstart and it plays the video without any problems.

    I used this guide to install the latest version of ffmpeg on Ubuntu 14.04 LTS :

    ffmpeg version N-79688-g3cb3ddd Copyright (c) 2000-2016 the FFmpeg developers
    built with gcc 5.3.0 (Ubuntu 5.3.0-3ubuntu1~14.04) 20151204
    configuration: --prefix=/home/ab/cpp/ffmpeg_build --pkg-config-flags=--static --extra-cflags=-I/home/ab/cpp/ffmpeg_build/include --extra-ldflags=-L/home/ab/cpp/ffmpeg/lib --bindir=/home/ab/bin --enable-gpl --enable-libass --enable-libfdk-aac --enable-libfreetype --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-nonfree
    libavutil      55. 23.100 / 55. 23.100
    libavcodec     57. 38.100 / 57. 38.100
    libavformat    57. 34.103 / 57. 34.103
    libavdevice    57.  0.101 / 57.  0.101
    libavfilter     6. 44.100 /  6. 44.100
    libswscale      4.  1.100 /  4.  1.100
    libswresample   2.  0.101 /  2.  0.101
    libpostproc    54.  0.100 / 54.  0.100

    When running on ffmpeg :

    ffmpeg \
    -f webm_dash_manifest -i video_160x90_250k.webm \
    -f webm_dash_manifest -i video_320x180_500k.webm \
    -f webm_dash_manifest -i video_640x360_750k.webm \
    -f webm_dash_manifest -i video_640x360_1000k.webm \
    -f webm_dash_manifest -i video_1280x720_500k.webm \
    -f webm_dash_manifest -i audio_128k.webm \
    -c copy -map 0 -map 1 -map 2 -map 3 -map 4 -map 5 \
    -f webm_dash_manifest \
    -adaptation_sets "id=0,streams=0,1,2,3,4 id=1,streams=5" \
    manifest.mpd

    It generates the following manifest.mpd :

    <?xml version="1.0" encoding="UTF-8"?>
    <mpd xmlns="urn:mpeg:DASH:schema:MPD:2011" type="static" mediapresentationduration="PT117.726S" minbuffertime="PT1S" profiles="urn:webm:dash:profile:webm-on-demand:2012">
     <period start="PT0S" duration="PT117.726S">
       <adaptationset mimetype="video/webm" codecs="vp9" lang="eng" bitstreamswitching="true" subsegmentalignment="true" subsegmentstartswithsap="1">
         <representation bandwidth="198155" width="160" height="90">
           <baseurl>video_160x90_250k.webm</baseurl>
           <segmentbase indexrange="2007834-2008211">
             <initialization range="0-437"></initialization>
           </segmentbase>
         </representation>
         <representation bandwidth="459264" width="320" height="180">
           <baseurl>video_320x180_500k.webm</baseurl>
           <segmentbase indexrange="4459996-4460374">
             <initialization range="0-439"></initialization>
           </segmentbase>
         </representation>
         <representation bandwidth="718495" width="640" height="360">
           <baseurl>video_640x360_750k.webm</baseurl>
           <segmentbase indexrange="6614036-6614414">
             <initialization range="0-441"></initialization>
           </segmentbase>
         </representation>
         <representation bandwidth="931445" width="640" height="360">
           <baseurl>video_640x360_1000k.webm</baseurl>
           <segmentbase indexrange="8309082-8309460">
             <initialization range="0-441"></initialization>
           </segmentbase>
         </representation>
         <representation bandwidth="821274" width="1280" height="720">
           <baseurl>video_1280x720_500k.webm</baseurl>
           <segmentbase indexrange="8728812-8729190">
             <initialization range="0-441"></initialization>
           </segmentbase>
         </representation>
       </adaptationset>
       <adaptationset mimetype="audio/webm" codecs="vorbis" lang="eng" audiosamplingrate="44100" bitstreamswitching="true" subsegmentalignment="true" subsegmentstartswithsap="1">
         <representation bandwidth="107104">
           <baseurl>audio_128k.webm</baseurl>
           <segmentbase indexrange="1538710-1539184">
             <initialization range="0-4112"></initialization>
           </segmentbase>
         </representation>
       </adaptationset>
     </period>
    </mpd>

    The index.html has a few changes because dash.js changed the way the player gets initialized.

       
           
           
           <code class="echappe-js">&lt;script src=&quot;http://cdn.dashjs.org/latest/dash.all.debug.js&quot;&gt;&lt;/script&gt;

    And here is Chromium’s log file. I’m converting this webm from this site.

    If I missed out any other relevant information or if anyone can guide me into the right direction, please let me know.

    Edit :

    Like Will Law mentioned, using the Shaka Player worked without any issues with my current manifest. Hope this helps anyone else.

  • i am getting when i am trying to run Ffmpegrabberframe on alpine image [closed]

    18 mars 2020, par avinash tiwari

    # # A fatal error has been detected by the Java Runtime Environment :

    # SIGSEGV (0xb) at pc=0x000000000000dc56, pid=446, tid=0x00007fd3c478db20 # # JRE version : OpenJDK Runtime Environment

    (8.0_242-b08) (build 1.8.0_242-b08) # Java VM : OpenJDK 64-Bit Server
    VM (25.242-b08 mixed mode linux-amd64 compressed oops) # Derivative :
    IcedTea 3.15.0 # Distribution : Custom build (Wed Jan 29 10:43:50 UTC
    2020) # Problematic frame : # C 0x000000000000dc56 # # Failed to
    write core dump. Core dumps have been disabled. To enable core
    dumping, try "ulimit -c unlimited" before starting Java again # # An
    error report file with more information is saved as : #
    /builds/had/tip/asset-delivery/firstgen-ingestion---backend/hs_err_pid446.log

    # If you would like to submit a bug report, please include # instructions on how to reproduce the bug and visit : #

    https://icedtea.classpath.org/bugzilla # Exception in thread
    "Thread-8" java.io.EOFException at
    java.io.ObjectInputStream$BlockDataInputStream.peekByte(ObjectInputStream.java:3015)
    at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1576)
    at java.io.ObjectInputStream.readObject(ObjectInputStream.java:465)
    at java.io.ObjectInputStream.readObject(ObjectInputStream.java:423)
    at
    org.scalatest.tools.Framework$ScalaTestRunner$Skeleton$1$React.react(Framework.scala:818)
    at
    org.scalatest.tools.Framework$ScalaTestRunner$Skeleton$1.run(Framework.scala:807)

    def extractAVI(rawDrivePath: String): List[String] = {
       var errorList: List[String] = List.empty
       FileUtils.listFiles(new File(rawDrivePath), new SuffixFileFilter(".avi"), TrueFileFilter.INSTANCE)
         .asScala.toList.foreach(aviFile => {
         var grabber: FFmpegFrameGrabber = null
         var aviStream: InputStream = null
         var isFailedExtraction: Boolean = false
         try {
           LOGGER.info(s"--------inside try----------${aviFile.getAbsolutePath}")
           aviStream = new FileInputStream(aviFile.getAbsolutePath)
           LOGGER.info("--------create grabber----------")
           grabber = new FFmpegFrameGrabber(aviStream)
           LOGGER.info("--------created grabber extraction of drives----------")
           grabber.start()
           LOGGER.info("--------start grabber of drives----------")
           var count: Int = 1
           for (frame &lt;- Iterator.continually(grabber.grabImage()).takeWhile(_ != null)) {
             ImageIO.write(converter.convert(frame), "jpg", new File(aviFile.getParent, "capture-" + count + ".jpg"))
             count += 1
           }
           grabber.stop()
         } catch {
           case ex: Exception => {
             LOGGER.info(s"Error while extracting images for ${aviFile.getAbsolutePath} {}", ex)
             errorList :+= s"${aviFile.getAbsolutePath.replace(rawDrivePath, "")} -> ${ex.getMessage}"
             isFailedExtraction = true
             LOGGER.info("last inside catch")
           }
         } finally {
           // Close the video file
           LOGGER.info(s"inside finally ")
           if (grabber != null)
             grabber.release()
           if (aviStream != null)
             aviStream.close()
           if (aviFile.exists() &amp;&amp; !isFailedExtraction) {
             LOGGER.debug(s"Deleting ${aviFile.getAbsolutePath}")
             FileUtils.deleteQuietly(aviFile)
           }
         }
       })