
Recherche avancée
Médias (1)
-
Bug de détection d’ogg
22 mars 2013, par
Mis à jour : Avril 2013
Langue : français
Type : Video
Autres articles (24)
-
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 -
Supporting all media types
13 avril 2011, parUnlike most software and media-sharing platforms, MediaSPIP aims to manage as many different media types as possible. The following are just a few examples from an ever-expanding list of supported formats : images : png, gif, jpg, bmp and more audio : MP3, Ogg, Wav and more video : AVI, MP4, OGV, mpg, mov, wmv and more text, code and other data : OpenOffice, Microsoft Office (Word, PowerPoint, Excel), web (html, CSS), LaTeX, Google Earth and (...)
-
Ajouter notes et légendes aux images
7 février 2011, parPour 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 (...)
Sur d’autres sites (6914)
-
Museum of Multimedia Software, Part 1
14 août 2010, par Multimedia Mike — Software MuseumMany years ago, I found a boneyard of old software, much of it related to the creation and processing of multimedia. I was permitted to liberate anything of my choosing from this cache. This is the same pile where I found this Apple QuickTime format spec as well as this perfect form factor floppy disc box. So I have been sitting on the stuff for awhile.
I thought I might get the chance to study it a bit more closely one day. But now I’m interested in getting rid of it. Before I do, it’s more or less traditional for me to photograph it and post it on one blog or another. Also, if you know of any software collection groups who would be interested in taking this stuff off my hands, do let me know.
As usual, click a picture for a much larger image.
Paracomp FilmMaker
This is easily the most distinctive piece in this collection and it’s easy to see why— the software is packaged in a film cannister. Still sealed, and I don’t have a good reason to open it now.
"The Professional Animation/Presentation Program for the Macintosh." No copyright date on the packaging, though the front does mention a 1990 award. System requirements : Mac OS 6.0.5, 5 MB RAM, 32-bit QuickDraw, math coprocessor.
Strata VideoShop
Version 4.5 (and not for resale), still shrink-wrapped. "The Digital Video Editor for Creative Professionals."
System requirements : PowerMac with 5 MB RAM (8 MB recommended), Mac OS 7.5.
BeatWare e-Picture
"The Professional’s Choice for Designing Animated Web Graphics." Claims a best of show award for 1999 MacWorld New York Expo.
System requirements : PowerMac with Mac OS 8, 32MB RAM, 10 MB of HD space and a 256-color adapter.
BeatWare eZ-Motion
Another offering from BeatWare. "The fastest and easiest way to create animations and graphics for the Web."
This one is for either Mac or Windows. 32 MB RAM and 25 MB HD space required. Works with Mac OS 8.5, 8.6, or 9.0, or Windows 98, NT, or 2000.
Much more to come...
-
FFMPEG HLS multiple Tracks not in sync
2 juin 2020, par LordFenixNCThis 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.



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



$files = Get-ChildItem ${Get-Location}
$loco = Get-Location
$p1 = Join-Path -Path $loco -ChildPath "/out"
New-Item -ItemType Directory -Force -Path $p1



function lnCodeTransform {
 param( $String )
 echo $String
 switch ($String)
 {
 "jpn" {"jp"}
 "eng" {"en"}
 "esp" {"es"}
 "fra" {"fr"}
 "deu" {"de"}
 default {$String}
 }
}


function lnNameTransform {
 param( $String )
 switch ($String)
 {
 "jpn" {"Japanese"}
 "eng" {"English"}
 "esp" {"Spanish"}
 "fra" {"French"}
 "deu" {"German"}
 default {$String}
 }
}


