Recherche avancée

Médias (0)

Mot : - Tags -/diogene

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

Autres articles (34)

  • Les autorisations surchargées par les plugins

    27 avril 2010, par

    Mediaspip core
    autoriser_auteur_modifier() afin que les visiteurs soient capables de modifier leurs informations sur la page d’auteurs

  • Gestion de la ferme

    2 mars 2010, par

    La ferme est gérée dans son ensemble par des "super admins".
    Certains réglages peuvent être fais afin de réguler les besoins des différents canaux.
    Dans un premier temps il utilise le plugin "Gestion de mutualisation"

  • Other interesting software

    13 avril 2011, par

    We don’t claim to be the only ones doing what we do ... and especially not to assert claims to be the best either ... What we do, we just try to do it well and getting better ...
    The following list represents softwares that tend to be more or less as MediaSPIP or that MediaSPIP tries more or less to do the same, whatever ...
    We don’t know them, we didn’t try them, but you can take a peek.
    Videopress
    Website : http://videopress.com/
    License : GNU/GPL v2
    Source code : (...)

Sur d’autres sites (4906)

  • FFmpeg select jpg files

    28 août 2023, par pinq-

    I want to make gif out of images. Images names are in format 1-XXXxxxxxx.jpg, 2-XXX-xxxx.jpg, 3-XXXxxxX.jpg.... 123-XXxxxxX.jpg.

    


    I'm trying to use this command :

    


    ffmpeg -framerate 1 -i 'images/%d-*.jpg' -s 320x180 ready.gif


    


    But then I get error message :

    


    'images/%d-*.jpg': No such file or directory


    


    how do select images that start with number ?

    


  • HOW TO APPLY TRANSITION EFFECTS IN FFMPEG ? [closed]

    8 janvier 2023, par SMART

    I have 7 videos with audio, i tried to apply transition effects on these files, written code in python for this , i got error .

    


    python code :
import subprocess as sp

    


        def runffmpeg(cmd):
        try:
            pipe = sp.Popen(cmd, stdout=sp.PIPE, stderr=sp.STDOUT,
                            universal_newlines=True)
    
            ffmpeg_output, _ = pipe.communicate()
    
            print(ffmpeg_output)
            return (ffmpeg_output)
    
        except sp.CalledProcessError as err:
            print("FFmpeg stdout output on error:\n" + err.output)
    
    def get_duration(fn):
        cmd = (
            f"ffprobe -v error -show_entries format=duration -of default=noprint_wrappers=1:nokey=1 {fn}")
    
        cmd1 = (
            f"ffprobe -v error -of flat=s_ -select_streams 1 -show_entries stream=duration -of default=noprint_wrappers=1:nokey=1 {fn}")
        try:
            pipe = sp.Popen(cmd, stdout=sp.PIPE, stderr=sp.STDOUT,
                            universal_newlines=True)
    
            viddur, _ = pipe.communicate()
    
            print(viddur)
    
            pipe = sp.Popen(cmd1, stdout=sp.PIPE, stderr=sp.STDOUT,
                            universal_newlines=True)
    
            auddur, _ = pipe.communicate()
    
            try:
                auddur = float(auddur.strip())
            except:
                auddur = 0
    
            print(auddur)
    
            # if (len(auddur) == 0):
            #     auddur = 0
    
            return float(viddur.strip()), (auddur)
    
        except sp.CalledProcessError as err:
            print("FFmpeg stdout output on error:\n" + err.output)
    
    
    def trans(clips, effects, out="trans.mp4"):
        filtc = " [v1][v2]xfade=wipedown:duration=1:offset=4[x1];"
        i = 0
        fcv = ""
        fca = ""
        d1 = 0
        af = ""
        dur = []
        aud = []
        inp = ""
        j = 0
        print(len(clips))
    
        for x in clips:
            print(x[0])
            inp = (inp + " -i " + x)
    
            print(effects[0])
            print(x)
    
            v, a = get_duration(fn=x)
            dur.append(v)
    
        k = 0
        for x in dur:
    
            if (k == 0):
                fca = (fca + f"[{k}:a]adelay=0|0 [a{k+1}];")
            else:
                fca = (fca + f"[{k}:a]adelay={d1}|{d1} [a{k+1}];")
            aud.append(f"[a{k+1}]")
            k = (k+1)
            d1 = (d1+((x*1000)+3.5))
    
        d1 = 0
        for x in efects:
            for v in range(0, j+1, +1):
                d1 = (d1 + dur[v])
                d1 = (d1-((v+1)*3.5))
            # [0:a]adelay=0|0 [a1];
            if (i > 1):
    
                try:
                    fcv = (
                        fcv+f"[x{(i)}][{(i)}:v]xfade={x}:duration=3:offset={d1} [x{(i+1)}];")
                except:
                    pass
            else:
                print("j = %d" % j)
                fcv = (
                    fcv+f"[{(i)}:v][{(i+1)}:v]xfade={x}:duration=3:offset={d1} [x{(i+1)}];")
    
            j = (j+1)
            i = (i+1)
    
        for a in aud:
            af = (af+a)
        af = (af+f"amix=inputs={len(aud)} [faud]")
    
        inp = (inp+" -filter_complex \"")
        cmd = (
            f"ffmpeg {inp} {fcv} {fca} {af} \" -pix_fmt yuv420p -map \"[x{i}]\" -map \"[faud]\" -y {out}")
    
        print(cmd)
    
        try:
            pipe = sp.Popen(cmd, stdout=sp.PIPE, stderr=sp.STDOUT,
                            universal_newlines=True)
    
            ffmpeg_output, _ = pipe.communicate()
    
            print(ffmpeg_output)
    
        except sp.CalledProcessError as err:
            print("FFmpeg stdout output on error:\n" + err.output)
            
            


    


    these functions creates ffmpeg code like :
