Recherche avancée

Médias (1)

Mot : - Tags -/iphone

Autres articles (83)

  • Ajouter notes et légendes aux images

    7 février 2011, par

    Pour pouvoir ajouter notes et légendes aux images, la première étape est d’installer le plugin "Légendes".
    Une fois le plugin activé, vous pouvez le configurer dans l’espace de configuration afin de modifier les droits de création / modification et de suppression des notes. Par défaut seuls les administrateurs du site peuvent ajouter des notes aux images.
    Modification lors de l’ajout d’un média
    Lors de l’ajout d’un média de type "image" un nouveau bouton apparait au dessus de la prévisualisation (...)

  • Mediabox : ouvrir les images dans l’espace maximal pour l’utilisateur

    8 février 2011, par

    La visualisation des images est restreinte par la largeur accordée par le design du site (dépendant du thème utilisé). Elles sont donc visibles sous un format réduit. Afin de profiter de l’ensemble de la place disponible sur l’écran de l’utilisateur, il est possible d’ajouter une fonctionnalité d’affichage de l’image dans une boite multimedia apparaissant au dessus du reste du contenu.
    Pour ce faire il est nécessaire d’installer le plugin "Mediabox".
    Configuration de la boite multimédia
    Dès (...)

  • Submit bugs and patches

    13 avril 2011

    Unfortunately a software is never perfect.
    If you think you have found a bug, report it using our ticket system. Please to help us to fix it by providing the following information : the browser you are using, including the exact version as precise an explanation as possible of the problem if possible, the steps taken resulting in the problem a link to the site / page in question
    If you think you have solved the bug, fill in a ticket and attach to it a corrective patch.
    You may also (...)

