Recherche avancée

Médias (1)

Mot : - Tags -/biomaping

Autres articles (62)

  • MediaSPIP version 0.1 Beta

    16 avril 2011, par

    MediaSPIP 0.1 beta est la première version de MediaSPIP décrétée comme "utilisable".
    Le fichier zip ici présent contient uniquement les sources de MediaSPIP en version standalone.
    Pour avoir une installation fonctionnelle, il est nécessaire d’installer manuellement l’ensemble des dépendances logicielles sur le serveur.
    Si vous souhaitez utiliser cette archive pour une installation en mode ferme, il vous faudra également procéder à d’autres modifications (...)

  • MediaSPIP 0.1 Beta version

    25 avril 2011, par

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

  • Amélioration de la version de base

    13 septembre 2013

    Jolie sélection multiple
    Le plugin Chosen permet d’améliorer l’ergonomie des champs de sélection multiple. Voir les deux images suivantes pour comparer.
    Il suffit pour cela d’activer le plugin Chosen (Configuration générale du site > Gestion des plugins), puis de configurer le plugin (Les squelettes > Chosen) en activant l’utilisation de Chosen dans le site public et en spécifiant les éléments de formulaires à améliorer, par exemple select[multiple] pour les listes à sélection multiple (...)

Sur d’autres sites (9463)

  • Ffmpeg - Codec 'mp2' (86016) is not supported by the bitstream filter 'aac_adtstoasc'

    28 octobre 2019, par user3925023

    I’m trying to dump a video streaming on local file using this syntax :

    ffmpeg -i "http://test.com/videoxxx" -c copy -bsf:v aac_adtstoasc -t 10 c:\\temp\\out.mp4 -loglevel debug

    It works pretty fine but recently I’ve encounter specific error :

    [mpegts @ 00000232c9568f40] DTS 165134700 < 165199500 out of order
    [mpegts @ 00000232c9568f40] Non-increasing DTS in stream 0: packet 249 with DTS 165199500, packet 250 with DTS 165134700
    [mpegts @ 00000232c9568f40] Continuity check failed for pid 0 expected 12 got 11
    [mpegts @ 00000232c9568f40] Continuity check failed for pid 4096 expected 12 got 11
    [h264 @ 00000232c9571980] ct_type:0 pic_struct:1
    [mpegts @ 00000232c9568f40] Continuity check failed for pid 256 expected 8 got 10
    [mpegts @ 00000232c9568f40] Continuity check failed for pid 17 expected 10 got 5
    [mpegts @ 00000232c9568f40] Continuity check failed for pid 257 expected 2 got 12
    [mpegts @ 00000232c9568f40] PES packet size mismatch
    [mpegts @ 00000232c9568f40] Non-increasing DTS in stream 1: packet 207 with DTS 165121380, packet 208 with DTS 164212020
    [mpegts @ 00000232c9568f40] max_analyze_duration 5000000 reached at 5016000 microseconds st:1
    [mpegts @ 00000232c9568f40] After avformat_find_stream_info() pos: 799667 bytes read:822628 seeks:0 frames:463
    Input #0, mpegts, from 'http://test.com/videoxxx':
     Duration: N/A, start: 1824.578000, bitrate: N/A
     Program 1
       Metadata:
         service_name    : Service01
         service_provider: FFmpeg
       Stream #0:0[0x100], 252, 1/90000: Video: h264 (High), 1 reference frame ([27][0][0][0] / 0x001B), yuv420p(tv, bt470bg, top first, left), 720x576 [SAR 16:11 DAR 20:11], 0/1, 25 fps, 50 tbr, 90k tbn, 50 tbc
       Stream #0:1[0x101](pol), 211, 1/90000: Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, fltp, 192 kb/s
    Successfully opened the file.
    Parsing a group of options: output url c:\temp\out.mp4.
    Applying option c (codec name) with argument copy.
    Applying option bsf:a (A comma-separated list of bitstream filters) with argument aac_adtstoasc.
    Applying option t (record or transcode "duration" seconds of audio/video) with argument 30.
    Successfully parsed a group of options.
    Opening an output file: c:\temp\out.mp4.
    [file @ 00000232ca120e80] Setting default whitelist 'file,crypto'
    Successfully opened the file.
    [AVBSFContext @ 00000232ca6e5780] Codec 'mp2' (86016) is not supported by the bitstream filter 'aac_adtstoasc'. Supported codecs are: aac (86018)
    Error initializing bitstream filter: aac_adtstoasc
    Stream mapping:
     Stream #0:0 -> #0:0 (copy)
     Stream #0:1 -> #0:1 (copy)
       Last message repeated 1 times
    [AVIOContext @ 00000232c95ecfc0] Statistics: 0 seeks, 0 writeouts
    [AVIOContext @ 00000232c9574780] Statistics: 822628 bytes read, 0 seeks

    Is it possible to use specific FFMPEG command avoid bitstream filter issue ?
    I’ve tryed with :

    -vcodec copy -t 20 c:\\temp\\out.mp4 -loglevel debug

    and :

    c:a copy -t 10 c:\\temp\\out.mp4 -loglevel debug

    but I’m able to create a cutted mp4 with 1 frame and audio cut after 1/2 sec.

    Is it also a way to debug the source ?
    Thx

  • Linux based mp3 to wmv converter

    30 octobre 2012, par algorithmicCoder

    Is there some software library that can i can interact with via command line (no GUI business) exist that can take an mp3 and output wmv or a similar format ?

    Can ffmpeg do this ?

    I found this product—> http://www.3herosoft.com/how-to-convert-mp3-to-wmv.html ...ideally i would want to find a library that was able to carry out the same basic functionality via command line.

    Thanks !

  • what is the faster way to load a local image using javascript and / or nodejs and faster way to getImageData ?

    4 octobre 2020, par Tom Lecoz

    I'm working on a video-editing-tool online for a large audience.
