Recherche avancée

Médias (0)

Mot : - Tags -/formulaire

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

Autres articles (60)

  • Encodage et transformation en formats lisibles sur Internet

    10 avril 2011

    MediaSPIP transforme et ré-encode les documents mis en ligne afin de les rendre lisibles sur Internet et automatiquement utilisables sans intervention du créateur de contenu.
    Les vidéos sont automatiquement encodées dans les formats supportés par HTML5 : MP4, Ogv et WebM. La version "MP4" est également utilisée pour le lecteur flash de secours nécessaire aux anciens navigateurs.
    Les documents audios sont également ré-encodés dans les deux formats utilisables par HTML5 :MP3 et Ogg. La version "MP3" (...)

  • 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

  • MediaSPIP : Modification des droits de création d’objets et de publication définitive

    11 novembre 2010, par

    Par défaut, MediaSPIP permet de créer 5 types d’objets.
    Toujours par défaut les droits de création et de publication définitive de ces objets sont réservés aux administrateurs, mais ils sont bien entendu configurables par les webmestres.
    Ces droits sont ainsi bloqués pour plusieurs raisons : parce que le fait d’autoriser à publier doit être la volonté du webmestre pas de l’ensemble de la plateforme et donc ne pas être un choix par défaut ; parce qu’avoir un compte peut servir à autre choses également, (...)

Sur d’autres sites (9073)

  • ffmpeg output gives file not found error in python

    20 octobre 2022, par Batuhan Yılmaz

    Trying to build an auto subtitled video generator in Python. But couldn't generate the subtitled video of the input video using ffmpeg. Getting an error saying there is no output.mp4. FileNotFoundError : [Errno 2] No such file or directory : 'C :\Users\batuh\Desktop\auto-multipage\output.mp4'

    


    Can you help me out ? Full code is here : https://github.com/BatuhanYilmaz26/auto-sub-exp/blob/main/pages/02_up3.py

    


    Here's the parts where I used ffmpeg :

    


    def inferecence(loaded_model, uploaded_file, task):
    with open(f"{save_dir}/audio.mp3" , "wb") as f:
            f.write(uploaded_file.read())
        audio = ffmpeg.input(f"{save_dir}/audio.mp3")
        audio = ffmpeg.output(audio, f"{save_dir}/output.wav", acodec="pcm_s16le", ac=1, ar="16k")
        ffmpeg.run(audio, overwrite_output=True)
    if task == "Transcribe":
            options = dict(task="transcribe", best_of=5)
            results = loaded_model.transcribe(f"{save_dir}/output.wav", **options)
            vtt = getSubs(results["segments"], "vtt", 80)
            srt = getSubs(results["segments"], "srt", 80)
            lang = results["language"]
    return results["text"], vtt, srt, lang
    elif task == "Translate":
            options = dict(task="translate", best_of=5)
            results = loaded_model.transcribe(f"{save_dir}/output.wav", **options)
            vtt = getSubs(results["segments"], "vtt", 80)
            srt = getSubs(results["segments"], "srt", 80)
            lang = results["language"]
    return results["text"], vtt, srt, lang
    else:
    raise ValueError("Task not supported")
    
    results = inferecence(loaded_model, input_file, task)
    
    subprocess.run(shlex.split(f"ffmpeg -i {save_dir}/input.mp4 -i {save_dir}/output.wav -i transcript.srt -c:v copy -c:a copy -c:s copy -map 0:a -map 1:v -map 2:s -metadata:s:a:0 language={results[3]} -y {save_dir}/output.mp4"))
    #subprocess.run(shlex.split(f"ffmpeg -i {save_dir}/input.mp4 -vf {save_dir}/transcript.srt -y {save_dir}/output.mp4"))
    with open(os.path.join(os.getcwd(), "output.mp4"), "rb") as f:
                        data = f.read()
                    st.video(data)
                    st.download_button(label="Download Subtitled Video",
                                        data=data,
                                        file_name="output.mp4")


    


    sorry about the indentations

    


    Logfile :

    


    ffmpeg started on 2022-10-20 at 23:43:53