Sur d’autres sites (6523)

  • Merging videos. multiple overlays and audio in one step

    3 février 2019, par user14567

    I have a process that I run hourly to update a 60 sec weather video.

    I combine a background video with a generated m4a audio track, scrolling text and separate top and bottom overlays.

    I need all of this in an mp4 and in a TLS (m3u8) format.

    Right now I do this 3 ffmpeg consecutive sessions and end up with a rendered 720p mp4.

    Then I run a 4th ffpmeg session to convert the the mp4 to a TLS version (I need both mp4 and m3u8.)

    I am doing this in 4 ffmpeg runs because I haven’t figured out how to combine the filters and do it in less.

    When I try an combine this, I lose either the overlays or the text. I can’t get it all to come out in one session. I’ve tried comma separating within the filters but I haven’t found the right combination.

    Any assistance in showing me how to combine this work and reduce the number of runs would be greatly appreciated.

    This runs on a Centos 7 box with ffmpeg version 3.4.1.

    #
    # Step 1: Combine background video with audio and scrolling text
    #
    ffmpeg -i /video/weather/media/sunnybeach.mp4 \
    -i /video/weather/prod/currentweather.m4a \
    -i /video/weather/media/weather-lower-third1.png \
    -map 2:v:0 -map 1:a:0 -strict -2 \
    -filter_complex  "[0]split[txt][orig];[txt]drawtext=fontfile=/var/www/vhosts/30a.tv/httpdocs/openx/lib/pear/Image/Canvas/Fonts/arial.ttf:fontsize=80:fontcolor=white:x=(w-text_w)/2+20:y=h-70*t:textfile=/video/weather/prod/currentweather.txt:bordercolor=black:borderw=2[txt];[orig]crop=iw:50:0:0[orig];[txt][orig]overlay” \
    -t 60 -c:v libx264 -y -s hd720  -loglevel quiet /video/weather/prod/currentweather.mp4 2>&1 >> /dev/null

    if [ $? != 0 ]; then echo fail step 1; exit 1;fi

    #
    # Step 2: now overlay current lowerthird
    #
    ffmpeg -i /video/weather/prod/currentweather.mp4 \
    -i /video/weather/media/weather-lower-third1.png \
    -strict -2 -filter_complex  "[0:v][1:v]overlay" -c:a copy -y  \
    -loglevel quiet $FKWI/currentweather1.mp4 2>&1 >> /dev/null

    if [ $? != 0 ]; then echo fail step 2; exit 1;fi

    #
    # Step 3: now overlay current topbanner
    #
    ffmpeg -i $FKWI/currentweather1.mp4 \
    -i /video/weather/media/weather-top-banner.png \
    -strict -2 -filter_complex  "[0:v][1:v]overlay" -c:a copy -y  \
    -loglevel quiet $FKWI/currentweather.mp4 2>&1 >> /dev/null

    if [ $? != 0 ]; then echo fail step 3; exit 1;fi

    #
    # Step 4: Now make TLS version
    #

    cd $FKWI/httpdocs/weather
    RES1=`/usr/bin/ffmpeg -i $FKWI/httpdocs/currentweather.mp4 \
    -profile:v baseline -level 3.0 -s 1280x720 \
    -c:a aac -ar 48000 -g 60 -start_number 0 \
    -hls_time 6 -hls_list_size 0 -f hls \
    -hls_base_url "http://$URL.com/weather/" \
    -hls_segment_filename "video%04d.ts" \
    -strict -2   -loglevel quiet "currentweather.m3u8" 2>&1>>/dev/null `

    if [ $? != 0 ]; then echo fail step 4; exit 1;fi

    This code yields both videos fine, but it takes 4 runs and I need it to happen in less runs.

  • Evolution #4271 (Nouveau) : valider_url_distante => pouvoir déclarer des domaines distants et pas ...

    21 janvier 2019, par - Equipement

    Bonjour,

    La fonction valider_url_distante permet de déclarer des hosts distants :

    1. <span class="CodeRay"><span class="local-variable">$known_hosts</span> = pipeline(<span class="string"><span class="delimiter">'</span><span class="content">declarer_hosts_distants</span><span class="delimiter">'</span></span>, <span class="local-variable">$known_hosts</span>);
    2. </span>

    Télécharger

    C’est très bien, mais avec plusieurs centaines de hosts à déclarer (dont la liste varie dans le temps), cela devient compliqué à gérer.

    Serait-il possible d’avoir, en plus, la possibilité de déclarer des domaines distants ?

    Une première piste serait de pouvoir déclarer .example.com dans le pipeline pour inclure tous les *.example.com au lieu des les énumérer un par un.

    Une seconde piste consisterait à s’inspirer de la function need_proxy (via une constante avec la même syntaxe que pour le http_noproxy) :

    // Pour mémoire code actuel à conserver ...

    1. <span class="CodeRay">    <span class="local-variable">$is_known_host</span> = <span class="predefined-constant">false</span>;
    2.     <span class="keyword">foreach</span> (<span class="local-variable">$known_hosts</span> <span class="keyword">as</span> <span class="local-variable">$known_host</span>) {
    3.         <span class="local-variable">$parse_known</span> = <span class="predefined">parse_url</span>(<span class="local-variable">$known_host</span>);
    4.         <span class="keyword">if</span> (<span class="local-variable">$parse_known</span>
    5.           <span class="keyword">and</span> <span class="predefined">strtolower</span>(<span class="local-variable">$parse_known</span>[<span class="string"><span class="delimiter">'</span><span class="content">host</span><span class="delimiter">'</span></span>]) === <span class="predefined">strtolower</span>(<span class="local-variable">$parsed_url</span>[<span class="string"><span class="delimiter">'</span><span class="content">host</span><span class="delimiter">'</span></span>])) {
    6.             <span class="local-variable">$is_known_host</span> = <span class="predefined-constant">true</span>;
    7.             <span class="keyword">break</span>;
    8.         }
    9.     }
    10. </span>

    Télécharger

    // ... que l’on pourrait faire suivre de ce code (complètement inspiré de function need_proxy) :

    1. <span class="CodeRay">    <span class="keyword">if</span> (!<span class="local-variable">$is_known_host</span>) {
    2.                 <span class="local-variable">$known_domaines</span> = _DECLARER_DOMAINES_DISTANTS;
    3.  
    4.                 <span class="local-variable">$known_domaines</span> = <span class="predefined">str_replace</span>(<span class="string"><span class="delimiter">"</span><span class="char">\n</span><span class="delimiter">"</span></span>, <span class="string"><span class="delimiter">"</span><span class="content"> </span><span class="delimiter">"</span></span>, <span class="local-variable">$known_domaines</span>);
    5.                 <span class="local-variable">$known_domaines</span> = <span class="predefined">str_replace</span>(<span class="string"><span class="delimiter">"</span><span class="char">\r</span><span class="delimiter">"</span></span>, <span class="string"><span class="delimiter">"</span><span class="content"> </span><span class="delimiter">"</span></span>, <span class="local-variable">$known_domaines</span>);
    6.                 <span class="local-variable">$known_domaines</span> = <span class="string"><span class="delimiter">"</span><span class="content"> </span><span class="local-variable">$known_domaines</span><span class="content"> </span><span class="delimiter">"</span></span>;
    7.                 <span class="local-variable">$domain</span> = <span class="predefined">strtolower</span>(<span class="local-variable">$parsed_url</span>[<span class="string"><span class="delimiter">'</span><span class="content">host</span><span class="delimiter">'</span></span>]);
    8.  
    9.                 <span class="keyword">if</span> (<span class="predefined">strpos</span>(<span class="local-variable">$known_domaines</span>, <span class="string"><span class="delimiter">"</span><span class="content"> </span><span class="local-variable">$domain</span><span class="content"> </span><span class="delimiter">"</span></span>) !== <span class="predefined-constant">false</span>){
    10.                     <span class="local-variable">$is_known_host</span> = <span class="predefined-constant">true</span>;
    11.                 }
    12.  
    13.                 <span class="keyword">while</span> (<span class="predefined">strpos</span>(<span class="local-variable">$domain</span>, <span class="string"><span class="delimiter">'</span><span class="content">.</span><span class="delimiter">'</span></span>) !== <span class="predefined-constant">false</span>) {
    14.                         <span class="local-variable">$domain</span> = <span class="predefined">explode</span>(<span class="string"><span class="delimiter">'</span><span class="content">.</span><span class="delimiter">'</span></span>, <span class="local-variable">$domain</span>);
    15.                         <span class="predefined">array_shift</span>(<span class="local-variable">$domain</span>);
    16.                         <span class="local-variable">$domain</span> = <span class="predefined">implode</span>(<span class="string"><span class="delimiter">'</span><span class="content">.</span><span class="delimiter">'</span></span>, <span class="local-variable">$domain</span>);
    17.  
    18.                         <span class="keyword">if</span> (<span class="predefined">strpos</span>(<span class="local-variable">$known_domaines</span>, <span class="string"><span class="delimiter">"</span><span class="content"> .</span><span class="local-variable">$domain</span><span class="content"> </span><span class="delimiter">"</span></span>) !== <span class="predefined-constant">false</span>) {
    19.                             <span class="local-variable">$is_known_host</span> = <span class="predefined-constant">true</span>;
    20.                         }
    21.                 }
    22.         }
    23. </span>

    Télécharger

    Cordialement
    Equipement

  • Anomalie #2381 : Corriger le niveau d’intertitre

    9 juin 2018, par b b

    Il y a des H2 dans la dist, qui introduisent des listes d’articles, de résultats, ou des blocs (forum), je pense qu’ils peuvent rester comme ça.

    Si le bloc de forum sous le texte de l’article reste en h2, il va se retrouver "au même niveau" qu’un intertitre en h2 donc, c’est pas top non ?