ffmpeg -i out1.mp4 -i out2.mp4 -i out3.mp4 -i out4.mp4 -i out5.mp4 -i out6.mp4 -i out7.mp4 -filter_complex " [0:v][1:v]xfade=wipedown:duration=3:offset=6.006009000000001 [x1] ;[1:v][2:v]xfade=dissolve:duration=3:offset=14.030023 [x2] ;[x2][2:v]xfade=pixelize:duration=3:offset=20.572042000000003 [x3] ;[x3][3:v]xfade=vuslice:duration=3:offset=21.621068000000008 [x4] ;[x4][4:v]xfade=radial:duration=3:offset=14.188099000000015 [x5] ;[x5][5:v]xfade=vertopen:duration=3:offset=-5.737862999999978 [x6] ; [0:a]adelay=0|0 [a1] ;[1:a]adelay=9509.509|9509.509 [a2] ;[2:a]adelay=18531.014000000003|18531.014000000003 [a3] ;[3:a]adelay=27552.519000000004|27552.519000000004 [a4] ;[4:a]adelay=36063.026000000005|36063.026000000005 [a5] ;[5:a]adelay=45084.531|45084.531 [a6] ;[6:a]adelay=53595.038|53595.038 [a7] ; [a1][a2][a3][a4][a5][a6][a7]amix=inputs=7 [faud] " -pix_fmt yuv420p -map "[x6]" -map "[faud]" -y trans.mp4

    


    this ffmpeg command generates error :

    


        ffmpeg version 2022-12-25-git-eeb280f351-full_build-www.gyan.dev Copyright (c) 2000-2022 the FFmpeg developers
      built with gcc 12.1.0 (Rev2, Built by MSYS2 project)
      configuration: --enable-gpl --enable-version3 --enable-static --disable-w32threads --disable-autodetect --enable-fontconfig --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-bzlib --enable-lzma --enable-libsnappy --enable-zlib --enable-librist --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-libbluray --enable-libcaca --enable-sdl2 --enable-libaribb24 --enable-libdav1d --enable-libdavs2 --enable-libuavs3d --enable-libzvbi --enable-librav1e --enable-libsvtav1 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxvid --enable-libaom --enable-libjxl --enable-libopenjpeg --enable-libvpx --enable-mediafoundation --enable-libass --enable-frei0r --enable-libfreetype --enable-libfribidi --enable-liblensfun --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-ffnvcodec --enable-nvdec --enable-nvenc --enable-d3d11va --enable-dxva2 --enable-libvpl --enable-libshaderc --enable-vulkan --enable-libplacebo --enable-opencl --enable-libcdio --enable-libgme --enable-libmodplug --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libshine --enable-libtheora --enable-libtwolame --enable-libvo-amrwbenc --enable-libilbc --enable-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-ladspa --enable-libbs2b --enable-libflite --enable-libmysofa --enable-librubberband --enable-libsoxr --enable-chromaprint
      libavutil      57. 43.100 / 57. 43.100
      libavcodec     59. 55.103 / 59. 55.103
      libavformat    59. 34.102 / 59. 34.102
      libavdevice    59.  8.101 / 59.  8.101
      libavfilter     8. 53.100 /  8. 53.100
      libswscale      6.  8.112 /  6.  8.112
      libswresample   4.  9.100 /  4.  9.100
      libpostproc    56.  7.100 / 56.  7.100
    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'out1.mp4':
      Metadata:
        major_brand     : isom
        minor_version   : 512
        compatible_brands: isomiso2avc1mp41
        encoder         : Lavf59.34.102
      Duration: 00:00:09.51, start: 0.000000, bitrate: 1358 kb/s
      Stream #0:0[0x1](und): Video: h264 (High) (avc1 / 0x31637661), yuvj420p(pc, bt470bg/unknown/unknown, progressive), 1080x1920, 1303 kb/s, 26.94 fps, 25 tbr, 1000k tbn (default)
        Metadata:
          handler_name    : VideoHandler
          vendor_id       : [0][0][0][0]
          encoder         : Lavc59.55.103 libx264
      Stream #0:1[0x2](und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 51 kb/s (default)
        Metadata:
          handler_name    : SoundHandler
          vendor_id       : [0][0][0][0]
    Input #1, mov,mp4,m4a,3gp,3g2,mj2, from 'out2.mp4':
      Metadata:
        major_brand     : isom
        minor_version   : 512
        compatible_brands: isomiso2avc1mp41
        encoder         : Lavf59.34.102
      Duration: 00:00:09.02, start: 0.000000, bitrate: 1060 kb/s
      Stream #1:0[0x1](und): Video: h264 (High) (avc1 / 0x31637661), yuvj420p(pc, bt470bg/unknown/unknown, progressive), 1080x1920, 1007 kb/s, 26.73 fps, 25 tbr, 1000k tbn (default)
        Metadata:
          handler_name    : VideoHandler
          vendor_id       : [0][0][0][0]
          encoder         : Lavc59.55.103 libx264
      Stream #1:1[0x2](und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 47 kb/s (default)
        Metadata:
          handler_name    : SoundHandler
          vendor_id       : [0][0][0][0]
    Input #2, mov,mp4,m4a,3gp,3g2,mj2, from 'out3.mp4':
      Metadata:
        major_brand     : isom
        minor_version   : 512
        compatible_brands: isomiso2avc1mp41
        encoder         : Lavf59.34.102
      Duration: 00:00:09.02, start: 0.000000, bitrate: 1228 kb/s
      Stream #2:0[0x1](und): Video: h264 (High) (avc1 / 0x31637661), yuvj420p(pc, bt470bg/unknown/unknown, progressive), 1080x1920, 1178 kb/s, 26.73 fps, 25 tbr, 1000k tbn (default)
        Metadata:
          handler_name    : VideoHandler
          vendor_id       : [0][0][0][0]
          encoder         : Lavc59.55.103 libx264
      Stream #2:1[0x2](und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 46 kb/s (default)
        Metadata:
          handler_name    : SoundHandler
          vendor_id       : [0][0][0][0]
    Input #3, mov,mp4,m4a,3gp,3g2,mj2, from 'out4.mp4':
      Metadata:
        major_brand     : isom
        minor_version   : 512
        compatible_brands: isomiso2avc1mp41
        encoder         : Lavf59.34.102
      Duration: 00:00:08.51, start: 0.000000, bitrate: 987 kb/s
      Stream #3:0[0x1](und): Video: h264 (High) (avc1 / 0x31637661), yuvj420p(pc, bt470bg/unknown/unknown, progressive), 1080x1920, 938 kb/s, 26.57 fps, 25 tbr, 1000k tbn (default)
        Metadata:
          handler_name    : VideoHandler
          vendor_id       : [0][0][0][0]
          encoder         : Lavc59.55.103 libx264
      Stream #3:1[0x2](und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 43 kb/s (default)
        Metadata:
          handler_name    : SoundHandler
          vendor_id       : [0][0][0][0]
    Input #4, mov,mp4,m4a,3gp,3g2,mj2, from 'out5.mp4':
      Metadata:
        major_brand     : isom
        minor_version   : 512
        compatible_brands: isomiso2avc1mp41
        encoder         : Lavf59.34.102
      Duration: 00:00:09.02, start: 0.000000, bitrate: 1221 kb/s
      Stream #4:0[0x1](und): Video: h264 (High) (avc1 / 0x31637661), yuvj420p(pc, bt470bg/unknown/unknown, progressive), 1080x1920, 1170 kb/s, 26.73 fps, 25 tbr, 1000k tbn (default)
        Metadata:
          handler_name    : VideoHandler
          vendor_id       : [0][0][0][0]
          encoder         : Lavc59.55.103 libx264
      Stream #4:1[0x2](und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 47 kb/s (default)
        Metadata:
          handler_name    : SoundHandler
          vendor_id       : [0][0][0][0]
    Input #5, mov,mp4,m4a,3gp,3g2,mj2, from 'out6.mp4':
      Metadata:
        major_brand     : isom
        minor_version   : 512
        compatible_brands: isomiso2avc1mp41
        encoder         : Lavf59.34.102
      Duration: 00:00:08.51, start: 0.000000, bitrate: 1073 kb/s
      Stream #5:0[0x1](und): Video: h264 (High) (avc1 / 0x31637661), yuvj420p(pc, bt470bg/unknown/unknown, progressive), 1080x1920, 1027 kb/s, 26.57 fps, 25 tbr, 1000k tbn (default)
        Metadata:
          handler_name    : VideoHandler
          vendor_id       : [0][0][0][0]
          encoder         : Lavc59.55.103 libx264
      Stream #5:1[0x2](und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 41 kb/s (default)
        Metadata:
          handler_name    : SoundHandler
          vendor_id       : [0][0][0][0]
    Input #6, mov,mp4,m4a,3gp,3g2,mj2, from 'out7.mp4':
      Metadata:
        major_brand     : isom
        minor_version   : 512
        compatible_brands: isomiso2avc1mp41
        encoder         : Lavf59.34.102
      Duration: 00:00:09.02, start: 0.000000, bitrate: 757 kb/s
      Stream #6:0[0x1](und): Video: h264 (High) (avc1 / 0x31637661), yuvj420p(pc, bt470bg/unknown/unknown, progressive), 1080x1920, 705 kb/s, 26.73 fps, 25 tbr, 1000k tbn (default)
        Metadata:
          handler_name    : VideoHandler
          vendor_id       : [0][0][0][0]
          encoder         : Lavc59.55.103 libx264
      Stream #6:1[0x2](und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 46 kb/s (default)
        Metadata:
          handler_name    : SoundHandler
          vendor_id       : [0][0][0][0]
    Filter xfade:default has an unconnected output


    


    Filter xfade:default has an unconnected output , what does it mean ?

    


    in adelay area , getting -ve nos , what to do ?

    


    #useage :

    


    vc = ["C1.mp4", "C2.mp4", "C3.mp4", "C4.mp4", "C5.mp4", "C6.mp4", "C7.mp4"]

    


        i = 1
    gc = []
    for x in vc:
        gc.append(f"out{i}.mp4")
        i = (i+1)
    
    print(gc)
    
    trans(clips=gc, effects=efects)


    


    system details :
