Recherche avancée

Médias (0)

Mot : - Tags -/formulaire

Aucun média correspondant à vos critères n’est disponible sur le site.

Autres articles (111)

  • 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

  • Script d’installation automatique de MediaSPIP

    25 avril 2011, par

    Afin de palier aux difficultés d’installation dues principalement aux dépendances logicielles coté serveur, un script d’installation "tout en un" en bash a été créé afin de faciliter cette étape sur un serveur doté d’une distribution Linux compatible.
    Vous devez bénéficier d’un accès SSH à votre serveur et d’un compte "root" afin de l’utiliser, ce qui permettra d’installer les dépendances. Contactez votre hébergeur si vous ne disposez pas de cela.
    La documentation de l’utilisation du script d’installation (...)

  • Les formats acceptés

    28 janvier 2010, par

    Les commandes suivantes permettent d’avoir des informations sur les formats et codecs gérés par l’installation local de ffmpeg :
    ffmpeg -codecs ffmpeg -formats
    Les format videos acceptés en entrée
    Cette liste est non exhaustive, elle met en exergue les principaux formats utilisés : h264 : H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 m4v : raw MPEG-4 video format flv : Flash Video (FLV) / Sorenson Spark / Sorenson H.263 Theora wmv :
    Les formats vidéos de sortie possibles
    Dans un premier temps on (...)

Sur d’autres sites (11405)

  • FFMPEG — using 'amix' to combine short audio clip with a video results in final video's sound cutting off early

    12 avril 2022, par kilika

    I am trying to combine the following :

    


    (a) : 29s video clip that has its own audio that lasts the entire duration

    


    (b) : audio clip I want to play at the start of the video, in conjunction with original audio, and is 2 seconds long

    


    I successfully use 'amix' to obtain a video at the end with combined audio, but the problem is that the final video's audio cuts off at around 26 out of the 29 seconds of the video and goes silent.

    


    What doesn't make any sense is that the resulting video plays as it should, with the audio successfully mixed. But the output video's audio stream loses the last 3 seconds.

    


    Here's the 'amix' command I'm using (sending via subprocess) :

    


    subprocess.call(['ffmpeg','-i', input.mp4', '-i', "audioclip.mp3", '-filter_complex', 'amix', output.mp4'])


    


    I've also used versions of this command that spell out the -map "0:a" and -map "1:a", or tried using 'amix=inputs=2:duration:longest' among many other additions. All lead to the same problem : the final combined video's audio drops out with 3 seconds remaining in the video, even though the initial 'input.mp4' video has a full 29 out of 29 seconds of audio.

    


    Does anyone know why these last several seconds of audio from [a] are missing in the final video ?

    


    _________________________________________________________________

    


    edit : Below is my output when I run the amix command listed above :

    


    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'RuneBearinstakill_advanced.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf59.20.101
  Duration: 00:00:29.77, start: 0.000000, bitrate: 5441 kb/s
  Stream #0:0[0x1](eng): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt470bg/bt470bg/smpte170m, progressive), 1920x1080 [SAR 1:1 DAR 16:9], 5304 kb/s, 30 fps, 30 tbr, 15360 tbn (default)
    Metadata:
      handler_name    : Bento4 Video Handler
      vendor_id       : [0][0][0][0]
  Stream #0:1[0x2](eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 128 kb/s (default)
    Metadata:
      handler_name    : Bento4 Sound Handler
      vendor_id       : [0][0][0][0]
[mp3 @ 000001f0c8ec2040] Estimating duration from bitrate, this may be inaccurate
Input #1, mp3, from 'TTS_clip.mp3':
  Duration: 00:00:01.90, start: 0.000000, bitrate: 32 kb/s
  Stream #1:0: Audio: mp3, 24000 Hz, mono, fltp, 32 kb/s
Stream mapping:
  Stream #0:1 (aac) -> amix (graph 0)
  Stream #1:0 (mp3float) -> amix (graph 0)
  amix:default (graph 0) -> Stream #0:0 (aac)
  Stream #0:0 -> #0:1 (h264 (native) -> h264 (libx264))
Press [q] to stop, [?] for help
[libx264 @ 000001f0c8cbe5c0] using SAR=1/1
[libx264 @ 000001f0c8cbe5c0] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
[libx264 @ 000001f0c8cbe5c0] profile High, level 4.0, 4:2:0, 8-bit
[libx264 @ 000001f0c8cbe5c0] 264 - core 164 r3094 bfc87b7 - H.264/MPEG-4 AVC codec - Copyleft 2003-2022 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=24 lookahead_threads=4 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
Output #0, mp4, to 'RuneBearinstakill_advancedwithtts.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf59.20.101
  Stream #0:0: Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 128 kb/s
    Metadata:
      encoder         : Lavc59.25.100 aac
  Stream #0:1(eng): Video: h264 (avc1 / 0x31637661), yuv420p(tv, bt470bg/bt470bg/smpte170m, progressive), 1920x1080 [SAR 1:1 DAR 16:9], q=2-31, 30 fps, 15360 tbn (default)
    Metadata:
      handler_name    : Bento4 Video Handler
      vendor_id       : [0][0][0][0]
      encoder         : Lavc59.25.100 libx264
    Side data:
      cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: N/A