Report written to "ffmpeg-20221020-234353.log"
Command line:
ffmpeg -i C:UsersbatuhDesktopauto-multipagepageslocaloutput/input.mp4 -i C:UsersbatuhDesktopauto-multipagepageslocaloutput/output.wav -i transcript.srt -c:v copy -c:a copy -c:s copy -map 0:a -map 1:v -map 2:s -metadata:s:a:0 "language=eng" -y C:UsersbatuhDesktopauto-multipagepageslocaloutput/output.mp4 -report
ffmpeg version 4.2.3 Copyright (c) 2000-2020 the FFmpeg developers
  built with gcc 9.3.1 (GCC) 20200523
  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-libmfx --enable-amf --enable-ffnvcodec --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth --enable-libopenmpt
  libavutil      56. 31.100 / 56. 31.100
  libavcodec     58. 54.100 / 58. 54.100
  libavformat    58. 29.100 / 58. 29.100
  libavdevice    58.  8.100 / 58.  8.100
  libavfilter     7. 57.100 /  7. 57.100
  libswscale      5.  5.100 /  5.  5.100
  libswresample   3.  5.100 /  3.  5.100
  libpostproc    55.  5.100 / 55.  5.100
Splitting the commandline.
Reading option '-i' ... matched as input url with argument 'C:UsersbatuhDesktopauto-multipagepageslocaloutput/input.mp4'.
Reading option '-i' ... matched as input url with argument 'C:UsersbatuhDesktopauto-multipagepageslocaloutput/output.wav'.
Reading option '-i' ... matched as input url with argument 'transcript.srt'.
Reading option '-c:v' ... matched as option 'c' (codec name) with argument 'copy'.
Reading option '-c:a' ... matched as option 'c' (codec name) with argument 'copy'.
Reading option '-c:s' ... matched as option 'c' (codec name) with argument 'copy'.
Reading option '-map' ... matched as option 'map' (set input stream mapping) with argument '0:a'.
Reading option '-map' ... matched as option 'map' (set input stream mapping) with argument '1:v'.
Reading option '-map' ... matched as option 'map' (set input stream mapping) with argument '2:s'.
Reading option '-metadata:s:a:0' ... matched as option 'metadata' (add metadata) with argument 'language=eng'.
Reading option '-y' ... matched as option 'y' (overwrite output files) with argument '1'.
Reading option 'C:UsersbatuhDesktopauto-multipagepageslocaloutput/output.mp4' ... matched as output url.
Reading option '-report' ... matched as option 'report' (generate a report) with argument '1'.
Finished splitting the commandline.
Parsing a group of options: global .
Applying option y (overwrite output files) with argument 1.
Applying option report (generate a report) with argument 1.
Successfully parsed a group of options.
Parsing a group of options: input url C:UsersbatuhDesktopauto-multipagepageslocaloutput/input.mp4.
Successfully parsed a group of options.
Opening an input file: C:UsersbatuhDesktopauto-multipagepageslocaloutput/input.mp4.
[NULL @ 000001fba186b9c0] Opening 'C:UsersbatuhDesktopauto-multipagepageslocaloutput/input.mp4' for reading
[file @ 000001fba186c140] Setting default whitelist 'file,crypto'
C:UsersbatuhDesktopauto-multipagepageslocaloutput/input.mp4: No such file or directory


    


  • FFMPEG Executing Command Error (index entry 349 + TemporalOffset 1 = 350, which is out of bounds)

    21 octobre 2022, par Marcelo Lopes Nunes

    When I conversion file MXF using ffmpeg command :

    


    fmpeg -y -i TEST.mxf -vcodec mpeg2video -b:v 50000k -minrate 50000k -maxrate 50000k -bufsize 20000k -g 15 -bf 2 -r 25 -s 1920x1080 -aspect 16:9 -top 1 -flags:v +ilme+ildct -vf yadif=1 -acodec pcm_s24le -map 0:0 -map 0:a -map 0:a -map 0:a -map 0:a -ar 48000 -ac 1 CONVERT.mxf

    


    FFmpeg command Execution error index entry 349 + TemporalOffset 1 = 350, which is out of bounds below log.

    


      libavutil      55. 78.100 / 55. 78.100
  libavcodec     57.107.100 / 57.107.100
  libavformat    57. 83.100 / 57. 83.100
  libavdevice    57. 10.100 / 57. 10.100
  libavfilter     6.107.100 /  6.107.100
  libavresample   3.  7.  0 /  3.  7.  0
  libswscale      4.  8.100 /  4.  8.100
  libswresample   2.  9.100 /  2.  9.100
  libpostproc    54.  7.100 / 54.  7.100
