Recherche avancée

Médias (91)

Autres articles (88)

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

  • Menus personnalisés

    14 novembre 2010, par

    MediaSPIP utilise le plugin Menus pour gérer plusieurs menus configurables pour la navigation.
    Cela permet de laisser aux administrateurs de canaux la possibilité de configurer finement ces menus.
    Menus créés à l’initialisation du site
    Par défaut trois menus sont créés automatiquement à l’initialisation du site : Le menu principal ; Identifiant : barrenav ; Ce menu s’insère en général en haut de la page après le bloc d’entête, son identifiant le rend compatible avec les squelettes basés sur Zpip ; (...)

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

  • Is there a way to extract subtitles using ffmpeg with specific encoding ?

    16 août 2019, par NeeFuu

    I am batch extracting multiple subtitles from video files. However, some of them are in UTF-8/Chinese characters. Extracting subtitle in .ass format using ffmpeg seems to skip all special characters.

    I was looking for some soluton and I found only sub_charenc filter which seems to not work in this case.
    I also found this this that look similar to my question but there is still no solution from ffmpeg side.

    ffmpeg -i video.mkv -map 0:s:0 -sub_charenc UTF-8 subtitle.ass

    What I want to achieve is subtitle.ass file written in UTF-8 encoding so all special characters can remain.

  • Creating video from list of images using ffmpeg

    13 août 2019, par haseeb

    Summary

    From given code, second function taking UI values and passing to first one. from log, first two lines shows command list and command string.

    What’s irritating me is, if I copied second line from log (dos cmd) and paste it in a cmd prompt, it works successfully and produces video correctly. but running it via gui subprocess, errors out.

    Task Description

    Directory contains thousand of images each after few minutes of a construction project. I need to create a video from data (images) per day basis. I have successfully extracted list of images, etc, and have data.

    utils.py :

    def framesToVideoViaCount(srcFile,outputFile,start,count,rate):
       # ffmpeg -start_number 1 -i test_%04d.png -vframes 100 -vcodec mpeg4 test.mp4
       # "C:\\Users\\lalat\\Desktop\\03008427633\\output_%04d.png"
       # ffmpeg -start_number 50 -i "C:\\Users\\lalat\\Desktop\\03008427633\\output_%04d.png" -vframes 200 -vcodec mpeg4 "C:\\Users\\lalat\\Desktop\\day1.mp4"
       command = [ 'ffmpeg',
                   # '-loglevel', 'fatal',
                   '-r %d' %(rate),
                   '-start_number %d' %(start) ,
                   '-i "%s"' %(srcFile),
                   '-vframes %d' %(count),
                   '-vcodec mpeg4' ]
       # command.append ('fps=%d' % (fps))
       command.append (outputFile)
       print ("COMMAND: " , command)
       print ("DOS CMD: ", ' '.join(command))
       ffmpeg = subprocess.Popen(command, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE )
       out, err = ffmpeg.communicate()
       if(err) : print('error',err); return None;
       print (out)

    Actual GUI function call in tk gui app :

    def approachByCount(self):
       tdate = datetime(year=int(self.fyear.get()), month=int(self.fmonth.get()), day=int(self.fdate.get()))
       # now = datetime.datetime.now()
       outputName = str(tdate.strftime("%Y%m%d")) + ".txt"
       outputVid = str(tdate.strftime("%Y%m%d")) + ".mp4"
       files = os.listdir(self.userDir)
       selected = []
       for afile in files:
           afile = os.path.join(self.userDir,afile)
           sdate = datetime.fromtimestamp(os.path.getmtime(afile))
           if sdate.date() == tdate.date():
               selected.append(afile)
       # get first file name
       srcfilename = os.path.basename(selected[0])
       srcfilename,ext = srcfilename.split(".")
       filename,pad = srcfilename.split("_")
       srcfilename = os.path.join(self.userDir,filename+"_%0"+str(len(pad))+"d."+ext)
       start = int(pad)
       count = len(selected)
       utils.framesToVideoViaCount(srcfilename,outputVid,start,count,25)

    ERROR log

    COMMAND:  ['ffmpeg', '-r 25', '-start_number 1', '-i "C:\\Users\\lalat\\Desktop\\03008427633\\output_%04d.png"', '-vframes 382', '-vcodec mpeg4', '20190810.mp4']
    DOC CMD:  ffmpeg -r 25 -start_number 1 -i "C:\Users\lalat\Desktop\03008427633\output_%04d.png" -vframes 382 -vcodec mpeg4 20190810.mp4

    error b"ffmpeg version 4.1 Copyright (c) 2000-2018 the FFmpeg developers\r\n
    built with gcc 8.2.1 (GCC) 20181017\r\n
    configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --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-libmfx --enable-amf --enable-ffnvcodec --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth\r\n
    libavutil      56. 22.100 / 56. 22.100\r\n
    libavcodec     58. 35.100 / 58. 35.100\r\n
    libavformat    58. 20.100 / 58. 20.100\r\n
    libavdevice    58.  5.100 / 58.  5.100\r\n
    libavfilter     7. 40.101 /  7. 40.101\r\n
    libswscale      5.  3.100 /  5.  3.100\r\n
    libswresample   3.  3.100 /  3.  3.100\r\n
    libpostproc    55.  3.100 / 55.  3.100\r\n
    Unrecognized option 'r 25'.\r\n
    Error splitting the argument list: Option not found\r\n"
  • creating video from list of images using python and ffmpeg

    13 août 2019, par haseeb

    summary

    from given code, second function taking UI values and passing to first one. from log, first two lines shows command list and command string.

    whats irritating me is, if i copied second line from log(dos cmd) and paste it in a cmd prompt, it works successfully and produces video correctly. but running it via gui subprocess, errors out.

    TASK DESCRIPTION

    directory contains thousand of images each after few minutes of a contruction project. i need to create a video from data (images) per day basis.
    i have successfully extracted list of images etc and have data

    def framesToVideoViaCount(srcFile,outputFile,start,count,rate):
       # ffmpeg -start_number 1 -i test_%04d.png -vframes 100 -vcodec mpeg4 test.mp4
       # "C:\\Users\\lalat\\Desktop\\03008427633\\output_%04d.png"
       # ffmpeg -start_number 50 -i "C:\\Users\\lalat\\Desktop\\03008427633\\output_%04d.png" -vframes 200 -vcodec mpeg4 "C:\\Users\\lalat\\Desktop\\day1.mp4"
       command = [ 'ffmpeg',
                   # '-loglevel', 'fatal',
                   '-r %d' %(rate),
                   '-start_number %d' %(start) ,
                   '-i "%s"' %(srcFile),
                   '-vframes %d' %(count),
                   '-vcodec mpeg4' ]
       # command.append ('fps=%d' % (fps))
       command.append (outputFile)
       print ("COMMAND: " , command)
       print ("DOS CMD: ", ' '.join(command))
       ffmpeg = subprocess.Popen(command, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE )
       out, err = ffmpeg.communicate()
       if(err) : print('error',err); return None;
       print (out)

    Actual GUI function call

    def approachByCount(self):
           tdate = datetime(year=int(self.fyear.get()), month=int(self.fmonth.get()), day=int(self.fdate.get()))
           # now = datetime.datetime.now()
           outputName = str(tdate.strftime("%Y%m%d")) + ".txt"
           outputVid = str(tdate.strftime("%Y%m%d")) + ".mp4"
           files = os.listdir(self.userDir)
           selected = []
           for afile in files:
               afile = os.path.join(self.userDir,afile)
               sdate = datetime.fromtimestamp(os.path.getmtime(afile))
               if sdate.date() == tdate.date():
                   selected.append(afile)
           # get first file name
           srcfilename = os.path.basename(selected[0])
           srcfilename,ext = srcfilename.split(".")
           filename,pad = srcfilename.split("_")
           srcfilename = os.path.join(self.userDir,filename+"_%0"+str(len(pad))+"d."+ext)
           start = int(pad)
           count = len(selected)
           utils.framesToVideoViaCount(srcfilename,outputVid,start,count,25)

    ERROR log
    COMMAND : [’ffmpeg’, ’-r 25’, ’-start_number 1’, ’-i "C :\Users\lalat\Desktop\03008427633\output_%04d.png"’, ’-vframes 382’, ’-vcodec mpeg4’, ’20190810.mp4’]
    DOC CMD : ffmpeg -r 25 -start_number 1 -i "C :\Users\lalat\Desktop\03008427633\output_%04d.png" -vframes 382 -vcodec mpeg4 20190810.mp4
    error b"ffmpeg version 4.1 Copyright (c) 2000-2018 the FFmpeg developers\r\n built with gcc 8.2.1 (GCC) 20181017\r\n configuration : —enable-gpl —enable-version3 —enable-sdl2 —enable-fontconfig —enable-gnutls —enable-iconv —enable-libass —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-libmfx —enable-amf —enable-ffnvcodec —enable-cuvid —enable-d3d11va —enable-nvenc —enable-nvdec —enable-dxva2 —enable-avisynth\r\n libavutil 56. 22.100 / 56. 22.100\r\n libavcodec 58. 35.100 / 58. 35.100\r\n libavformat 58. 20.100 / 58. 20.100\r\n libavdevice 58. 5.100 / 58. 5.100\r\n libavfilter 7. 40.101 / 7. 40.101\r\n libswscale 5. 3.100 / 5. 3.100\r\n libswresample 3. 3.100 / 3. 3.100\r\n libpostproc 55. 3.100 / 55. 3.100\r\nUnrecognized option ’r 25’.\r\nError splitting the argument list : Option not found\r\n"