frame=  893 fps=110 q=-1.0 Lsize=   18717kB time=00:00:29.66 bitrate=5168.5kbits/s speed=3.66x    
video:18256kB audio:433kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.150179%
[aac @ 000001f0c8f9ebc0] Qavg: 921.259
[libx264 @ 000001f0c8cbe5c0] frame I:4     Avg QP:21.33  size: 71366
[libx264 @ 000001f0c8cbe5c0] frame P:633   Avg QP:23.32  size: 23837
[libx264 @ 000001f0c8cbe5c0] frame B:256   Avg QP:25.22  size: 12968
[libx264 @ 000001f0c8cbe5c0] consecutive B-frames: 57.2% 10.3% 10.1% 22.4%
[libx264 @ 000001f0c8cbe5c0] mb I  I16..4: 17.9% 71.4% 10.8%
[libx264 @ 000001f0c8cbe5c0] mb P  I16..4:  6.9% 17.6%  0.8%  P16..4: 43.1%  6.5%  1.5%  0.0%  0.0%    skip:23.6%
[libx264 @ 000001f0c8cbe5c0] mb B  I16..4:  1.5%  4.2%  0.3%  B16..8: 39.7%  4.6%  0.5%  direct: 1.6%  skip:47.6%  L0:55.9% L1:41.8% BI: 2.3%
[libx264 @ 000001f0c8cbe5c0] 8x8 transform intra:69.5% inter:87.3%
[libx264 @ 000001f0c8cbe5c0] coded y,uvDC,uvAC intra: 35.6% 26.8% 0.8% inter: 13.4% 10.8% 0.0%
[libx264 @ 000001f0c8cbe5c0] i16 v,h,dc,p: 21% 37% 12% 30%
[libx264 @ 000001f0c8cbe5c0] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 25% 26% 21%  4%  5%  5%  6%  4%  5%
[libx264 @ 000001f0c8cbe5c0] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 24% 28% 15%  5%  7%  7%  7%  5%  4%
[libx264 @ 000001f0c8cbe5c0] i8c dc,h,v,p: 67% 18% 14%  1%
[libx264 @ 000001f0c8cbe5c0] Weighted P-Frames: Y:0.2% UV:0.0%
[libx264 @ 000001f0c8cbe5c0] ref P L0: 72.3% 15.4%  8.7%  3.6%  0.0%
[libx264 @ 000001f0c8cbe5c0] ref B L0: 88.9%  9.5%  1.6%
[libx264 @ 000001f0c8cbe5c0] ref B L1: 97.7%  2.3%
[libx264 @ 000001f0c8cbe5c0] kb/s:5024.13


    


    And here is the output when I check the stream durations for the input video and the output video, showing how the output video's audio stream is somehow reduced by several seconds after the amix :

    


    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'RuneBearinstakill_advanced.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf59.20.101
  Duration: 00:00:29.77, start: 0.000000, bitrate: 5403 kb/s
  Stream #0:0[0x1](eng): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt470bg/bt470bg/smpte170m, progressive), 1920x1080 [SAR 1:1 DAR 16:9], 5266 kb/s, 30 fps, 30 tbr, 15360 tbn (default)
    Metadata:
      handler_name    : Bento4 Video Handler
      vendor_id       : [0][0][0][0]
  Stream #0:1[0x2](eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 128 kb/s (default)
    Metadata:
      handler_name    : Bento4 Sound Handler
      vendor_id       : [0][0][0][0]
[STREAM]
duration=29.766667
[/STREAM]
[STREAM]
duration=29.738000
[/STREAM]

Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'RuneBearinstakill_advancedwithtts.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf59.20.101
  Duration: 00:00:29.77, start: 0.000000, bitrate: 5098 kb/s
  Stream #0:0[0x1](und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 128 kb/s (default)
    Metadata:
      handler_name    : SoundHandler
      vendor_id       : [0][0][0][0]
  Stream #0:1[0x2](eng): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt470bg/bt470bg/smpte170m, progressive), 1920x1080 [SAR 1:1 DAR 16:9], 4971 kb/s, 30 fps, 30 tbr, 15360 tbn (default)
    Metadata:
      handler_name    : Bento4 Video Handler
      vendor_id       : [0][0][0][0]
