Recherche avancée

Médias (0)

Mot : - Tags -/optimisation

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

Autres articles (29)

  • 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

  • Other interesting software

    13 avril 2011, par

    We don’t claim to be the only ones doing what we do ... and especially not to assert claims to be the best either ... What we do, we just try to do it well and getting better ...
    The following list represents softwares that tend to be more or less as MediaSPIP or that MediaSPIP tries more or less to do the same, whatever ...
    We don’t know them, we didn’t try them, but you can take a peek.
    Videopress
    Website : http://videopress.com/
    License : GNU/GPL v2
    Source code : (...)

  • Pas question de marché, de cloud etc...

    10 avril 2011

    Le vocabulaire utilisé sur ce site essaie d’éviter toute référence à la mode qui fleurit allègrement
    sur le web 2.0 et dans les entreprises qui en vivent.
    Vous êtes donc invité à bannir l’utilisation des termes "Brand", "Cloud", "Marché" etc...
    Notre motivation est avant tout de créer un outil simple, accessible à pour tout le monde, favorisant
    le partage de créations sur Internet et permettant aux auteurs de garder une autonomie optimale.
    Aucun "contrat Gold ou Premium" n’est donc prévu, aucun (...)

Sur d’autres sites (7374)

  • Evolution #4471 : singulier_ou_pluriel pour l’arabe

    1er juin 2020, par George Kandalaft

    Correction :

    1. <span class="CodeRay"><span class="comment">/**
    2.  * Afficher un message "un truc"/("deux trucs" pour l'arabe)/"N trucs"
    3.  * Les items sont à indiquer comme pour la fonction _T() sous la forme :
    4.  * "module:chaine"
    5.  *
    6.  * @param int $nb : le nombre
    7.  * @param string $chaine_un : l'item de langue si $nb vaut un (ou $nb > 10 pour l'arabe)
    8.  * @param string $chaine_plusieurs : l'item de lanque si $nb > 1 ($nb est compris entre 3 et 10 pour l'arabe)
    9.  * @param string $var : La variable à remplacer par $nb dans l'item de langue (facultatif, défaut "nb")
    10.  * @param array $vars : Les autres variables nécessaires aux chaines de langues (facultatif)
    11.  * @return string : la chaine de langue finale en utilisant la fonction _T()
    12.  */</span>
    13. <span class="keyword">function</span> <span class="function">ar_singulier_ou_pluriel</span>(<span class="local-variable">$nb</span>, <span class="local-variable">$chaine_un</span>, <span class="local-variable">$chaine_plusieurs</span>, <span class="local-variable">$var</span> = <span class="string"><span class="delimiter">'</span><span class="content">nb</span><span class="delimiter">'</span></span>, <span class="local-variable">$vars</span> = <span class="predefined">array</span>()) {
    14.     <span class="keyword">if</span> (!<span class="local-variable">$nb</span> = <span class="predefined">intval</span>(<span class="local-variable">$nb</span>)) {
    15.         <span class="keyword">return</span> <span class="string"><span class="delimiter">'</span><span class="delimiter">'</span></span>;
    16.     }
    17.     <span class="keyword">if</span> (!<span class="predefined">is_array</span>(<span class="local-variable">$vars</span>)) {
    18.         <span class="keyword">return</span> <span class="string"><span class="delimiter">'</span><span class="delimiter">'</span></span>;
    19.     }
    20.     <span class="local-variable">$vars</span>[<span class="local-variable">$var</span>] = <span class="local-variable">$nb</span>;
    21.  
    22.     <span class="keyword">if</span> (<span class="predefined">$GLOBALS</span>[<span class="string"><span class="delimiter">'</span><span class="content">spip_lang</span><span class="delimiter">'</span></span>] == <span class="string"><span class="delimiter">'</span><span class="content">ar</span><span class="delimiter">'</span></span>) {
    23.         <span class="local-variable">$fem</span> = <span class="predefined">substr</span>(_T(<span class="local-variable">$chaine_un</span>), -<span class="integer">2</span>);
    24.         <span class="keyword">switch</span> (<span class="predefined-constant">true</span>) {
    25.             <span class="keyword">case</span> (<span class="local-variable">$nb</span> == <span class="integer">1</span>):
    26.                 <span class="keyword">if</span> (<span class="local-variable">$fem</span> == <span class="string"><span class="delimiter">'</span><span class="content">ة</span><span class="delimiter">'</span></span>) {
    27.                     <span class="local-variable">$un</span> = _T(<span class="local-variable">$chaine_un</span>) . <span class="string"><span class="delimiter">'</span><span class="content"> واحدة</span><span class="delimiter">'</span></span>;
    28.                 } <span class="keyword">else</span> {
    29.                     <span class="local-variable">$un</span> = _T(<span class="local-variable">$chaine_un</span>) . <span class="string"><span class="delimiter">'</span><span class="content"> واحد</span><span class="delimiter">'</span></span>;
    30.                 }
    31.                 <span class="keyword">return</span> <span class="local-variable">$un</span>;
    32.                 <span class="keyword">break</span>;
    33.             <span class="keyword">case</span> (<span class="local-variable">$nb</span> == <span class="integer">2</span>):
    34.                 <span class="keyword">if</span> (<span class="local-variable">$fem</span> == <span class="string"><span class="delimiter">'</span><span class="content">ة</span><span class="delimiter">'</span></span>) {
    35.                     <span class="local-variable">$deux</span> = <span class="predefined">rtrim</span>(_T(<span class="local-variable">$chaine_un</span>), <span class="local-variable">$fem</span>) . <span class="string"><span class="delimiter">'</span><span class="content">تان</span><span class="delimiter">'</span></span>;
    36.                 } <span class="keyword">else</span> {
    37.                     <span class="local-variable">$deux</span> = _T(<span class="local-variable">$chaine_un</span>) . <span class="string"><span class="delimiter">'</span><span class="content">ان</span><span class="delimiter">'</span></span>;
    38.                 }
    39.                 <span class="keyword">return</span> <span class="local-variable">$deux</span>;
    40.                 <span class="keyword">break</span>;
    41.             <span class="keyword">case</span> (<span class="local-variable">$nb</span> ><span class="integer">2</span> &#38;&#38; <span class="local-variable">$nb</span> &lt; <span class="integer">11</span>):
    42.                <span class="keyword">return</span> _T(<span class="local-variable">$chaine_plusieurs</span>, <span class="local-variable">$vars</span>);
    43.                 <span class="keyword">break</span>;
    44.             <span class="keyword">default</span>:
    45.                 <span class="local-variable">$chaine_un</span> = <span class="local-variable">$nb</span> . <span class="string"><span class="delimiter">'</span><span class="content"> </span><span class="delimiter">'</span></span> . <span class="local-variable">$chaine_un</span>;
    46.                 <span class="keyword">return</span> _T(<span class="local-variable">$chaine_un</span>, <span class="local-variable">$vars</span>);
    47.         }
    48.     } <span class="keyword">else</span> {
    49.         <span class="keyword">if</span> (<span class="local-variable">$nb</span> > <span class="integer">1</span>) {
    50.             <span class="keyword">return</span> _T(<span class="local-variable">$chaine_plusieurs</span>, <span class="local-variable">$vars</span>);
    51.         } <span class="keyword">else</span> {
    52.             <span class="keyword">return</span> _T(<span class="local-variable">$chaine_un</span>, <span class="local-variable">$vars</span>);
    53.         }
    54.     }
    55. }
    56. </span>

    Télécharger

  • FFMPEG HLS multiple Tracks not in sync

    2 juin 2020, par LordFenixNC

    This script works but the video doesnt sync with the sub or audio tracks. Could someone help fix this or Help me with a NEW script. I have been trying to figure this out with 0 luck and have had friends look at it. I even went to FFMPEG discord and FB asking for help from others who have posted scripts in the past. Seems no one has a interest in this. Please will someone help me.

    &#xA;&#xA;

    All I am trying to do is BULK encode MKVs to HLS with multiple resoutions in 10 sec segments and include all the Audio and SUb tracks that were originally in the MKV

    &#xA;&#xA;

    $files = Get-ChildItem ${Get-Location}&#xA;$loco = Get-Location&#xA;$p1 = Join-Path -Path $loco -ChildPath "/out"&#xA;New-Item -ItemType Directory -Force -Path $p1&#xA;&#xA;&#xA;&#xA;function lnCodeTransform {&#xA;    param( $String )&#xA;    echo $String&#xA;    switch ($String)&#xA;    {&#xA;        "jpn" {"jp"}&#xA;        "eng" {"en"}&#xA;        "esp" {"es"}&#xA;        "fra" {"fr"}&#xA;        "deu" {"de"}&#xA;        default {$String}&#xA;    }&#xA;}&#xA;&#xA;&#xA;function lnNameTransform {&#xA;    param( $String )&#xA;    switch ($String)&#xA;    {&#xA;        "jpn" {"Japanese"}&#xA;        "eng" {"English"}&#xA;        "esp" {"Spanish"}&#xA;        "fra" {"French"}&#xA;        "deu" {"German"}&#xA;        default {$String}&#xA;    }&#xA;}&#xA;&#xA;&#xA;foreach ($f in $files){ &#xA;    if ($f.Name -eq "out"){&#xA;        continue;&#xA;    }&#xA;    $p2 = Join-Path -Path $loco -ChildPath "/out/" | Join-Path -ChildPath $f&#xA;    New-Item -ItemType Directory -Force -Path $p2/audio&#xA;    New-Item -ItemType Directory -Force -Path $p2/video&#xA;    New-Item -ItemType Directory -Force -Path $p2/subtitle&#xA;    $sb = [System.Text.StringBuilder]::new();&#xA;    [void]$sb.AppendLine( &#x27;#EXTM3U&#x27; )&#xA;    [void]$sb.AppendLine( &#x27;#EXT-X-VERSION:3&#x27; )&#xA;    #[void]$sb.AppendLine( &#x27;#EXT-X-STREAM-INF:BANDWIDTH=800000,RESOLUTION=640x360&#x27; )&#xA;    #[void]$sb.AppendLine( &#x27;360p.m3u8&#x27; )&#xA;&#xA;&#xA;    New-Item -ItemType Directory -Force -Path $p2&#xA;    $resStr = ffprobe -v error -select_streams v:0 -show_entries stream=height -of csv=s=x:p=0 $f.FullName;&#xA;    $res = [convert]::ToInt32($resStr)&#xA;    $audioTracks = ffprobe $f.FullName -show_entries stream=index:stream_tags=language -select_streams a -of compact=p=0:nk=1 &#xA;    $audioTracks = $audioTracks.split("\n")&#xA;    foreach($audio in $audioTracks) {&#xA;        $ID = $audio.split("|")[0];&#xA;        $audioName = $audio.split("|")[1];&#xA;        ffmpeg -i $f.FullName -threads 0 -muxdelay 0 -y -map 0:$ID -async 1 -codec aac -f segment -segment_time 10 -segment_list_size 0 -segment_list out/$f/audio/audio_"$ID.m3u8" -segment_format mpegts out/$f/audio/"audio_$ID""_%d.ts"&#xA;        $name = lnNameTransform($audioName)&#xA;        $code = lnCodeTransform($audioName)&#xA;        [void]$sb.AppendLine( "#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID=`"aac`",LANGUAGE=`"$code`",NAME=`"$name`",DEFAULT=NO,AUTOSELECT=NO,URI=`"audio/audio_$ID.m3u8`"" )&#xA;    }&#xA;    $subTracks = ffprobe $f.FullName -show_entries stream=index:stream_tags=language -select_streams s -of compact=p=0:nk=1 &#xA;    $subTracks = $subTracks.split("")&#xA;    foreach($subtitle in $subTracks) {&#xA;        $ID = $subtitle.split("|")[0];&#xA;        $subName = $subtitle.split("|")[1];&#xA;        ffmpeg -i $f.FullName -map 0:$ID -f segment -segment_time 10 -segment_list_size 0 -segment_list out/$f/subtitle/sub_"$subName.m3u8" -segment_format webvtt -scodec webvtt out/$f/subtitle/"sub_$subName%d.vtt"&#xA;        $name = lnNameTransform($subName)&#xA;        $code = lnCodeTransform($subName)&#xA;        [void]$sb.AppendLine( "#EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID=`"subs`",LANGUAGE=`"$code`",NAME=`"$name`",FORCED=NO,AUTOSELECT=NO,URI=`"subtitle/sub_$subName.m3u8`"" )&#xA;    }&#xA;&#xA;    [void]$sb.AppendLine( &#x27;#EXT-X-STREAM-INF:BANDWIDTH=1400000,CODECS="avc1.4d4015,mp4a.40.2",RESOLUTION=842x480,AUDIO="aac",SUBTITLES="subs"&#x27; )&#xA;    [void]$sb.AppendLine( &#x27;video/480p.m3u8&#x27; )&#xA;    #ffmpeg -i $f.FullName -c:a copy -vf scale=w=640:h=360:force_original_aspect_ratio=decrease -c:a aac -ar 48000  -rc cqp -qp_p 0 -qp_i 1 -profile:v main -crf 20 -sc_threshold 0 -g 48 -keyint_min 48 -hls_time 4 -hls_playlist_type vod  -b:v 800k -maxrate 856k -bufsize 1200k -b:a 96k -hls_segment_filename out/$f/360p_%03d.ts out/$f/360p.m3u8 -vf scale=w=842:h=480:force_original_aspect_ratio=decrease -c:a aac -ar 48000 -gpu 1 -c:v h264_amf -rc cqp -qp_p 0 -qp_i 1 -profile:v main -crf 20 -sc_threshold 0 -g 48 -keyint_min 48 -hls_time 4 -hls_playlist_type vod -b:v 1400k -maxrate 1498k -bufsize 2100k -b:a 128k -hls_segment_filename out/$f/480p_%03d.ts out/$f/480p.m3u8 -vf  scale=w=1280:h=720:force_original_aspect_ratio=decrease -c:a aac -ar 48000 -gpu 1 -c:v h264_amf -rc cqp -qp_p 0 -qp_i 1 -profile:v main -crf 20 -sc_threshold 0 -g 48 -keyint_min 48 -hls_time 4 -hls_playlist_type vod -b:v 2800k -maxrate 2996k -bufsize 4200k -b:a 128k -hls_segment_filename out/$f/720p_%03d.ts out/$f/720p.m3u8 -vf  scale=w=1920:h=1080:force_original_aspect_ratio=decrease -c:a aac -ar 48000 -gpu 1 -c:v h264_amf -rc cqp -qp_p 0 -qp_i 1 -profile:v main -crf 20 -sc_threshold 0 -g 48 -keyint_min 48 -hls_time 4 -hls_playlist_type vod -b:v 5000k -maxrate 5350k -bufsize 7500k -b:a 192k -hls_segment_filename out/$f/1080p_%03d.ts out/$f/1080p.m3u8&#xA;    #ffmpeg -hwaccel auto -hwaccel_device 0 -i $f.FullName -c:v h264 -profile:v main -c:a aac -filter:v scale=360:640 -ar 48000  -rc cqp -qp_p 0 -qp_i 1 -profile:v main -crf 23 -sc_threshold 0 -g 48 -b:v 800k -maxrate 856k -bufsize 1200k -b:a 96k  -keyint_min 4 -start_number 0 -hls_time 10 -hls_playlist_type vod  -hls_list_size 0 -f hls -hls_segment_filename out/$f/360p_%03d.ts out/$f/360p.m3u8 &#xA;    #ffmpeg -hwaccel auto -hwaccel_device 0 -i $f.FullName -c:v h264 -profile:v main -c:a aac -filter:v scale=360:640 -start_number 0 -hls_time 10 -hls_list_size 0 -f hls -hls_segment_filename out/$f/360p_%03d.ts out/$f/360p.m3u8 &#xA;    ffmpeg -i $f.FullName -c:v h264 -async 1 -profile:v main -y -filter:v scale="trunc(oh*a/2)*2:480" -map 0:v -start_number 0 -hls_time 10 -hls_list_size 0 -f hls -hls_segment_filename out/$f/video/480p_%03d.ts out/$f/video/480p.m3u8&#xA;    If($res -ge 720) {&#xA;        ffmpeg -i $f.FullName -c:v h264 -profile:v main -filter:v scale="trunc(oh*a/2)*2:720" -map 0:v -start_number 0 -hls_time 10 -hls_list_size 0 -f hls -hls_segment_filename out/$f/video/720p_%03d.ts out/$f/video/720p.m3u8&#xA;        [void]$sb.AppendLine( &#x27;#EXT-X-STREAM-INF:BANDWIDTH=2800000,CODECS="avc1.4d4015,mp4a.40.2",RESOLUTION=1280x720,AUDIO="aac",SUBTITLES="subs"&#x27; )&#xA;        [void]$sb.AppendLine( &#x27;video/720p.m3u8&#x27; )&#xA;    }   &#xA;    If($res -ge 1080) {&#xA;        ffmpeg -i $f.FullName -c:v h264 -profile:v main -filter:v scale="trunc(oh*a/2)*2:1080" -map 0:v -start_number 0 -hls_time 10 -hls_list_size 0 -f hls -hls_segment_filename out/$f/video/1080p_%03d.ts out/$f/video/1080p.m3u8&#xA;        [void]$sb.AppendLine( &#x27;#EXT-X-STREAM-INF:BANDWIDTH=5000000,CODECS="avc1.4d4015,mp4a.40.2",RESOLUTION=1920x1080,AUDIO="aac",SUBTITLES="subs"&#x27; )&#xA;        [void]$sb.AppendLine( &#x27;video/1080p.m3u8&#x27; )&#xA;    }&#xA;&#xA;    $p3 = Join-Path -Path $p2 -ChildPath "/index.m3u8"&#xA;    #echo $index | Out-File -Encoding UTF8 -LiteralPath $p3&#xA;    echo $sb.ToString()&#xA;    [System.IO.File]::WriteAllLines($p3, $sb.ToString().Trim().replace("`r`n", "`n"))&#xA;}&#xA;$sw.Stop()&#xA;echo $sw.Elapsed ``` &#xA;

    &#xA;

  • Delete Certain Files in Folders using Powershell

    16 octobre 2020, par WorldTeacher

    I want to delete certain files in my Folder using Powershell.&#xA;The Script should be able to differentiate between the filenames and only delete the matching files

    &#xA;

    The Code I've got so far :

    &#xA;

    Get-ChildItem *.mkv | where BaseName -notlike &#x27;*`[HEVC]&#x27;| foreach {&#xA;ffmpeg -i $_ -c:v libx265 -c:a copy -x265-params crf=25 "$($_.BaseName) [HEVC].mkv" -n&#xA;}&#xA;

    &#xA;

    Note that this is the code to encode the files. After the video is encoded, I want to delete the original file.

    &#xA;

    I tried using Remove-Item, but I can't figure out how to configure it.&#xA;Additionally (this has nothing to do with the deletion of the files), I tried changing this part :

    &#xA;

     "where BaseName -notlike &#x27;*`[HEVC]&#x27;" to something like "where BaseName -notlike &#x27;*`[HEVC]&#x27; or [Date1]`*&#x27;"&#xA;

    &#xA;

    so that it can exclude files with [Date1] and [Time1] at the beginning of the video name, but I can't figure out how to do it, as my PowerShell knowledge is still limited.

    &#xA;

    Any Answers or tips are appreciated, I'll try to respond as soon as I can.

    &#xA;