
Recherche avancée
Autres articles (41)
-
Publier sur MédiaSpip
13 juin 2013Puis-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 -
Contribute to a better visual interface
13 avril 2011MediaSPIP is based on a system of themes and templates. Templates define the placement of information on the page, and can be adapted to a wide range of uses. Themes define the overall graphic appearance of the site.
Anyone can submit a new graphic theme or template and make it available to the MediaSPIP community. -
Qu’est ce qu’un éditorial
21 juin 2013, parEcrivez votre de point de vue dans un article. Celui-ci sera rangé dans une rubrique prévue à cet effet.
Un éditorial est un article de type texte uniquement. Il a pour objectif de ranger les points de vue dans une rubrique dédiée. Un seul éditorial est placé à la une en page d’accueil. Pour consulter les précédents, consultez la rubrique dédiée.
Vous pouvez personnaliser le formulaire de création d’un éditorial.
Formulaire de création d’un éditorial Dans le cas d’un document de type éditorial, les (...)
Sur d’autres sites (8639)
-
Anomalie #4831 (Nouveau) : URLs arbo non mise à jour au changement de rubrique
23 juin 2021, par Julien TessierEtapes pour reproduire :¶
- Utiliser les URL arbos
- Créer un article "Lorem ipsum" dans la rubrique 1
- Publier l’article, son URL est /rubrique-1/lorem-ipsum
- Créer un article "Lorem ipsum" dans la rubrique 2
- Proposer l’article à la publication, son URL est /rubrique-2/lorem-ipsum
- Déplacer l’article dans la rubrique 1
- SPIP génère une erreur dans les logs :
2021-06-23 11:32:54 127.0.0.1 (pid 498) :Pri:ERREUR : Erreur 1062 de mysql : Duplicate entry ’1-lorem-ipsum’ for key ’PRIMARY’ in .../plugins-dist/urls_etendues/action/editer_url.php L155 [sql_insertq(),url_insert(),declarer_url_arbo(),_generer_url_arbo(),urls_arbo_dist(),generer_url_entite(),html_af5c93b1e9d12543df40c819344ffc73(),public_parametrer_dist(),public_produire_page_dist(),inclure_page(),evaluer_fond(),recuperer_fond(),urls_afficher_fiche_objet(),minipipe(),execute_pipeline_afficher_fiche_objet(),pipeline(),f_afficher_blocs_ecrire(),f_recuperer_fond(),minipipe(),execute_pipeline_recuperer_fond(),pipeline(),recuperer_fond(),traiter_appels_inclusions_ajax()]
- Publier l’article
- L’URL du nouvel article est inchangée donc il est inaccessible (= son URL a déjà été "prise" par un autre)
Comportement attendu¶
Au changement de rubrique, URL arbos regénère une URL unique (avec l’ID donc).
Résolution temporaire¶
J’ai réglé ça de la manière suivante, via un plugin et la pipeline post_edition :
- <span class="CodeRay"><span class="keyword">function</span> <span class="function">plugin_post_edition</span>(<span class="local-variable">$e</span>) {
- <span class="keyword">switch</span> (objet_type(<span class="local-variable">$e</span>[<span class="string"><span class="delimiter">'</span><span class="content">args</span><span class="delimiter">'</span></span>][<span class="string"><span class="delimiter">'</span><span class="content">table</span><span class="delimiter">'</span></span>])) {
- <span class="keyword">case</span> <span class="string"><span class="delimiter">'</span><span class="content">article</span><span class="delimiter">'</span></span>;
- <span class="keyword">if</span> (!<span class="predefined">empty</span>(<span class="local-variable">$e</span>[<span class="string"><span class="delimiter">'</span><span class="content">data</span><span class="delimiter">'</span></span>][<span class="string"><span class="delimiter">'</span><span class="content">id_rubrique</span><span class="delimiter">'</span></span>])) {
- <span class="local-variable">$id_rubrique</span> = <span class="predefined">intval</span>(<span class="local-variable">$e</span>[<span class="string"><span class="delimiter">'</span><span class="content">data</span><span class="delimiter">'</span></span>][<span class="string"><span class="delimiter">'</span><span class="content">id_rubrique</span><span class="delimiter">'</span></span>]);
- <span class="local-variable">$id_article</span> = <span class="predefined">intval</span>(<span class="local-variable">$e</span>[<span class="string"><span class="delimiter">'</span><span class="content">args</span><span class="delimiter">'</span></span>][<span class="string"><span class="delimiter">'</span><span class="content">id_objet</span><span class="delimiter">'</span></span>]);
- <span class="keyword">if</span> (<span class="local-variable">$url</span> = sql_fetsel(<span class="string"><span class="delimiter">'</span><span class="content">url</span><span class="delimiter">'</span></span>, <span class="string"><span class="delimiter">'</span><span class="content">spip_urls</span><span class="delimiter">'</span></span>, <span class="string"><span class="delimiter">"</span><span class="content">type = 'article' AND id_objet = </span><span class="local-variable">$id_article</span><span class="delimiter">"</span></span>, <span class="string"><span class="delimiter">'</span><span class="delimiter">'</span></span>, <span class="string"><span class="delimiter">'</span><span class="content">perma DESC, date DESC</span><span class="delimiter">'</span></span>, <span class="string"><span class="delimiter">'</span><span class="content">1</span><span class="delimiter">'</span></span>)) {
- <span class="local-variable">$url</span> = <span class="local-variable">$url</span>[<span class="string"><span class="delimiter">'</span><span class="content">url</span><span class="delimiter">'</span></span>];
- <span class="keyword">if</span> (sql_countsel(<span class="string"><span class="delimiter">'</span><span class="content">spip_urls</span><span class="delimiter">'</span></span>, <span class="string"><span class="delimiter">"</span><span class="content">url = </span><span class="delimiter">"</span></span>.sql_quote(<span class="local-variable">$url</span>).<span class="string"><span class="delimiter">"</span><span class="content"> AND type = 'article' AND id_parent = </span><span class="local-variable">$id_rubrique</span><span class="content"> AND id_objet != </span><span class="local-variable">$id_article</span><span class="delimiter">"</span></span>)) {
- sql_delete(<span class="string"><span class="delimiter">'</span><span class="content">spip_urls</span><span class="delimiter">'</span></span>, <span class="string"><span class="delimiter">"</span><span class="content">type = 'article' AND id_objet = </span><span class="local-variable">$id_article</span><span class="content"> AND url = </span><span class="delimiter">"</span></span>.sql_quote(<span class="local-variable">$url</span>));
- }
- }
- }
- <span class="keyword">break</span>;
- <span class="keyword">default</span>:
- <span class="keyword">break</span>;
- }
- <span class="keyword">return</span> <span class="local-variable">$e</span>;
- }
- </span>
Ce n’est peut être pas élégant mais ça marche en attendant un fix :)
-
cut fragment of mp3 from, to and apply fade in, fade out
23 juin 2021, par MeviaI am in need of a tool that will complete following tasks


