Recherche avancée

Médias (39)

Mot : - Tags -/audio

Autres articles (43)

  • MediaSPIP Init et Diogène : types de publications de MediaSPIP

    11 novembre 2010, par

    À l’installation d’un site MediaSPIP, le plugin MediaSPIP Init réalise certaines opérations dont la principale consiste à créer quatre rubriques principales dans le site et de créer cinq templates de formulaire pour Diogène.
    Ces quatre rubriques principales (aussi appelées secteurs) sont : Medias ; Sites ; Editos ; Actualités ;
    Pour chacune de ces rubriques est créé un template de formulaire spécifique éponyme. Pour la rubrique "Medias" un second template "catégorie" est créé permettant d’ajouter (...)

  • Librairies et logiciels spécifiques aux médias

    10 décembre 2010, par

    Pour un fonctionnement correct et optimal, plusieurs choses sont à prendre en considération.
    Il est important, après avoir installé apache2, mysql et php5, d’installer d’autres logiciels nécessaires dont les installations sont décrites dans les liens afférants. Un ensemble de librairies multimedias (x264, libtheora, libvpx) utilisées pour l’encodage et le décodage des vidéos et sons afin de supporter le plus grand nombre de fichiers possibles. Cf. : ce tutoriel ; FFMpeg avec le maximum de décodeurs et (...)

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

  • Ffmpeg output gif is not playing on some media player

    25 décembre 2019, par Vicky

    I am using below command to convert video into gif.

    ffmpeg -y -ss 0 -t 14 -i Demo.mp4 -vf fps=10,scale=352:640 -gifflags -transdiff -y Test.gif

    Output gif is playing with my PC browser but on android device, it is not playing with all gallery and media player. What is the issue with my command ? I can not figure out.

  • FFMpeg Unknown function in zoompan filter

    4 août 2022, par Luciano Salemme

    i'm using ffmpeg with zoompan filter in my local environment whit the following command and it works well :

    


    ffmpeg -y -i "https://my.domain/workspaces/1/a_render_dir/video_spotx.mp4" -i "https://my.domain/workspaces/1/Gallery/travel_6.jpeg" -i "https://my.domain/workspaces/1/Gallery/travel_6.jpeg" -i "https://my.domain/workspaces/1/Gallery/travel_6.jpeg" -i "/usr/app/src/output/video.mp4/text_0.png" -i "/usr/app/src/output/video.mp4/text_1.png"    -filter_complex "[0]drawbox=x=0:y=0:w=iw:h=ih:color=00FF00@1:t=fill[padded];[0]format=yuva420p,pad=iw*2:ih*2:color=black@0,zoompan=z='if(lt(it,0),2,if(lte(pzoom,1.0),2,max(1.56,pzoom-0.005789473684210526)))':x=0:y=0:d=1:s=950x540[zp],[padded][zp]overlay=x='if(lt(t,3.04),t*213/3.04,213)':y='if(lt(t,3.04),t*50/3.04,50)':eval=frame[zp_stream],[1:v]scale=237.5:-1 [image1],[2:v]scale=237.5:-1 [image2],[3:v]scale=237.5:-1 [image3],[4:v]scale=475:-1 [image4],[5:v]scale=237.5:-1 [image5],[zp_stream][image1] overlay=95:54:enable='between(t,3,8)' [overlay1],[overlay1][image2] overlay=380:216:enable='between(t,3,8)' [overlay2],[overlay2][image3] overlay=532:54:enable='between(t,5,10)' [overlay3],[overlay3][image4] overlay=475:270:enable='between(t,1,8)' [overlay4],[overlay4][image5] overlay=0:0:enable='between(t,1,8)' [overlay5]" -map "[overlay5]" -pix_fmt yuv420p -map 0:a -c:a copy "/usr/app/src/output/video.mp4/render_video.mp4"


    


    However when i build a docker container and run that command it is not working. The output error is the following :

    


    [Parsed_zoompan_3 @ 0x2a08ac0c5140] [Eval @ 0x3ec4ec4c9ad0] Unknown function in 'it,0),2,if(lte(pzoom,1.0),2,max(1.56,pzoom-0.005789473684210526)))'


    


    I tried to add a fixed z value to the zoompan filter, and the command works also inside the container, so the issue is on the zoompan syntax.

    


    Here is my docker file

    


    FROM node:16

ENV NODE_ENV=production

RUN apt-get -y update && \
    apt-get install -y  ffmpeg \
    build-essential libcairo2-dev libpango1.0-dev libjpeg-dev libgif-dev librsvg2-dev 

WORKDIR /usr/src/app
COPY . .
RUN npm ci --production --silent