Users can create some "scenes" with multiple images, videos, text and sound , add a transition between 2 scenes, add some special effects, etc...

    


    When the users are happy with what they made, they can download the result as a mp4 file with a desired resolution and framerate. Let's say full-hd-60fps for example (it can be bigger).

    


    I'm using nodejs & ffmpeg to build the mp4 from HtmlCanvasElement.
Because it's impossible to seek perfectly frame-by-frame with a HtmlVideoElement, I start to convert the videos from each "scene" in a sequence of png using ffmpeg.
Then, I read my scene frame by frame and , if there are some videos, I replace the videoElements by an image containing the right frame. Once every images are loaded, I launch the capture and go to the next frame.

    


    Everythings works as expected but it's too slow !
Even with a powerfull computer (ryzen 3900X, rtx 2080 super, 32 gb of ram , nvme 970 evo plus) , in the best case, I can capture basic full-hd movie (if it contains videos inside) at 40 FPS.

    


    It may sounds good enought but it's not.
Our company produce thousands of mp4 every day.
A slow encoding process means more servers at works so it will be more expensive for us.

    


    Until now, my company used (and is still using) a tool based on Adobe Flash because the whole video-editing-tool was made with Flash. I was (and am) in charge to translate the whole thing into HTML. I reproduced every feature one by one during 4 years (it's by far my biggest project) and this is the very last step but even if the html-version of our player works very well, the encoding process is much slower than the flash version - able to encode full-hd at 90-100FPS - )

    


    I put console.log everywhere in order to find what makes the encoding so slow and there are 2 bottlenecks :

    


    As I said before, for each frame, if there are videos on the current scene, I replace video-elements by images representing the right frame at the right time. Since I'm using local files, I expected a loading time almost synchronous. It's not the case at all, it required more than 10 ms in most cases.

    


    So my first question is "what is the fastest way to handle local image loading with javascript used as final output ?".

    


    I don't care about the technology involved, I have no preference, I just want to be able to load my local image faster than what I get for now.

    


    The second bottleneck is weird and to be honest I don't understand what's happening here.

    


    When the current frame is ready to be captured, I need to get it's data using CanvasRenderingContext2D.getImageData in order to send it to ffmpeg and this particular step is very slow.

    


    This single line

    


    let imageData = canvas.getContext("2d").getImageData(0,0,1920,1080);  


    


    takes something like 12-13 ms.
It's very slow !

    


    So I'm also searching another way to extract the pixels-data from my canvas.

    


    Few days ago, I found an alternative to getImageData using the new class called VideoFrame that has been created to be used with the classes VideoEncoder & VideoDecoder that will come in Chrome 86.
You can do something like that

    


    let buffers:Uint8Array[] = [];
createImageBitmap(canvas).then((bmp)=>{
   let videoFrame = new VideoFrame(bmp);
   for(let i = 0;i<3;i++){
      buffers[i] = new Uint8Array(videoFrame.planes[id].length);
      videoFrame.planes[id].readInto(buffers[i])
   }
})


    


    It allow me to grab the pixel data around 25% quickly than getImageData but as you can see, I don't get a single RGBA buffer but 3 weirds buffers matching with I420 format.

    


    In an ideal way, I would like to send it directly to ffmpeg but I don't know how to deals with these 3 buffers (i have no experience with I420 format) .

    


    I'm not sure at all the solution that involve VideoFrame is a good one. If you know a faster way to transfer the data from a canvas to ffmpeg, please tell me.

    


    Thanks for reading this very long post.
Any help would be very appreciated