- 

- provide
source
mp3 - provide
data
of fragment to cut (start
time,end
time) - start cutting from
source
wherestart
is - end cutting from
source
whereend
is - apply
X
secondsfade in
beginning ofstart
time - apply
Y
secondsfade out
beginningY
seconds subtracted fromend














By
fade
i meanincrease
/decrease
volume between0 - 100%
/100% - 0


I already have an interface that allows to prepare
data
.

On the backend side, I am working with
node.js
.

After some research i found a tool FFmpeg that was widely recommended to achieve my goal.


After further research i came up with following code :


const { stdout, stderr } = await exec('ffmpeg -y -i "' + sourcePath + '" -ss ' + start + ' -to ' + end + ' -af "afade=in:st=' + start + ':d=' + fadeLength + ',afade=out:st=' + (end - 3) + ':d=' + fadeLength + '" "' + outputPath + '"');

/*
Breakdown:
 ffmpeg
 -y
 -i "sourcePath"
 -ss start
 -to end
 -af "afade=in:st=(start):d=(fadeLength),afade=out:st=(end - fadeLength):d=3"
 "outputPath"

Example:
 ffmpeg
 -y
 -i "/source/test.mp3"
 -ss 89.382716
 -to 172.817231
 -af "afade=in:st=89.382716:d=5,afade=out:st=(172.817231 - 5):d=5"
 "/output/test_cut.mp3"
*/