CMD node src/index.js


    


    Problem starts when i switch on new Macbook pro with M1 processor, but i'm not sure it's related, i build the image with the following command :

    


    docker buildx build --platform linux/x86_64  -t render-job .


    


    On my macchine there is ffmpeg 5.0.1 installed, but on docker container the command apt-get install -y     ffmpeg installs just the follow wersion :

    


    ffmpeg version 4.1.9-0+deb10u1 Copyright (c) 2000-2022 the FFmpeg developers
  built with gcc 8 (Debian 8.3.0-6)


    


    I don't think is relate to the version, because before to build with M1 processor the zoompan filter was working also in the container.

    


    Any help is appreciated.
Thanks.

    


  • Generating DASH manifest with ffmpeg works in Docker exec shell but not in os.exec golang

    22 février 2023, par Inquisitor

    I am trying to generate a DASH manifest with ffmpeg using this command

    


    /usr/bin/ffmpeg -f webm_dash_manifest -i ./480.webm -f webm_dash_manifest -i ./audio.webm -c copy -map 0:0 -map 1:0 -y -f webm_dash_manifest -adaptation_sets "id=0,streams=0 id=1,streams=1" ./manifest.mpd -loglevel repeat+level+verbose


    


    I run this in go, in a docker container as shown :

    


    func runFFmpeg(arguments []string) {
    arguments = append(arguments, "-loglevel", "repeat+level+verbose")
    cmd := exec.Command("ffmpeg", arguments...)

    fmt.Printf("cmd: %v\n", cmd)

    var out bytes.Buffer
    var stderr bytes.Buffer
    cmd.Stdout = &out
    cmd.Stderr = &stderr
    err := cmd.Run()

    if err != nil {
        log.Println(err)
        log.Println(stderr.String())
    }
}
runFFmpeg([]string{"-f", "webm_dash_manifest", "-i", "./480.webm", "-f", "webm_dash_manifest", "-i", "./audio.webm", "-c", "copy", "-map", "0:0", "-map", "1:0", "-y", "-f", "webm_dash_manifest", "-adaptation_sets", "\"id=0,streams=0 id=1,streams=1\"", "./manifest.mpd"})


    


    But I get this output :

    


     cmd: /usr/bin/ffmpeg -f webm_dash_manifest -i ./480.webm -f webm_dash_manifest -i ./audio.webm -c copy -map 0:0 -map 1:0 -y -copy_unknown -f webm_dash_manifest -adaptation_sets "id=0,streams=0 id=1,streams=1" ./manifest.mpd -loglevel repeat+level+verbose
 2023/02/22 04:45:17 exit status 1
 2023/02/22 04:45:17 [info] ffmpeg version 5.1.2 Copyright (c) 2000-2022 the FFmpeg developers
 [info]   built with gcc 12.2.1 (Alpine 12.2.1_git20220924-r3) 20220924
 [info]   configuration: --prefix=/usr --enable-avfilter --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-gnutls --enable-gpl --enable-libass --enable-libmp3lame --enable-libpulse --enable-libvorbis --enable-libvpx --enable-libxvid --enable-libx264 --enable-libx265 --enable-libtheora --enable-libv4l2 --enable-libdav1d --enable-lto --enable-postproc --enable-pic --enable-pthreads --enable-shared --enable-libxcb --enable-librist --enable-libsrt --enable-libssh --enable-libvidstab --disable-stripping --disable-static --disable-librtmp --disable-lzma --enable-libaom --enable-libopus --enable-libsoxr --enable-libwebp --enable-vaapi --enable-vdpau --enable-vulkan --enable-libdrm --enable-libzmq --optflags=-O2 --disable-debug --enable-libsvtav1
 [info]   libavutil      57. 28.100 / 57. 28.100
 [info]   libavcodec     59. 37.100 / 59. 37.100
 [info]   libavformat    59. 27.100 / 59. 27.100
 [info]   libavdevice    59.  7.100 / 59.  7.100
 [info]   libavfilter     8. 44.100 /  8. 44.100
 [info]   libswscale      6.  7.100 /  6.  7.100
 [info]   libswresample   4.  7.100 /  4.  7.100
 [info]   libpostproc    56.  6.100 / 56.  6.100
 [webm_dash_manifest @ 0x7fcec2836100] [warning] Could not find codec parameters for stream 0 (Video: vp9, 1 reference frame, none(tv, progressive, left), 640x480): unspecified pixel format
 Consider increasing the value for the 'analyzeduration' (0) and 'probesize' (5000000) options
 [info] Input #0, webm_dash_manifest, from './480.webm':
 [info]   Metadata:
 [info]     title           : Big Buck Bunny, Sunflower version
 [info]     GENRE           : Animation
 [info]     MAJOR_BRAND     : isom
 [info]     MINOR_VERSION   : 1
 [info]     COMPATIBLE_BRANDS: isomavc1
 [info]     COMPOSER        : Sacha Goedegebure
 [info]     ARTIST          : Blender Foundation 2008, Janus Bager Kristensen 2013
 [info]     COMMENT         : Creative Commons Attribution 3.0 - http://bbb3d.renderfarming.net
 [info]     ENCODER         : Lavf59.27.100
 [info]   Duration: 00:10:34.60, bitrate: 352 kb/s
 [info]   Stream #0:0: Video: vp9, 1 reference frame, none(tv, progressive, left), 640x480, SAR 853:640 DAR 853:480, 30 fps, 30 tbr, 1k tbn (default)
 [info]     Metadata:
 [info]       HANDLER_NAME    : GPAC ISO Video Handler
 [info]       VENDOR_ID       : [0][0][0][0]
 [info]       ENCODER         : Lavc59.37.100 libvpx-vp9
 [info]       DURATION        : 00:10:34.600000000
 [info]       webm_dash_manifest_duration: 634600
 [info]       webm_dash_manifest_initialization_range: 889
 [info]       webm_dash_manifest_file_name: 480.webm
 [info]       webm_dash_manifest_track_number: 1
 [info]       webm_dash_manifest_cues_start: 27924928
 [info]       webm_dash_manifest_cues_end: 27927508
 [info]       webm_dash_manifest_bandwidth: 738287
 [info]       webm_dash_manifest_cluster_keyframe: 1
 [info]       webm_dash_manifest_cue_timestamps: 67,5067,10067,15067,20067,25067,30067,35067,40067,45067,50067,55067,60067,65067,70067,75067,80067,85067,90067,95067,100067,105067,110067,115067,120067,125067,130067,135067,140067,145067,150067,155067,160067,165067,170067,175067,180067,185067,190067,195067
 [info] Input #1, webm_dash_manifest, from './audio.webm':
 [info]   Metadata:
 [info]     title           : Big Buck Bunny, Sunflower version
 [info]     GENRE           : Animation
 [info]     MAJOR_BRAND     : isom
 [info]     MINOR_VERSION   : 1
 [info]     COMPATIBLE_BRANDS: isomavc1
 [info]     COMPOSER        : Sacha Goedegebure
 [info]     ARTIST          : Blender Foundation 2008, Janus Bager Kristensen 2013
 [info]     COMMENT         : Creative Commons Attribution 3.0 - http://bbb3d.renderfarming.net
 [info]     ENCODER         : Lavf59.27.100
 [info]   Duration: 00:05:35.91, bitrate: 120 kb/s
 [info]   Stream #1:0: Audio: vorbis, 48000 Hz, 5.1, fltp (default)
 [info]     Metadata:
 [info]       HANDLER_NAME    : GPAC ISO Audio Handler
 [info]       VENDOR_ID       : [0][0][0][0]
 [info]       ENCODER         : Lavc59.37.100 libvorbis
 [info]       DURATION        : 00:05:35.907000000
 [info]       webm_dash_manifest_duration: 335907
 [info]       webm_dash_manifest_initialization_range: 7411
 [info]       webm_dash_manifest_file_name: audio.webm
 [info]       webm_dash_manifest_track_number: 1
 [info]       webm_dash_manifest_cues_start: 5047497
 [info]       webm_dash_manifest_cues_end: 5048846
 [info]       webm_dash_manifest_bandwidth: 126994
 [info]       webm_dash_manifest_cluster_keyframe: 1
 [info]       webm_dash_manifest_cue_timestamps: 0,4986,9980,14962,19959,24956,29946,34930,39916,44911,49908,54892,59874,64868,69858,74858,79855,84847,89834,94834,99826,104826,109826,114818,119812,124799,129780,134770,139756,144743,149727,154719,159714,164706,169698,174687,179668,184667,189658,194650,19
 HERE'S THE ERROR --> [error] Could not write header for output file #0 (incorrect codec parameters ?): Operation not permitted
 [error] Error initializing output stream 0:1 -- 
 [info] Stream mapping:
 [info]   Stream #0:0 -> #0:0 (copy)
 [info]   Stream #1:0 -> #0:1 (copy)
 [error] 
 [AVIOContext @ 0x7fcebe23a840] [verbose] Statistics: 0 bytes written, 0 seeks, 0 writeouts
 [AVIOContext @ 0x7fcebe23a980] [verbose] Statistics: 5940786 bytes read, 133 seeks
 [AVIOContext @ 0x7fcebe23acc0] [verbose] Statistics: 2260628 bytes read, 72 seeks


    


    It works perfectly however if I run it within docker exec (exec into the container and run the command in bash). Also, note in the last output that the command is well formed when I print it out from go. File permissions are also not the problem since the command to create the video variants works with os.exec i.e

    


    runFFmpeg([]string{"-i", originalFilePath, "-c:v", "libvpx-vp9", "-keyint_min", "150", "-g", "150", "-tile-columns", "4", "-frame-parallel", "1", "-f", "webm", "-dash", "1", "-an", "-vf", fmt.Sprintf("scale=%s:%s", width, height), "-b:v", bitRate, "-dash", "1", "-y", destinationFilePath})