[mxf @ 0x560422b8bc20] index entry 349 + TemporalOffset 1 = 350, which is out of bounds
Guessed Channel Layout for Input Stream #0.1 : mono
Guessed Channel Layout for Input Stream #0.2: mono


    


    So after this, the audio isn't synchronized with the movie.
I executed the same command with a lot of other MXFs it worked and I don't have the FFmpeg error in the log.

    


    Mediainfo MXF below.

    


            <track type="General">&#xA;            <videocount>1</videocount>&#xA;            <audiocount>2</audiocount>&#xA;            <othercount>3</othercount>&#xA;            <fileextension>mxf</fileextension>&#xA;            <format>MXF</format>&#xA;            XDCAM HD422&#xA;            1.3&#xA;            OP-1a&#xA;            Closed / Complete&#xA;            <filesize>91497029</filesize>&#xA;            <duration>14.000</duration>&#xA;            <overallbitrate>52284016</overallbitrate>&#xA;            <framerate>25.000</framerate>&#xA;            <framecount>350</framecount>&#xA;            <footersize>2629</footersize>&#xA;            <packagename>Source Package</packagename>&#xA;            0-00-00 00:00:00.000&#xA;            UTC 2022-10-19 10:23:49&#xA;            2022-10-19 11:23:49&#xA;            FFmpeg&#xA;            OP1a Muxer&#xA;            58.29.100.0.0&#xA;            58.29.100.0.0&#xA;        </track>&#xA;        <track type="Video">&#xA;            <streamorder>0</streamorder>&#xA;            <id>2</id>&#xA;            <format>MPEG Video</format>&#xA;            XDCAM HD422&#xA;            2&#xA;            4:2:2&#xA;            High&#xA;            Yes&#xA;            Default&#xA;            M=3, N=15&#xA;            Frame&#xA;            Frame&#xA;            <codecid>0D01030102046001-0401020201040300</codecid>&#xA;            <duration>14.000</duration>&#xA;            CBR&#xA;            <bitrate>50000000</bitrate>&#xA;            <width>1920</width>&#xA;            <height>1080</height>&#xA;            1920&#xA;            1080&#xA;            <pixelaspectratio>1.000</pixelaspectratio>&#xA;            <displayaspectratio>1.778</displayaspectratio>&#xA;            <framerate>25.000</framerate>&#xA;            <framecount>350</framecount>&#xA;            <colorspace>YUV</colorspace>&#xA;            <chromasubsampling>4:2:2</chromasubsampling>&#xA;            <bitdepth>8</bitdepth>&#xA;            <scantype>Interlaced</scantype>&#xA;            <scanorder>TFF</scanorder>&#xA;            Lossy&#xA;            <delay>0.000</delay>&#xA;            0.000&#xA;            00:00:00:00&#xA;            Group of pictures header&#xA;            Open&#xA;            Closed&#xA;            <streamsize>87500000</streamsize>&#xA;            <buffersize>2500608</buffersize>&#xA;            <extra>&#xA;                0&#xA;                8&#xA;            </extra>&#xA;        </track>&#xA;        <track type="Audio" typeorder="1">&#xA;            <streamorder>1</streamorder>&#xA;            <id>3</id>&#xA;            <format>PCM</format>&#xA;            Little&#xA;            Frame (AES)&#xA;            <codecid>0D01030102060300</codecid>&#xA;            <duration>14.000</duration>&#xA;            CBR&#xA;            <bitrate>1152000</bitrate>&#xA;            <channels>1</channels>&#xA;            <samplesperframe>1920</samplesperframe>&#xA;            <samplingrate>48000</samplingrate>&#xA;            <samplingcount>672000</samplingcount>&#xA;            <framerate>25.000</framerate>&#xA;            <framecount>350</framecount>&#xA;            <bitdepth>24</bitdepth>&#xA;            <delay>0.000</delay>&#xA;            No&#xA;            Container&#xA;            <streamsize>2016000</streamsize>&#xA;            0.02203&#xA;            <extra>&#xA;                0&#xA;                <locked>Yes</locked>&#xA;                <blockalignment>3</blockalignment>&#xA;            </extra>&#xA;        </track>&#xA;

    &#xA;

    I researched this problem on ffmpeg.org and I found "This implies there's a VBR index with slices. Probably because of mxf->slice_count = 1 ;&#xA;Slices are MXF's way of indexing VBR combined with CBR." but I don't know how I fix this.

    &#xA;

  • Why i get permission denied at docker ffmpeg execution

    24 octobre 2022, par Daniel Richter

    i want to make small gifs (miniclip) from a mp4 video using ffmpeg with php script in aws ecs.

    &#xA;

    The whole configuration is working with the symfony built-in server. Now i put the controller into local docker and now i get the following permission denied error :

    &#xA;

    ffmpeg version 5.0.1 Copyright (c) 2000-2022 the FFmpeg developers built with gcc 11.2.1 &#xA;(Alpine 11.2.1_git20220219) 20220219 configuration: --prefix=/usr --enable-avfilter -- &#xA;enable-gnutls --enable-gpl --enable-libass --enable-libmp3lame --enable-libpulse -- &#xA;enable-libvorbis --enable-libvpx --enable-libxvid --enable-libx264 --enable-libx265 -- &#xA;enable-libtheora --enable-libv4l2 --enable-libdav1d --enable-lto --enable-postproc -- &#xA;enable-pic --enable-pthreads --enable-shared --enable-libxcb --enable-librist --enable- &#xA;libsrt --enable-libssh --enable-libvidstab --disable-stripping --disable-static -- &#xA;disable-librtmp --enable-libaom --enable-libopus --enable-libsoxr --enable-libwebp -- &#xA;enable-vaapi --enable-vdpau --enable-vulkan --enable-libdrm --disable-debug &#xA;libavutil 57. 17.100 / 57. 17.100 &#xA;libavcodec 59. 18.100 / 59. 18.100 &#xA;libavformat 59. 16.100 / 59. 16.100 &#xA;libavdevice 59. 4.100 / 59. 4.100 &#xA;libavfilter 8. 24.100 / 8. 24.100 &#xA;libswscale 6. 4.100 / 6. 4.100 &#xA;libswresample 4. 3.100 / 4. 3.100 &#xA;libpostproc 56. 3.100 / 56. 3.100 &#xA;Input #0, mov,mp4,m4a,3gp,3g2,mj2, &#xA;from &#x27;https://vendery-streaming.fra1.cdn.digitaloceanspaces.com/myvideo.mp4&#x27;: Metadata: major_brand : isom minor_version : 512 &#xA;compatible_brands: isomiso2avc1mp41 &#xA;encoder : Lavf58.24.101 Duration: 00:18:10.37, start: 0.000000, &#xA;bitrate: 3405 kb/s Stream #0:0[0x1](und): &#xA;Video: h264 (High) (avc1 / 0x31637661), yuv420p(progressive), 540x960, 3331 kb/s, 30 &#xA;fps, 30 tbr, 15360 tbn (default) Metadata: handler_name : VideoHandler vendor_id : [0][0][0][0] &#xA;Stream #0:1[0x2](und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, mono, &#xA;fltp, 69 kb/s (default) &#xA;Metadata: handler_name : &#xA;SoundHandler vendor_id : [0][0][0][0] /var/www/html/public/myimage.gif: Permission denied&#xA;

    &#xA;

    What exactly tells me the error ? The folder /var/www/html/public/ exists but isnt writable ?

    &#xA;

    The command from php i run the script is :

    &#xA;

    $output = shell_exec(&#x27;/usr/bin/ffmpeg -y -ss 255 -t 4 -i &#x27;.$url.&#x27; -vf "fps=10,scale=320:-1:flags=lanczos,split[s0][s1];[s0]palettegen[p];[s1][p]paletteuse" -loop 0 /var/www/html/public/&#x27;.$outputFile.&#x27; 2>&amp;1&#x27;);&#xA;echo $output;&#xA;

    &#xA;

    any idea is welcome.

    &#xA;

      &#xA;
    1. the user is wrong. shell_exec(&#x27;whoami&#x27;); gives me www-data, but why ?? My dockerfile have the following in : RUN chown -R root:root /var/www/html/public
    2. &#xA;

    &#xA;

    docker-compose.yaml

    &#xA;

    symfony:&#xA;    mem_limit: 500M&#xA;    mem_reservation: 500M&#xA;    container_name: &#x27;${APP_NAME}-${APP_ENV}-backend&#x27;&#xA;    #environment:&#xA;        #- DATABASE_URL="mysql://${MYSQL_USER}:${MYSQL_PASS}@database/${MYSQL_DB}?serverVersion=mariadb-10.8.3"&#xA;    build:&#xA;        context: .&#xA;        target: symfony&#xA;    #restart: unless-stopped&#xA;    ports:&#xA;        - 8000:8000 #browser / container&#xA;

    &#xA;