
Recherche avancée
Médias (91)
-
MediaSPIP Simple : futur thème graphique par défaut ?
26 septembre 2013, par
Mis à jour : Octobre 2013
Langue : français
Type : Video
-
avec chosen
13 septembre 2013, par
Mis à jour : Septembre 2013
Langue : français
Type : Image
-
sans chosen
13 septembre 2013, par
Mis à jour : Septembre 2013
Langue : français
Type : Image
-
config chosen
13 septembre 2013, par
Mis à jour : Septembre 2013
Langue : français
Type : Image
-
SPIP - plugins - embed code - Exemple
2 septembre 2013, par
Mis à jour : Septembre 2013
Langue : français
Type : Image
-
GetID3 - Bloc informations de fichiers
9 avril 2013, par
Mis à jour : Mai 2013
Langue : français
Type : Image
Autres articles (37)
-
Multilang : améliorer l’interface pour les blocs multilingues
18 février 2011, parMultilang est un plugin supplémentaire qui n’est pas activé par défaut lors de l’initialisation de MediaSPIP.
Après son activation, une préconfiguration est mise en place automatiquement par MediaSPIP init permettant à la nouvelle fonctionnalité d’être automatiquement opérationnelle. Il n’est donc pas obligatoire de passer par une étape de configuration pour cela. -
Les autorisations surchargées par les plugins
27 avril 2010, parMediaspip core
autoriser_auteur_modifier() afin que les visiteurs soient capables de modifier leurs informations sur la page d’auteurs -
Personnaliser les catégories
21 juin 2013, parFormulaire de création d’une catégorie
Pour ceux qui connaissent bien SPIP, une catégorie peut être assimilée à une rubrique.
Dans le cas d’un document de type catégorie, les champs proposés par défaut sont : Texte
On peut modifier ce formulaire dans la partie :
Administration > Configuration des masques de formulaire.
Dans le cas d’un document de type média, les champs non affichés par défaut sont : Descriptif rapide
Par ailleurs, c’est dans cette partie configuration qu’on peut indiquer le (...)
Sur d’autres sites (6635)
-
ffmpeg output gives file not found error in python
20 octobre 2022, par Batuhan YılmazTrying 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 NunesWhen 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">
 <videocount>1</videocount>
 <audiocount>2</audiocount>
 <othercount>3</othercount>
 <fileextension>mxf</fileextension>
 <format>MXF</format>
 XDCAM HD422
 1.3
 OP-1a
 Closed / Complete
 <filesize>91497029</filesize>
 <duration>14.000</duration>
 <overallbitrate>52284016</overallbitrate>
 <framerate>25.000</framerate>
 <framecount>350</framecount>
 <footersize>2629</footersize>
 <packagename>Source Package</packagename>
 0-00-00 00:00:00.000
 UTC 2022-10-19 10:23:49
 2022-10-19 11:23:49
 FFmpeg
 OP1a Muxer
 58.29.100.0.0
 58.29.100.0.0
 </track>
 <track type="Video">
 <streamorder>0</streamorder>
 <id>2</id>
 <format>MPEG Video</format>
 XDCAM HD422
 2
 4:2:2
 High
 Yes
 Default
 M=3, N=15
 Frame
 Frame
 <codecid>0D01030102046001-0401020201040300</codecid>
 <duration>14.000</duration>
 CBR
 <bitrate>50000000</bitrate>
 <width>1920</width>
 <height>1080</height>
 1920
 1080
 <pixelaspectratio>1.000</pixelaspectratio>
 <displayaspectratio>1.778</displayaspectratio>
 <framerate>25.000</framerate>
 <framecount>350</framecount>
 <colorspace>YUV</colorspace>
 <chromasubsampling>4:2:2</chromasubsampling>
 <bitdepth>8</bitdepth>
 <scantype>Interlaced</scantype>
 <scanorder>TFF</scanorder>
 Lossy
 <delay>0.000</delay>
 0.000
 00:00:00:00
 Group of pictures header
 Open
 Closed
 <streamsize>87500000</streamsize>
 <buffersize>2500608</buffersize>
 <extra>
 0
 8
 </extra>
 </track>
 <track type="Audio" typeorder="1">
 <streamorder>1</streamorder>
 <id>3</id>
 <format>PCM</format>
 Little
 Frame (AES)
 <codecid>0D01030102060300</codecid>
 <duration>14.000</duration>
 CBR
 <bitrate>1152000</bitrate>
 <channels>1</channels>
 <samplesperframe>1920</samplesperframe>
 <samplingrate>48000</samplingrate>
 <samplingcount>672000</samplingcount>
 <framerate>25.000</framerate>
 <framecount>350</framecount>
 <bitdepth>24</bitdepth>
 <delay>0.000</delay>
 No
 Container
 <streamsize>2016000</streamsize>
 0.02203
 <extra>
 0
 <locked>Yes</locked>
 <blockalignment>3</blockalignment>
 </extra>
 </track>



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 ;
Slices are MXF's way of indexing VBR combined with CBR." but I don't know how I fix this.


-
Why i get permission denied at docker ffmpeg execution
24 octobre 2022, par Daniel Richteri want to make small gifs (miniclip) from a mp4 video using ffmpeg with php script in aws ecs.


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 :


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



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

The command from php i run the script is :


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



any idea is welcome.


- 

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




docker-compose.yaml


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



- the user is wrong.