It's working, but processor throws warnings :


[mp3 @ 0x7fc50a80c800] Estimating duration from bitrate, this may be inaccurate
[swscaler @ 0x114800000] deprecated pixel format used, make sure you did set range correctly
[mp3 @ 0x7fc50a819a00] Frame rate very high for a muxer not efficiently supporting it.
Please consider specifying a lower framerate, a different muxer or -vsync 2



Full log :


ffmpeg version 4.4 Copyright (c) 2000-2021 the FFmpeg developers
 built with Apple clang version 12.0.0 (clang-1200.0.32.29)
 configuration: --prefix=/usr/local/Cellar/ffmpeg/4.4_2 --enable-shared --enable-pthreads --enable-version3 --cc=clang --host-cflags= --host-ldflags= --enable-ffplay --enable-gnutls --enable-gpl --enable-libaom --enable-libbluray --enable-libdav1d --enable-libmp3lame --enable-libopus --enable-librav1e --enable-librubberband --enable-libsnappy --enable-libsrt --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libxvid --enable-lzma --enable-libfontconfig --enable-libfreetype --enable-frei0r --enable-libass --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libspeex --enable-libsoxr --enable-libzmq --enable-libzimg --disable-libjack --disable-indev=jack --enable-avresample --enable-videotoolbox
 libavutil 56. 70.100 / 56. 70.100
 libavcodec 58.134.100 / 58.134.100
 libavformat 58. 76.100 / 58. 76.100
 libavdevice 58. 13.100 / 58. 13.100
 libavfilter 7.110.100 / 7.110.100
 libavresample 4. 0. 0 / 4. 0. 0
 libswscale 5. 9.100 / 5. 9.100
 libswresample 3. 9.100 / 3. 9.100
 libpostproc 55. 9.100 / 55. 9.100
[mp3 @ 0x7fc50a80c800] Estimating duration from bitrate, this may be inaccurate
Input #0, mp3, from 'test.mp3':
 Metadata:
 title : Test
 artist : Test
 Duration: 00:03:22.50, start: 0.000000, bitrate: 320 kb/s
 Stream #0:0: Audio: mp3, 44100 Hz, stereo, fltp, 320 kb/s
 Stream #0:1: Video: mjpeg (Baseline), yuvj420p(pc, bt470bg/unknown/unknown), 320x240, 90k tbr, 90k tbn, 90k tbc (attached pic)
 Metadata:
 comment : Other
Stream mapping:
 Stream #0:1 -> #0:0 (mjpeg (native) -> png (native))
 Stream #0:0 -> #0:1 (mp3 (mp3float) -> mp3 (libmp3lame))
Press [q] to stop, [?] for help
[swscaler @ 0x114800000] deprecated pixel format used, make sure you did set range correctly
[mp3 @ 0x7fc50a819a00] Frame rate very high for a muxer not efficiently supporting it.
Please consider specifying a lower framerate, a different muxer or -vsync 2
Output #0, mp3, to 'test (CUT).mp3':
 Metadata:
 TIT2 : Test
 TPE1 : Test
 TSSE : Lavf58.76.100
 Stream #0:0: Video: png, rgb24, 320x240, q=2-31, 200 kb/s, 90k fps, 90k tbn (attached pic)
 Metadata:
 comment : Other
 encoder : Lavc58.134.100 png
 Stream #0:1: Audio: mp3, 44100 Hz, stereo, fltp
 Metadata:
 encoder : Lavc58.134.100 libmp3lame
frame= 0 fps=0.0 q=0.0 size= 0kB time=00:00:39.89 bitrate= 0.0kbits/s speed=31.4x 
[mp3 @ 0x7fc50a819a00] No packets were sent for some of the attached pictures.
frame= 0 fps=0.0 q=0.0 Lsize= 626kB time=00:00:40.02 bitrate= 128.2kbits/s speed=31.4x 
video:0kB audio:626kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.053810%