foreach ($f in $files){ 
 if ($f.Name -eq "out"){
 continue;
 }
 $p2 = Join-Path -Path $loco -ChildPath "/out/" | Join-Path -ChildPath $f
 New-Item -ItemType Directory -Force -Path $p2/audio
 New-Item -ItemType Directory -Force -Path $p2/video
 New-Item -ItemType Directory -Force -Path $p2/subtitle
 $sb = [System.Text.StringBuilder]::new();
 [void]$sb.AppendLine( '#EXTM3U' )
 [void]$sb.AppendLine( '#EXT-X-VERSION:3' )
 #[void]$sb.AppendLine( '#EXT-X-STREAM-INF:BANDWIDTH=800000,RESOLUTION=640x360' )
 #[void]$sb.AppendLine( '360p.m3u8' )


 New-Item -ItemType Directory -Force -Path $p2
 $resStr = ffprobe -v error -select_streams v:0 -show_entries stream=height -of csv=s=x:p=0 $f.FullName;
 $res = [convert]::ToInt32($resStr)
 $audioTracks = ffprobe $f.FullName -show_entries stream=index:stream_tags=language -select_streams a -of compact=p=0:nk=1 
 $audioTracks = $audioTracks.split("\n")
 foreach($audio in $audioTracks) {
 $ID = $audio.split("|")[0];
 $audioName = $audio.split("|")[1];
 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"
 $name = lnNameTransform($audioName)
 $code = lnCodeTransform($audioName)
 [void]$sb.AppendLine( "#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID=`"aac`",LANGUAGE=`"$code`",NAME=`"$name`",DEFAULT=NO,AUTOSELECT=NO,URI=`"audio/audio_$ID.m3u8`"" )
 }
 $subTracks = ffprobe $f.FullName -show_entries stream=index:stream_tags=language -select_streams s -of compact=p=0:nk=1 
 $subTracks = $subTracks.split("")
 foreach($subtitle in $subTracks) {
 $ID = $subtitle.split("|")[0];
 $subName = $subtitle.split("|")[1];
 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"
 $name = lnNameTransform($subName)
 $code = lnCodeTransform($subName)
 [void]$sb.AppendLine( "#EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID=`"subs`",LANGUAGE=`"$code`",NAME=`"$name`",FORCED=NO,AUTOSELECT=NO,URI=`"subtitle/sub_$subName.m3u8`"" )
 }

 [void]$sb.AppendLine( '#EXT-X-STREAM-INF:BANDWIDTH=1400000,CODECS="avc1.4d4015,mp4a.40.2",RESOLUTION=842x480,AUDIO="aac",SUBTITLES="subs"' )
 [void]$sb.AppendLine( 'video/480p.m3u8' )
 #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
 #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 
 #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 
 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
 If($res -ge 720) {
 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
 [void]$sb.AppendLine( '#EXT-X-STREAM-INF:BANDWIDTH=2800000,CODECS="avc1.4d4015,mp4a.40.2",RESOLUTION=1280x720,AUDIO="aac",SUBTITLES="subs"' )
 [void]$sb.AppendLine( 'video/720p.m3u8' )
 } 
 If($res -ge 1080) {
 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
 [void]$sb.AppendLine( '#EXT-X-STREAM-INF:BANDWIDTH=5000000,CODECS="avc1.4d4015,mp4a.40.2",RESOLUTION=1920x1080,AUDIO="aac",SUBTITLES="subs"' )
 [void]$sb.AppendLine( 'video/1080p.m3u8' )
 }

 $p3 = Join-Path -Path $p2 -ChildPath "/index.m3u8"
 #echo $index | Out-File -Encoding UTF8 -LiteralPath $p3
 echo $sb.ToString()
 [System.IO.File]::WriteAllLines($p3, $sb.ToString().Trim().replace("`r`n", "`n"))
}
$sw.Stop()
echo $sw.Elapsed ``` 



-
FFMPEG Steam Stream stop after a few min
24 novembre 2022, par Fabian BoulegueI try set a video stream to STREAM via FFMPEG so far everything works fine but after a few min it just seem to timeout (at last the stream stops but ffmpeg still send everything)



Here is the ffmpeg string



OUTRES="1920x1080"
GOP="60"
GOPMIN="15"
THREADS="4"
CBR="2500k"
QUALITY="ultrafast"
VIDEO="rescue.mp4"
STREAM_KEY="steam_62879128_f5xxxxxxxca5b1c"
SERVER="rtmp://ingest-01-fra1.broadcast.steamcontent.com/app/"

ffmpeg -stream_loop -1 -i $VIDEO -f flv \
-vcodec libx264 -g $GOP -keyint_min $GOPMIN -b:v $CBR -minrate $CBR -maxrate $CBR -pix_fmt yuv420p \
-s $OUTRES -flvflags no_duration_filesize -preset $QUALITY -tune film -acodec aac -threads $THREADS -strict normal \
-bufsize $CBR "$SERVER$STREAM_KEY"




this is the ffmpeg output



ffmpeg version 3.4.6-0ubuntu0.18.04.1 Copyright (c) 2000-2019 the FFmpeg developers
 built with gcc 7 (Ubuntu 7.3.0-16ubuntu3)
 configuration: --prefix=/usr --extra-version=0ubuntu0.18.04.1 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --enable-gpl --disable-stripping --enable-avresample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librubberband --enable-librsvg --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libopencv --enable-libx264 --enable-shared
 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
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'rescue.mp4':
 Metadata:
 major_brand : isom
 minor_version : 512
 compatible_brands: isomiso2avc1mp41
 encoder : Lavf57.83.100
 Duration: 00:44:48.08, start: 0.000000, bitrate: 2250 kb/s
 Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709), 1920x1080 [SAR 1:1 DAR 16:9], 2114 kb/s, 30 fps, 30 tbr, 15360 tbn, 60 tbc (default)
 Metadata:
 handler_name : VideoHandler
 Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 127 kb/s (default)
 Metadata:
 handler_name : SoundHandler
Stream mapping:
 Stream #0:0 -> #0:0 (h264 (native) -> h264 (libx264))
 Stream #0:1 -> #0:1 (aac (native) -> aac (native))
Press [q] to stop, [?] for help
[libx264 @ 0x55a3ddc7e520] using SAR=1/1
[libx264 @ 0x55a3ddc7e520] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX
[libx264 @ 0x55a3ddc7e520] profile Constrained Baseline, level 4.0
[libx264 @ 0x55a3ddc7e520] 264 - core 152 r2854 e9a5903 - H.264/MPEG-4 AVC codec - Copyleft 2003-2017 - http://www.videolan.org/x264.html - options: cabac=0 ref=1 deblock=0:-1:-1 analyse=0:0 me=dia subme=0 psy=1 psy_rd=1.00:0.15 mixed_ref=0 me_range=16 chroma_me=1 trellis=0 8x8dct=0 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=0 threads=4 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=0 weightp=0 keyint=60 keyint_min=15 scenecut=0 intra_refresh=0 rc_lookahead=0 rc=cbr mbtree=0 bitrate=2500 ratetol=1.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 vbv_maxrate=2500 vbv_bufsize=2500 nal_hrd=none filler=0 ip_ratio=1.40 aq=0
Output #0, flv, to 'rtmp://ingest-01-fra1.broadcast.steamcontent.com/app/steam_62879128_f5999013aeca5b1c':
 Metadata:
 major_brand : isom
 minor_version : 512
 compatible_brands: isomiso2avc1mp41
 encoder : Lavf57.83.100
 Stream #0:0(und): Video: h264 (libx264) ([7][0][0][0] / 0x0007), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], q=-1--1, 2500 kb/s, 30 fps, 1k tbn, 30 tbc (default)
 Metadata:
 handler_name : VideoHandler
 encoder : Lavc57.107.100 libx264
 Side data:
 cpb: bitrate max/min/avg: 2500000/0/2500000 buffer size: 2500000 vbv_delay: -1
 Stream #0:1(eng): Audio: aac (LC) ([10][0][0][0] / 0x000A), 44100 Hz, stereo, fltp, 128 kb/s (default)
 Metadata:
 handler_name : SoundHandler
 encoder : Lavc57.107.100 aac
frame= 479 fps= 74 q=-1.0 Lsize= 4669kB time=00:00:16.13 bitrate=2370.2kbits/s speed=2.49x