Recherche avancée

Médias (2)

Mot : - Tags -/plugins

Autres articles (112)

  • Keeping control of your media in your hands

    13 avril 2011, par

    The vocabulary used on this site and around MediaSPIP in general, aims to avoid reference to Web 2.0 and the companies that profit from media-sharing.
    While using MediaSPIP, you are invited to avoid using words like "Brand", "Cloud" and "Market".
    MediaSPIP is designed to facilitate the sharing of creative media online, while allowing authors to retain complete control of their work.
    MediaSPIP aims to be accessible to as many people as possible and development is based on expanding the (...)

  • Les formats acceptés

    28 janvier 2010, par

    Les commandes suivantes permettent d’avoir des informations sur les formats et codecs gérés par l’installation local de ffmpeg :
    ffmpeg -codecs ffmpeg -formats
    Les format videos acceptés en entrée
    Cette liste est non exhaustive, elle met en exergue les principaux formats utilisés : h264 : H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 m4v : raw MPEG-4 video format flv : Flash Video (FLV) / Sorenson Spark / Sorenson H.263 Theora wmv :
    Les formats vidéos de sortie possibles
    Dans un premier temps on (...)

  • 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 (12490)

  • FFMPEG Steam Stream stop after a few min

    24 novembre 2022, par Fabian Boulegue

    I 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


    


  • HLS encoded video (ffmpeg) breaks in Safari when segmented via byte-range

    15 juin 2019, par eschie

    Some of my HLS encoded videos via ffmpeg drop the audio when seeking past the buffer. The only way to sync the audio and video up again is to restart the video. What would be causing this ?

    Example Profile :

    bitrate: 4800, profile: 'high', level: '4.1', resolution: 1080, framerate: '24000/1001'
    ffmpeg
       '-y'
       '-i' input_file.mov                                                
       '-v' error
       '-map' '0:0'                                                        
       '-c:v' libx264                                                  
       '-x264opts' f'
           keyint=23:                  
           min-keyint=23:          
           no-scenecut                                                    
       '
       '-vf' f'scale=-1:1080'
       '-preset' 'slow'
       '-profile:v' 'high'
       '-level' '4.1'
       '-b:v' '4800k'
       '-maxrate' '4800k'
       '-movflags' 'faststart'
       '-bufsize' '9600k'
       '-write_tmcd', '0'
       '-r' '24000/1001'                                  
       output_dir                                                      

    Segmentation CMD :

    FFMPEG
       '-i' output_dir
       '-v' 'error'
       '-acodec' 'copy'
       '-vcodec' 'copy'
       '-hls_time' '4' #seconds
       '-hls_list_size' '0'
       '-hls_flags' 'single_file'
       os.path.join(output_dir, f'{run_id}_{bitrate}.m3u8'

    Added : apple’s mediastreamvalidator outputs a few different errors :

    Error: Playlist vs segment duration mismatch
    --> Detail:  Segment duration 98.0146, Playlist duration: 4.7968
    --> Source:  1559962503399_2200k.m3u8 - 1559962503399_2200k.ts:1746520@0
    Error: Measured peak bitrate compared to master playlist declared value exceeds error tolerance
    --> Detail:  Measured: 3182.61 kb/s, Master playlist: 2173.82 kb/s, Error: 46.41%, Combined rendition name: English
    --> Source:  ...playlist.m3u8
    --> Compare: 1559962503399_2200k.m3u8
    Error: Different target durations detected
    --> Detail:  Target duration: 5 vs Target duration: 4
    --> Source:  1559962503399_64k.m3u8
    --> Compare: 1559962503399_128k.m3u8

    UPDATE 1 :
    I modified the encoding command to utilize tee pseudo-muxer, but it seems the same issue still exists when segmenting HLS as byte-ranges rather than in separate .ts files :

    $ ffmpeg
    -hide_banner
    -report
    -benchmark
    -vstats
    -i "../Jane_shallowing_Top_v08.mp4"
    -dn
    -sn
    -filter_complex "[0:v]fps=fps=24.000,setpts=(PTS-STARTPTS),split=[vsplit1][vsplit2];[vsplit1]scale=-1:144[video_144];[vsplit2]scale=-1:1080[video_1080]"
    -map "[video_144]"
    -r:v:0 "24.000"
    -c:v:0 "libx264"
    -x264-params "keyint=144:min-keyint=144:scenecut=0:open_gop=0"
    -preset:v:0 "slow"
    -profile:v:0 "baseline"
    -refs:v:0 "2"
    -b-pyramid:v:0 "strict"
    -tune:v:0 "film"
    -b:v:0 "96000"
    -maxrate:v:0 "56000"
    -bufsize:v:0 "6*56000/8"
    -vsync:v:0 "cfr"
    -bsf:v:0 "h264_metadata=fixed_frame_rate_flag=1"
    -map "[video_1080]"
    -r:v:1 "24.000"
    -c:v:1 "libx264"
    -x264-params "keyint=144:min-keyint=144:scenecut=0:open_gop=0"
    -preset:v:1 "slow"
    -profile:v:1 "high"
    -refs:v:1 "2"
    -b-pyramid:v:1 "strict"
    -tune:v:1 "film"
    -b:v:1 "4800000"
    -maxrate:v:1 "4800000"
    -bufsize:v:1 "6*4800000/8"
    -vsync:v:1 "cfr"
    -bsf:v:1 "h264_metadata=fixed_frame_rate_flag=1"
    -map a:0 -map a:0
    -c:a "libfdk_aac"
    -ar "48000"
    -ab "128k"
    -af "aresample=async=1:min_hard_comp=0.100000:first_pts=0"
    -f "hls"
    -var_stream_map "v:1,a:0 v:0,a:1"
    -hls_time "6.000"
    -hls_segment_type "mpegts"
    -hls_flags "discont_start+temp_file+single_file"
    -hls_list_size "0"
    -master_pl_name "playlist.m3u8"
    -hls_segment_filename "out_%v.ts" "out_%v.m3u8"
    Segment duration 98.0267, Playlist duration: 6.0000
  • How to detect added scenes in Director's Cut Edition of movie ?

    17 juillet 2019, par B Lolo

    I’ve got huge collection of .mkv files. In every movie folder there are two files : one original movie and one extended edition of that movie.

    Two files can be different for example one is 480p and the second 1080p.

    One can be 1 hour long, second one 40 minutes.

    In those extended edition files scenes are added randomly, so it could be 2 minutes in beginning, 5 minutes after first 10 minutes of the film and so on.

    Is there a way to use Python and ffmpeg to detect scenes from extended edition files that are absent in original movie file ?

    I can also work with only audio if that is easier to do.

    For now I got idea to use ffmpeg and scene detection, I can manually search for differences between files, but I would like some hints where to look changes.

    This is python code with ffmpy library :

    from ffmpy import FFmpeg

    plik = "C:/special.mkv"
    png = re.sub("\.mkv","_changes.png",plik)

    ff = FFmpeg(executable='C:/ffmpeg.exe', global_options ='-v error', inputs={plik : ''}, outputs={png : "-vf select='gt(scene\,0.4)',scale=320:-1,tile=10x80 -frames:v 1 -y"})
    result = ff.run(stdout=PIPE, stderr=PIPE)