windows 10 64 bits
python 3.9 64 bits

    


  • FFMPEG - modify only part of video with select filter

    28 janvier 2023, par Compact

    I have a video file - an NTSC DVD rip. I want to convert it into PAL DVD. The problem with that NTSC DVD is that it's a mixture of telecined content, true progressive 29.97 content, true interlaced content at 29.97 fps. The problem is with the true interlaced content - it's sometimes encoded as top field first and sometimes as bottom field first...

    


    To keep quality as much as possible, I would like remove telecined frames, but keep those interlaced sequences and turn them to 25 fps top field first. This is where the problem arises.

    


    I tried to make filter_complex chain with two select filters, where I reverse the fields for bottom field first frames, but the video is not encoding at all when I do that.

    


    Here is an example filter chain I tried to make - I've made a lot of iterations of something similar, using select or metadata select to no avail. I guess I don't understand how select and metadata select filters work. And I don't know how to do what I want.

    


    ffmpeg -i "input" -flags +ildct+ilme \
-filter_complex\
[0:v]idet,setparams=color_primaries=smpte170m:color_trc=bt709:colorspace=smpte170m \
,metadata=select:key=lavfi.idet.single.current_frame:value=bff:function=same_str,phase=b[bot];\[bot]metadata=select:key=lavfi.idet.single.current_frame:value=tff:function=same_str\
,fieldmatch=mode=pcn_ub:combmatch=full,decimate[tff];\
[tff]metadata=select:key=lavfi.idet.single.current_frame:value=progressive:function=same_str\
,fps=24000/1001[v1];[v1]select,setfield=tff[v]"


    


    If all of the interlaced content was top field first, I could simply do something similar to this :

    


    ffmpeg -i "input" -flags +ildct+ilme \
-filter:v "dejudder,fps=30000/1001,fieldmatch=mode=pcn_ub:combmatch=full,\
decimate,settb=1/25000,setpts=N/(25*TB),setfield=tff,setparams=field_mode=tff"


    


    Is that possible with ffmpeg ? To just modify a part of video and then modify it whole, including with the previous modification ?