Recherche avancée

Médias (91)

Autres articles (70)

  • Personnaliser en ajoutant son logo, sa bannière ou son image de fond

    5 septembre 2013, par

    Certains thèmes prennent en compte trois éléments de personnalisation : l’ajout d’un logo ; l’ajout d’une bannière l’ajout d’une image de fond ;

  • Ecrire une actualité

    21 juin 2013, par

    Présentez les changements dans votre MédiaSPIP ou les actualités de vos projets sur votre MédiaSPIP grâce à la rubrique actualités.
    Dans le thème par défaut spipeo de MédiaSPIP, les actualités sont affichées en bas de la page principale sous les éditoriaux.
    Vous pouvez personnaliser le formulaire de création d’une actualité.
    Formulaire de création d’une actualité Dans le cas d’un document de type actualité, les champs proposés par défaut sont : Date de publication ( personnaliser la date de publication ) (...)

  • Publier sur MédiaSpip

    13 juin 2013

    Puis-je poster des contenus à partir d’une tablette Ipad ?
    Oui, si votre Médiaspip installé est à la version 0.2 ou supérieure. Contacter au besoin l’administrateur de votre MédiaSpip pour le savoir

Sur d’autres sites (9593)

  • FFMPEG Merge Multiple Videos : No Audio Source for one of them

    28 mars 2020, par Coach Roebuck

    I’ve written a node.js script to merge multiple video files into a single file. I’ve encountered a scenario in which no audio is provided for one of the input video files.

    I first executed ffprobe so that I can access what I’ll refer to as the "video file spec". In this scenario, I created a basic module to help me better understand my problem :

    Evaluation from all processes: [
     {
       fileName: 'input-0.mp4',
       isVideoAvailable: true,
       isAudioAvailable: false,
       width: 1920,
       height: 1080,
       sampleRateAspectRatio: '1/1',
       audioVolume: 1,
       duration: '13.140000'
     },
     {
       fileName: 'input-1.mp4',
       isVideoAvailable: true,
       isAudioAvailable: true,
       width: 1920,
       height: 1080,
       sampleRateAspectRatio: '1/1',
       audioVolume: 1,
       duration: '17.160000'
     },
     {
       fileName: 'input-2.mp4',
       isVideoAvailable: true,
       isAudioAvailable: true,
       width: 1920,
       height: 1080,
       sampleRateAspectRatio: '1/1',
       audioVolume: 1,
       duration: '20.280000'
     },
     {
       fileName: 'input-3.mp4',
       isVideoAvailable: true,
       isAudioAvailable: true,
       width: 1920,
       height: 1080,
       sampleRateAspectRatio: '1/1',
       audioVolume: 1,
       duration: '19.020000'
     },
     {
       fileName: 'input-4.mp4',
       isVideoAvailable: true,
       isAudioAvailable: true,
       width: 1920,
       height: 1080,
       sampleRateAspectRatio: '1/1',
       audioVolume: 1,
       duration: '9.480000'
     }
    ]

    This next block of code are the parameters that I’ve actually hard-coded in this case. The screen resolution and aspect ratio are manually set, as I discovered differing settings with each video I have been processing. These parameters allow FFMPEG to execute successfully under normal circumstances :

    let ffmpegParameters = [
     '-i',
     'input-0.mp4',
     '-i',
     'input-1.mp4',
     '-i',
     'input-2.mp4',
     '-i',
     'input-3.mp4',
     '-i',
     'input-4.mp4',
     '-f',
     'lavfi',
     '-t',
     '0.1',
     '-i',
     'anullsrc',
     '-filter_complex',
     '[0:v]scale=1920:1080,setsar=1/1[v0];[0:a]volume=1.0[a0];[1:v]scale=1920:1080,setsar=1/1[v1];[1:a]volume=1.0[a1];[2:v]scale=1920:1080,setsar=1/1[v2];[2:a]volume=1.0[a2];[3:v]scale=1920:1080,setsar=1/1[v3];[3:a]volume=1.0[a3];[4:v]scale=1920:1080,setsar=1/1[v4];[4:a]volume=1.0[a4];[v0][a0][v1][a1][v2][a2][v3][a3][v4][a4]concat=n=5:v=1:a=1[v][a]',
     '-map',
     '[v]',
     '-map',
     '[a]',
     '-c:v',
     'libx264',
     '-vsync',
     '2',
     'output.mp4'
    ]

    A comment from a different thread suggested to supply a dummy audio in cases such as mine. I’ve added that to no prevail :

     '-f',
     'lavfi',
     '-t',
     '0.1',
     '-i',
     'anullsrc',

    I do not know how to adjust the complex filter to account for my situation of the first video containing no audio. I’ve included the entire log below :

    Logs:
    ffmpeg version git-2020-02-03-1c15111
    Copyright (c) 2000-2020 the FFmpeg developers
     built with Apple clang version 11.0.0 (clang-1100.0.33.8)
     configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libdav1d --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libaom --enable-appkit --enable-avfoundation --enable-coreimage --enable-audiotoolbox
     libavutil      56. 38.100 / 56. 38.100
     libavcodec     58. 67.100 / 58. 67.100
     libavformat    58. 37.100 / 58. 37.100
     libavdevice    58.  9.103 / 58.  9.103
     libavfilter     7. 73.100 /  7. 73.100
     libswscale      5.  6.100 /  5.  6.100
     libswresample   3.  6.100 /  3.  6.100
     libpostproc    55.  6.100 / 55.  6.100

    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'input-0.mp4':
     Metadata:
       major_brand     : isom
       minor_version   : 512
       compatible_brands: isomiso2avc1mp41
       encoder         : Lavf58.37.100

     Duration: 00:00:14.80, start: 1.620000, bitrate: 1499 kb/s
       Stream #0:0(und): Video: h264 (Baseline) (avc1 / 0x31637661), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], 1498 kb/s, 25 fps, 25 tbr, 1200k tbn, 2400k tbc (default)
       Metadata:
         handler_name    : VideoHandler

    Input #1, mov,mp4,m4a,3gp,3g2,mj2, from 'input-1.mp4':
     Metadata:
       major_brand     : isom
       minor_version   : 512
       compatible_brands: isomiso2avc1mp41
       encoder         : Lavf58.37.100
     Duration: 00:00:18.48, start: 0.000000, bitrate: 977 kb/s
       Stream #1:0(eng): Video: h264 (Baseline) (avc1 / 0x31637661), yuv420p, 1440x876 [SAR 1:1 DAR 120:73], 903 kb/s, 15.21 fps, 16.67 tbr, 16k tbn, 32k tbc (default)
       Metadata:
         handler_name    : VideoHandler
       Stream #1:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, mono, fltp, 69 kb/s (default)
       Metadata:
         handler_name    : SoundHandler
    Input #2, mov,mp4,m4a,3gp,3g2,mj2, from 'input-2.mp4':
     Metadata:
       major_brand     : isom
       minor_version   : 512
       compatible_brands: isomiso2avc1mp41
       encoder         : Lavf58.37.100
     Duration: 00:00:22.68, start: 0.000000, bitrate: 1795 kb/s
       Stream #2:0(eng): Video: h264 (Baseline) (avc1 / 0x31637661), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], 1718 kb/s, 29.54 fps, 50 tbr, 16k tbn, 32k tbc (default)
       Metadata:
         handler_name    : VideoHandler
       Stream #2:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, mono, fltp, 69 kb/s (default)
       Metadata:
         handler_name    : SoundHandler

    Input #3, mov,mp4,m4a,3gp,3g2,mj2, from 'input-3.mp4':
     Metadata:
       major_brand     : isom
       minor_version   : 512
       compatible_brands: isomiso2avc1mp41
       encoder         : Lavf58.37.100
     Duration: 00:00:54.60, start:
    0.000000, bitrate: 404 kb/s
       Stream #3:0(eng): Video: h264 (Baseline) (avc1 / 0x31637661), yuv420p, 1440x876 [SAR 1:1 DAR 120:73], 330 kb/s, 15.24 fps, 16.67 tbr, 16k tbn, 32k tbc (default)
       Metadata:
         handler_name    : VideoHandler
       Stream #3:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, mono, fltp, 69 kb/s (default)
       Metadata:
         handler_name    : SoundHandler

    Input #4, mov,mp4,m4a,3gp,3g2,mj2, from 'input-4.mp4':
     Metadata:
       major_brand     : isom
       minor_version   : 512
       compatible_brands: isomiso2avc1mp41
       encoder         : Lavf58.37.100
     Duration: 00:00:09.36
    , start: 0.000000, bitrate: 1794 kb/s
       Stream #4:0(eng): Video: h264 (Baseline) (avc1 / 0x31637661), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], 1717 kb/s, 29.38 fps, 50 tbr, 16k tbn, 32k tbc (default)
       Metadata:
         handler_name    : VideoHandler
       Stream #4:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, mono, fltp, 69 kb/s (default)
       Metadata:
         handler_name    : SoundHandler

    Stream specifier ':a' in filtergraph description [0:v]scale=1920:1080,setsar=1/1[v0];[0:a]volume=1.0[a0];[1:v]scale=1920:1080,setsar=1/1[v1];[1:a]volume=1.0[a1];[2:v]scale=1920:1080,setsar=1/1[v2];[2:a]volume=1.0[a2];[3:v]scale=1920:1080,setsar=1/1[v3];[3:a]volume=1.0[a3];[4:v]scale=1920:1080,setsar=1/1[v4];[4:a]volume=1.0[a4];[v0][a0][v1][a1][v2][a2][v3][a3][v4][a4]concat=n=5:v=1:a=1[v][a] matches no streams.

    When I removed the stream specifier [a0], I received a different error :

    FFmpeg Video Merge - STDERR: [Parsed_setsar_3 @ 0x7f87c7709100] Media type mismatch between the 'Parsed_setsar_3' filter output pad 0 (video) and the 'Parsed_concat_14' filter input pad 1 (audio)
    [AVFilterGraph @ 0x7f87c7430c00] Cannot create the link setsar:0 -> concat:1

    My question is how will the filter-complex value of my parameter list that I have defined be adjusted to deal with that first video, which has no audio ?

  • React Electron ffmpeg-extract-frames build error

    28 mars 2020, par taylorallen0913

    I am using the npm module ffmpeg-extract-frames for splitting video frames. It works completely fine when I am testing the module in a vanilla node environment. However, when I import the module in my Electron React desktop app component, it gives me a error when building.

    This is how I am importing it :

    const extractFrames = require("ffmpeg-extract-frames");

    This is the error I am getting when building in my React Electron component :

    > expedition-hacks-project@0.1.0 build /home/taylorallen/Desktop/expedition-hacks-project
    > set "FLUENTFFMPEG_COV=false" && react-scripts build

    Creating an optimized production build...
    Failed to compile.

    ./node_modules/fluent-ffmpeg/index.js
    Cannot find module: './lib-cov/fluent-ffmpeg'. Make sure this package is installed.

    You can install this package by running: npm install ./lib-cov/fluent-ffmpeg.


    npm ERR! code ELIFECYCLE
    npm ERR! errno 1
    npm ERR! expedition-hacks-project@0.1.0 build: `set "FLUENTFFMPEG_COV=false" && react-scripts build`
    npm ERR! Exit status 1
    npm ERR!
    npm ERR! Failed at the expedition-hacks-project@0.1.0 build script.
    npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

    npm ERR! A complete log of this run can be found in:
    npm ERR!     /home/taylorallen/.npm/_logs/2020-03-28T22_36_18_100Z-debug.log

    My package.json :

    {
     "name": "expedition-hacks-project",
     "version": "0.1.0",
     "private": true,
     "dependencies": {
       "@testing-library/jest-dom": "^4.2.4",
       "@testing-library/react": "^9.5.0",
       "@testing-library/user-event": "^7.2.1",
       "bootstrap": "^4.4.1",
       "bootstrap-fileinput": "^5.0.8",
       "ffmpeg-extract-frames": "^2.0.2",
       "fluent-ffmpeg": "^2.1.2",
       "jquery": "^3.4.1",
       "popper.js": "^1.16.1",
       "react": "^16.13.1",
       "react-bootstrap": "^1.0.0",
       "react-dom": "^16.13.1",
       "react-dropzone": "^10.2.2",
       "react-icons": "^3.9.0",
       "react-router-dom": "^5.1.2",
       "react-scripts": "3.4.1"
     },
     "homepage": "./",
     "main": "src/main.js",
     "scripts": {
       "start": "react-scripts start",
       "build": "set \"FLUENTFFMPEG_COV=false\" && react-scripts build",
       "test": "react-scripts test",
       "eject": "react-scripts eject",
       "electron": "electron ."
     },
     "eslintConfig": {
       "extends": "react-app"
     },
     "browserslist": {
       "production": [
         ">0.2%",
         "not dead",
         "not op_mini all"
       ],
       "development": [
         "last 1 chrome version",
         "last 1 firefox version",
         "last 1 safari version"
       ]
     },
     "devDependencies": {
       "electron": "^8.2.0",
       "electron-log": "^4.1.0",
       "react-app-rewired": "^2.1.5"
     }
    }

    I found a github issue https://github.com/fluent-ffmpeg/node-fluent-ffmpeg/issues/573#issuecomment-305408048 addressing this error, and I set FLUENTFFMPEG_COV=0 on in my build script

    My scripts :

     "scripts": {
       "start": "react-scripts start",
       "build": "set \"FLUENTFFMPEG_COV=false\" && react-scripts build",
       "test": "react-scripts test",
       "eject": "react-scripts eject",
       "electron": "electron ."
     },

    Setting the env variable seems to not do anything, I still get the same error.

  • avformat/movenc : write the mdcv atom by default

    28 mars 2020, par Michael Bradshaw
    avformat/movenc : write the mdcv atom by default
    

    The mdcv atom isn't in ISO/IEC 14496-12:2015 but it is expected to be
    added soon. See :
    http://ffmpeg.org/pipermail/ffmpeg-devel/2020-April/259529.html

    The mdcv atom is already parsed in FFmpeg in mov.c.

    Signed-off-by : Michael Bradshaw <mjbshaw@google.com>

    • [DH] libavformat/movenc.c