So my question is, how to change execution command to have it executed properly (avoid warnings and errors) ?


Important thing is that i am only interested in cutting it, if possible avoid re-encondig because i am already working with 320 mp3's that have been produced from master wav's.


- provide
-
How to manipulate audio volume in ffmpeg
24 juin 2021, par JohnTerryI am working on a ffmpeg command to overlay background music to a video which already has audio.


below is the command -


ffmpeg -i video_with_audio.webm -stream_loop -1 -i overlay_music.mp3 -vcodec copy -filter_complex amix -acodec libopus -mapping_family 0 -b:a 96k -shortest -map 0:v:0 -map 1:a:0 output_video.webm



the above command is working fine but i also want to control the volume of the both audios.
so for this purpose i am using the command-


cmd = "ffmpeg -i {} -filter_complex 'amovie='{}':loop=0,asetpts=N/SR/TB,volume=1[audio];[0:a]volume=3[sa];[sa][audio]amix[fa]' -map 0:v -map [fa] -vcodec copy -acodec libopus -preset ultrafast -shortest {}".format(inp_video, bg, out_video)
 os.system(cmd)



but i am getting an error while passing online url-


ffmpeg version n4.3.1 Copyright (c) 2000-2020 the FFmpeg developers
 built with gcc 7 (Ubuntu 7.5.0-3ubuntu1~18.04)
 configuration: --prefix= --prefix=/usr --disable-debug --disable-doc --disable-static --enable-cuda --enable-cuda-sdk --enable-cuvid --enable-libdrm --enable-ffplay --enable-gnutls --enable-gpl --enable-libass --enable-libfdk-aac --enable-libfontconfig --enable-libfreetype --enable-libmp3lame --enable-libnpp --enable-libopencore_amrnb --enable-libopencore_amrwb --enable-libopus --enable-libpulse --enable-sdl2 --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libv4l2 --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-libxcb --enable-libxvid --enable-nonfree --enable-nvenc --enable-omx --enable-openal --enable-opencl --enable-runtime-cpudetect --enable-shared --enable-vaapi --enable-vdpau --enable-version3 --enable-xlib
 libavutil 56. 51.100 / 56. 51.100
 libavcodec 58. 91.100 / 58. 91.100
 libavformat 58. 45.100 / 58. 45.100
 libavdevice 58. 10.100 / 58. 10.100
 libavfilter 7. 85.100 / 7. 85.100
 libswscale 5. 7.100 / 5. 7.100
 libswresample 3. 7.100 / 3. 7.100
 libpostproc 55. 7.100 / 55. 7.100
Input #0, matroska,webm, from '/home/abc/Desktop/abc/input_video.webm':
 Metadata:
 COMPATIBLE_BRANDS: isomiso2avc1mp41
 MAJOR_BRAND : isom
 MINOR_VERSION : 512
 ENCODER : Lavf58.45.100
 Duration: 00:03:52.07, start: -0.007000, bitrate: 1179 kb/s
 Stream #0:0: Video: vp9 (Profile 0), yuv420p(tv), 854x480, SAR 1:1 DAR 427:240, 25 fps, 25 tbr, 1k tbn, 1k tbc (default)
 Metadata:
 HANDLER_NAME : ISO Media file produced by Google Inc.
 ENCODER : Lavc58.91.100 libvpx-vp9
 DURATION : 00:03:52.007000000
 Stream #0:1: Audio: opus, 48000 Hz, stereo, fltp (default)
 Metadata:
 HANDLER_NAME : ISO Media file produced by Google Inc.
 ENCODER : Lavc58.91.100 libopus
 DURATION : 00:03:52.068000000
[Parsed_amovie_0 @ 0x56189e8f9900] Failed to avformat_open_input 'https'
[AVFilterGraph @ 0x56189e947e00] Error initializing filter 'amovie' with args 'https://dapi.videowiki.pt/media/music-lib/2021/04/05/31/21/bensound-creativeminds.mp3:loop=0'
Error initializing complex filters.
No such file or directory