[STREAM]
duration=27.477000
[/STREAM]
[STREAM]
duration=29.766667


    


  • Use specific channels from specific streams for the final stream using FFMPEG [closed]

    9 juin 2024, par Kazu-kun

    I want to create a 5.1ch audio stream from a 2ch audio stream. However I want to put a negative delay to LFE, SL and SR channels since they will be played from my bluetooth speaker, so I want to make up for the delay by giving it a negative delay.

    


    


    ffmpeg -itsoffset 0.1 -i input.mkv -i input.mkv

    


    -filter_complex “

    


    [1:a]pan=5.1(side)|FL=FL|FR=FR|LFEp>


    [0:a]pan=5.1(side)|FL=FL|FR=FR|LFEp>


    [orig5_1][delayed5_1]amerge=inputs=2,pan=5.1(side)|FL=c6|FR=c7|LFE=c2|SL=c3|SR=c4[a]”

    


    -map "[a]" -map 0:v -map 0:s -c:v copy -c:a flac -c:s copy output.mkv

    


    


    I tried taking the same input twice with the first one being delayed by 0.1 secs. With the delayed input a 5.1 audio is created and with the original another 5.1 audio is created as well. Then the two audio streams are merged with amerge and combined into a single 5.1 audio by taking delayed channels for FL and FR(These will be played from my MacBook) and by taking original channels for LFE, SL and SR(These will be played from my bluetooth JBL). Finally the video and subs streams are taken from the delayed.

    


    The above command gave a "pipe pipe pipe dqoute" error and when I entered the command again it said :

    


    


    zsh : unknown file attribute : i

    


    zsh : no such file or directory : FL+FR

    


    zsh : unknown file attribute : i

    


    zsh : no such file or directory : FL+FR

    


    zsh : unknown file attribute : i

    


    zsh : command not found : -map

    


    


    Please give me a command for my requirement !

    


  • Flutter video_compress and then ffmpeg trim video to 30s fails with endless logs

    7 mars 2021, par Charles Bass

    I am trying to make a simple app in Flutter. A user can either take or pick a video and then upload it. However, I wanted to compress the video for storage purposes on firebase storage, and also trim it to only get the first 30 seconds.

    


    I am facing a very puzzling problem. I am able to compress the video, but with the resultant file, FFmpeg fails to trim it and I get endless logs which result in me having to stop the app and re-run. Alternatively, I am able to trim the video, but with the resultant file, I am unable to compress it getting the error :  Failed to open file '/data/user/0/live.roots.roots/app_flutter/TRIMMED.mp4'. (No such file or directory) PlatformException(error, java.io.IOException: Failed to instantiate extractor., null, java.lang.RuntimeException: java.io.IOException: Failed to instantiate extractor.

    


    This is my code below :

    


    

    

    //! function that controls file compression and trimming&#xA;static Future<file> compressFile(File file) async {&#xA;    print(&#x27;[COMPRESSING FILE]&#x27;);&#xA;&#xA;    String mimeStr = lookupMimeType(file.path);&#xA;    var fileType = mimeStr.split(&#x27;/&#x27;);&#xA;&#xA;    if (fileType.contains("image")) {&#xA;      print(&#x27;[COMPRESSING FILE] - file is image&#x27;);&#xA;      String tempPath = (await getTemporaryDirectory()).path;&#xA;      String targetPath = &#x27;$tempPath/${DateTime.now().toIso8601String()}.jpg&#x27;;&#xA;      return await compressImageAndGetFile(file, targetPath);&#xA;    } else {&#xA;      print(&#x27;[COMPRESSING FILE] - file is video&#x27;);&#xA;&#xA;      final compressedVideoFile = await compressVideoAndGetFile(file);&#xA;      print(&#x27;[VIDEO FILE COMPRESSED]&#x27;);&#xA;      return await trimVideoGetFile(compressedVideoFile);&#xA;    }&#xA;  }&#xA;  &#xA;  &#xA;//! function to compress video&#xA;static Future<file> compressVideoAndGetFile(File file) async {&#xA;    print(&#x27;[COMPRESSING VIDEO]&#x27;);&#xA;&#xA;    var result = await VideoCompress.compressVideo(&#xA;      file.absolute.path,&#xA;      quality: VideoQuality.DefaultQuality,&#xA;      deleteOrigin: true,&#xA;    );&#xA;&#xA;    print(&#x27;[COMPRESSED VIDEO TO]: ${result.file.path}&#x27;);&#xA;&#xA;    return result.file;&#xA;  }&#xA;  &#xA;//! function to trim video&#xA;static Future<file> trimVideoGetFile(File file) async {&#xA;    print(&#x27;[TRIMMING VIDEO]&#x27;);&#xA;&#xA;    Directory appDocumentDir = await getApplicationDocumentsDirectory();&#xA;    String rawDocumentPath = appDocumentDir.path;&#xA;    String outputPath = rawDocumentPath &#x2B; "/TRIMMED.mp4";&#xA;&#xA;    final newFile = File(outputPath);&#xA;&#xA;    if (await newFile.exists()) {&#xA;      await newFile.delete();&#xA;    }&#xA;&#xA;    _flutterFFmpeg&#xA;        .execute(&#xA;            "-ss 00:00:00 -i ${file.path} -to 00:00:30 -c copy $outputPath")&#xA;        .then((rt) async {&#xA;      print(&#x27;[TRIMMED VIDEO RESULT] : $rt&#x27;);&#xA;      if (rt == -1) {&#xA;        throw Exception("Something went wrong when trimming the video");&#xA;      }&#xA;    });&#xA;&#xA;    return File(outputPath);&#xA;  }</file></file></file>

    &#xD;&#xA;

    &#xD;&#xA;

    &#xD;&#xA;&#xA;

    Thank you in advance

    &#xA;