Recherche avancée

Médias (91)

Autres articles (20)

  • Librairies et binaires spécifiques au traitement vidéo et sonore

    31 janvier 2010, par

    Les logiciels et librairies suivantes sont utilisées par SPIPmotion d’une manière ou d’une autre.
    Binaires obligatoires FFMpeg : encodeur principal, permet de transcoder presque tous les types de fichiers vidéo et sonores dans les formats lisibles sur Internet. CF ce tutoriel pour son installation ; Oggz-tools : outils d’inspection de fichiers ogg ; Mediainfo : récupération d’informations depuis la plupart des formats vidéos et sonores ;
    Binaires complémentaires et facultatifs flvtool2 : (...)

  • Librairies et logiciels spécifiques aux médias

    10 décembre 2010, par

    Pour un fonctionnement correct et optimal, plusieurs choses sont à prendre en considération.
    Il est important, après avoir installé apache2, mysql et php5, d’installer d’autres logiciels nécessaires dont les installations sont décrites dans les liens afférants. Un ensemble de librairies multimedias (x264, libtheora, libvpx) utilisées pour l’encodage et le décodage des vidéos et sons afin de supporter le plus grand nombre de fichiers possibles. Cf. : ce tutoriel ; FFMpeg avec le maximum de décodeurs et (...)

  • Amélioration de la version de base

    13 septembre 2013

    Jolie sélection multiple
    Le plugin Chosen permet d’améliorer l’ergonomie des champs de sélection multiple. Voir les deux images suivantes pour comparer.
    Il suffit pour cela d’activer le plugin Chosen (Configuration générale du site > Gestion des plugins), puis de configurer le plugin (Les squelettes > Chosen) en activant l’utilisation de Chosen dans le site public et en spécifiant les éléments de formulaires à améliorer, par exemple select[multiple] pour les listes à sélection multiple (...)

Sur d’autres sites (4497)

  • FFMPEG frame counter hangs and stop streaming

    18 janvier 2021, par user2821178

    Good morning,

    


    I use a Raspberry, linked to an IP cam, in order to send the streaming to my Facebook Page.

    


    All works good, but it happen, that for some reason facebook stops to receive the streaming, but FFMPEG continues to works.

    


    I've noticed that even if FFMPEG seems to work correctly, the frame counter stops.

    


    This is the command :

    


        RTSP_URL="rtsp://xxxxxxxxxxx/videoMain";
YOUTUBE_URL="rtmps://live-api-s.facebook.com:443/rtmp/";
YOUTUBE_KEY="zzzzzzzzzxxxxxxxxyyyyyyyyyy";
LOGO="-i yyyyyyyyyyy.png -filter_complex overlay=x=1:y=(main_h-overlay_h)";
VIDEO="-s 512:288 -c:v libx264 -x264-params nal-hrd=cbr -b:v 150k -minrate 50k -maxrate 150k -bufsize 300k";
AUDIO="-c:a aac -strict experimental";
KEYFRAME="-g 100";
OUTPUTFORMAT="-f flv";

COMMAND="sudo ffmpeg -f lavfi -i anullsrc -rtsp_transport tcp -stimeout 5000000 -i ${RTSP_URL} ${LOGO} ${VIDEO} ${AUDIO} ${KEYFRAME} ${OUTPUTFORMAT} ${YOUTUBE_URL}/${YOUTUBE_KEY}";

$COMMAND > streamOut.txt 2>&1;


    


    Here an extract of the output :

    


    ffmpeg version N-96658-g3b860bfd6f Copyright (c) 2000-2020 the FFmpeg developers
  built with gcc 6.3.0 (Raspbian 6.3.0-18+rpi1) 20170516
  configuration: --enable-gpl --enable-libx264 --enable-gpl --enable-libass --enable-libfdk-aac --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libspeex --enable-librtmp --enable-libtheora --enable-libvorbis --enable-nonfree --enable-version3 --enable-nonfree
  libavutil      56. 39.100 / 56. 39.100
  libavcodec     58. 68.100 / 58. 68.100
  libavformat    58. 38.100 / 58. 38.100
  libavdevice    58.  9.103 / 58.  9.103
  libavfilter     7. 75.100 /  7. 75.100
  libswscale      5.  6.100 /  5.  6.100
  libswresample   3.  6.100 /  3.  6.100
  libpostproc    55.  6.100 / 55.  6.100
Input #0, lavfi, from 'anullsrc':
  Duration: N/A, start: 0.000000, bitrate: 705 kb/s
    Stream #0:0: Audio: pcm_u8, 44100 Hz, stereo, u8, 705 kb/s
[h264 @ 0x3415340] Missing reference picture, default is 65542
[h264 @ 0x3415340] Missing reference picture, default is 65544
[h264 @ 0x3415340] Missing reference picture, default is 65546
[h264 @ 0x3415340] Missing reference picture, default is 65548
[h264 @ 0x3415340] Missing reference picture, default is 65550
[h264 @ 0x3415340] Missing reference picture, default is 65552
[h264 @ 0x3415340] Missing reference picture, default is 65554
[h264 @ 0x3415340] Missing reference picture, default is 65556
[h264 @ 0x3415340] Missing reference picture, default is 65558
[h264 @ 0x3415340] Missing reference picture, default is 65560
[h264 @ 0x3415340] Missing reference picture, default is 65562
[h264 @ 0x3415340] Missing reference picture, default is 65564
[h264 @ 0x3415340] Missing reference picture, default is 65566
[h264 @ 0x3415340] Missing reference picture, default is 65568
[h264 @ 0x3415340] Missing reference picture, default is 65570
[h264 @ 0x3415340] Missing reference picture, default is 65572
[h264 @ 0x3415340] Missing reference picture, default is 65574
[h264 @ 0x3415340] Missing reference picture, default is 65576
[h264 @ 0x3415340] Missing reference picture, default is 65578
[h264 @ 0x3415340] Missing reference picture, default is 65580
[h264 @ 0x3415340] Missing reference picture, default is 65582
[h264 @ 0x3415340] Missing reference picture, default is 65584
[h264 @ 0x3415340] Missing reference picture, default is 65586
[h264 @ 0x3415340] Missing reference picture, default is 65588
[h264 @ 0x3415340] Missing reference picture, default is 65590
[h264 @ 0x3415340] Missing reference picture, default is 65592
Guessed Channel Layout for Input Stream #1.1 : mono
Input #1, rtsp, from 'rtsp://xxxxxxxxxxxxxxxx/videoMain':
  Metadata:
    title           : IP Camera Video
    comment         : videoMain
  Duration: N/A, start: 0.000000, bitrate: N/A
    Stream #1:0: Video: h264 (High), yuv420p(tv, bt709, progressive), 1920x1080 [SAR 1:1 DAR 16:9], 29.75 tbr, 90k tbn, 2108081.20 tbc
    Stream #1:1: Audio: pcm_mulaw, 8000 Hz, mono, s16, 64 kb/s
Input #2, png_pipe, from 'zzzzzzzzzzz.png':
  Duration: N/A, bitrate: N/A
    Stream #2:0: Video: png, rgba(pc), 500x233 [SAR 3778:3778 DAR 500:233], 25 tbr, 25 tbn, 25 tbc
Stream mapping:
  Stream #1:0 (h264) -> overlay:main (graph 0)
  Stream #2:0 (png) -> overlay:overlay (graph 0)
  overlay (graph 0) -> Stream #0:0 (libx264)
  Stream #0:0 -> #0:1 (pcm_u8 (native) -> aac (native))
Press [q] to stop, [?] for help
[rtsp @ 0x34127d0] Thread message queue blocking; consider raising the thread_queue_size option (current value: 8)
[h264 @ 0x34e0890] Missing reference picture, default is 65542
[h264 @ 0x3467ba0] Missing reference picture, default is 65544
[h264 @ 0x342e220] Missing reference picture, default is 65546
[h264 @ 0x35727c0] Missing reference picture, default is 65548
[h264 @ 0x34ffed0] Missing reference picture, default is 65550
[h264 @ 0x34e0890] Missing reference picture, default is 65552
[h264 @ 0x3467ba0] Missing reference picture, default is 65554
[h264 @ 0x342e220] Missing reference picture, default is 65556
[h264 @ 0x35727c0] Missing reference picture, default is 65558
[h264 @ 0x34ffed0] Missing reference picture, default is 65560
[h264 @ 0x34e0890] Missing reference picture, default is 65562
[h264 @ 0x3467ba0] Missing reference picture, default is 65564
[h264 @ 0x342e220] Missing reference picture, default is 65566
[h264 @ 0x35727c0] Missing reference picture, default is 65568
[h264 @ 0x34ffed0] Missing reference picture, default is 65570
[h264 @ 0x34e0890] Missing reference picture, default is 65572
[h264 @ 0x3467ba0] Missing reference picture, default is 65574
[h264 @ 0x342e220] Missing reference picture, default is 65576
[h264 @ 0x35727c0] Missing reference picture, default is 65578
[h264 @ 0x34ffed0] Missing reference picture, default is 65580
[h264 @ 0x34e0890] Missing reference picture, default is 65582
[h264 @ 0x3467ba0] Missing reference picture, default is 65584
[h264 @ 0x342e220] Missing reference picture, default is 65586
[h264 @ 0x35727c0] Missing reference picture, default is 65588
[h264 @ 0x34ffed0] Missing reference picture, default is 65590
[h264 @ 0x34e0890] Missing reference picture, default is 65592
frame=    0 fps=0.0 q=0.0 size=       0kB time=-577014:32:22.77 bitrate=  -0.0kbits/s speed=N/A    
[libx264 @ 0x344a2b0] using SAR=1/1
[libx264 @ 0x344a2b0] using cpu capabilities: ARMv6 NEON
[libx264 @ 0x344a2b0] profile High, level 2.1, 4:2:0, 8-bit
[libx264 @ 0x344a2b0] 264 - core 159 r2991 1771b55 - H.264/MPEG-4 AVC codec - Copyleft 2003-2019 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=6 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=100 keyint_min=10 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=cbr mbtree=1 bitrate=150 ratetol=1.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 vbv_maxrate=150 vbv_bufsize=300 nal_hrd=cbr filler=1 ip_ratio=1.40 aq=1:1.00
Output #0, flv, to 'rtmps://live-api-s.facebook.com:443/rtmp//xzxzxxzxzxzxxzxzxzxzxxzxzxzxzxzx':
  Metadata:
    encoder         : Lavf58.38.100
    Stream #0:0: Video: h264 (libx264) ([7][0][0][0] / 0x0007), yuv420p, 512x288 [SAR 1:1 DAR 16:9], q=-1--1, 150 kb/s, 29.75 fps, 1k tbn, 29.75 tbc (default)
    Metadata:
      encoder         : Lavc58.68.100 libx264
    Side data:
      cpb: bitrate max/min/avg: 150000/0/150000 buffer size: 300000 vbv_delay: N/A
    Stream #0:1: Audio: aac (LC) ([10][0][0][0] / 0x000A), 44100 Hz, stereo, fltp, 128 kb/s
    Metadata:
      encoder         : Lavc58.68.100 aac
frame=   10 fps=9.0 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
frame=   22 fps= 14 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
frame=   34 fps= 16 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
frame=   45 fps= 17 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
frame=   52 fps= 16 q=29.0 size=      26kB time=00:00:01.85 bitrate= 116.1kbits/s speed=0.584x    
frame=   63 fps= 17 q=22.0 size=      29kB time=00:00:02.52 bitrate=  93.7kbits/s speed=0.68x    
......
...... 
frame=11279 fps= 14 q=20.0 size=   15356kB time=00:13:06.05 bitrate= 160.0kbits/s dup=0 drop=433 speed=0.966x    
frame=11287 fps= 14 q=20.0 size=   15362kB time=00:13:06.58 bitrate= 160.0kbits/s dup=0 drop=433 speed=0.967x    
frame=11295 fps= 14 q=23.0 size=   15373kB time=00:13:07.09 bitrate= 160.0kbits/s dup=0 drop=433 speed=0.967x    
frame=11302 fps= 14 q=24.0 size=   15380kB time=00:13:07.55 bitrate= 160.0kbits/s dup=0 drop=433 speed=0.966x    
frame=11309 fps= 14 q=23.0 size=   15386kB time=00:13:08.00 bitrate= 160.0kbits/s dup=0 drop=433 speed=0.966x    
frame=11317 fps= 14 q=22.0 size=   15402kB time=00:13:08.50 bitrate= 160.0kbits/s dup=0 drop=433 speed=0.966x    
frame=11325 fps= 14 q=23.0 size=   15408kB time=00:13:09.00 bitrate= 160.0kbits/s dup=0 drop=433 speed=0.966x    
frame=11332 fps= 14 q=23.0 size=   15416kB time=00:13:09.48 bitrate= 160.0kbits/s dup=0 drop=433 speed=0.966x    
frame=11340 fps= 14 q=21.0 size=   15454kB time=00:13:09.98 bitrate= 160.3kbits/s dup=0 drop=433 speed=0.966x    
frame=11348 fps= 14 q=21.0 size=   15459kB time=00:13:10.52 bitrate= 160.2kbits/s dup=0 drop=433 speed=0.966x    
frame=11356 fps= 14 q=22.0 size=   15466kB time=00:13:11.02 bitrate= 160.2kbits/s dup=0 drop=433 speed=0.966x    
frame=11364 fps= 14 q=21.0 size=   15472kB time=00:13:11.56 bitrate= 160.1kbits/s dup=0 drop=433 speed=0.966x    
frame=11372 fps= 14 q=21.0 size=   15477kB time=00:13:12.03 bitrate= 160.1kbits/s dup=0 drop=433 speed=0.966x    
frame=11380 fps= 14 q=21.0 size=   15488kB time=00:13:12.59 bitrate= 160.1kbits/s dup=0 drop=433 speed=0.966x    
frame=11388 fps= 14 q=21.0 size=   15493kB time=00:13:13.07 bitrate= 160.0kbits/s dup=0 drop=433 speed=0.966x    
[rtsp @ 0x34127d0] CSeq 29 expected, 0 received.
    Last message repeated 1 times
frame=11396 fps= 14 q=22.0 size=   15500kB time=00:13:13.61 bitrate= 160.0kbits/s dup=0 drop=433 speed=0.966x    
[rtsp @ 0x34127d0] CSeq 29 expected, 0 received.
    Last message repeated 3 times
frame=11404 fps= 14 q=20.0 size=   15507kB time=00:13:14.11 bitrate= 160.0kbits/s dup=0 drop=433 speed=0.966x    
[rtsp @ 0x34127d0] CSeq 29 expected, 0 received.
    Last message repeated 4 times
frame=11412 fps= 14 q=23.0 size=   15520kB time=00:13:14.65 bitrate= 160.0kbits/s dup=0 drop=433 speed=0.966x    
[rtsp @ 0x34127d0] CSeq 29 expected, 0 received.
frame=11419 fps= 14 q=20.0 size=   15527kB time=00:13:15.12 bitrate= 160.0kbits/s dup=0 drop=433 speed=0.966x    
[rtsp @ 0x34127d0] CSeq 29 expected, 0 received.
    Last message repeated 1 times
frame=11424 fps= 14 q=20.0 size=   15534kB time=00:13:15.46 bitrate= 160.0kbits/s dup=0 drop=433 speed=0.966x    
frame=11431 fps= 14 q=22.0 size=   15540kB time=00:13:15.86 bitrate= 160.0kbits/s dup=0 drop=433 speed=0.966x    
frame=11439 fps= 14 q=21.0 size=   15579kB time=00:13:16.37 bitrate= 160.3kbits/s dup=0 drop=433 speed=0.966x    
frame=11446 fps= 14 q=21.0 size=   15583kB time=00:13:16.80 bitrate= 160.2kbits/s dup=0 drop=433 speed=0.966x    
......
...... 
frame=11811 fps= 14 q=21.0 size=   16022kB time=00:13:40.33 bitrate= 160.0kbits/s dup=0 drop=433 speed=0.966x    
frame=11819 fps= 14 q=21.0 size=   16031kB time=00:13:40.84 bitrate= 160.0kbits/s dup=0 drop=433 speed=0.966x    
frame=11827 fps= 14 q=21.0 size=   16041kB time=00:13:41.37 bitrate= 160.0kbits/s dup=0 drop=433 speed=0.966x    
frame=11834 fps= 14 q=25.0 size=   16052kB time=00:13:41.84 bitrate= 160.0kbits/s dup=0 drop=433 speed=0.966x    
frame=11834 fps= 14 q=25.0 size=   16052kB time=00:13:41.84 bitrate= 160.0kbits/s dup=0 drop=433 speed=0.965x    
frame=11834 fps= 14 q=25.0 size=   16052kB time=00:13:41.84 bitrate= 160.0kbits/s dup=0 drop=433 speed=0.965x    
frame=11834 fps= 14 q=25.0 size=   16052kB time=00:13:41.84 bitrate= 160.0kbits/s dup=0 drop=433 speed=0.964x    
frame=11834 fps= 14 q=25.0 size=   16052kB time=00:13:41.84 bitrate= 160.0kbits/s dup=0 drop=433 speed=0.964x    
frame=11834 fps= 14 q=25.0 size=   16052kB time=00:13:41.84 bitrate= 160.0kbits/s dup=0 drop=433 speed=0.963x    
frame=11834 fps= 14 q=25.0 size=   16052kB time=00:13:41.84 bitrate= 160.0kbits/s dup=0 drop=433 speed=0.962x    
frame=11834 fps= 14 q=25.0 size=   16052kB time=00:13:41.84 bitrate= 160.0kbits/s dup=0 drop=433 speed=0.962x    
frame=11834 fps= 14 q=25.0 size=   16052kB time=00:13:41.84 bitrate= 160.0kbits/s dup=0 drop=433 speed=0.961x    
frame=11834 fps= 14 q=25.0 size=   16052kB time=00:13:41.84 bitrate= 160.0kbits/s dup=0 drop=433 speed=0.961x    
frame=11835 fps= 14 q=21.0 size=   16076kB time=00:13:41.91 bitrate= 160.2kbits/s dup=0 drop=433 speed=0.96x    
frame=11835 fps= 14 q=21.0 size=   16076kB time=00:13:41.91 bitrate= 160.2kbits/s dup=0 drop=433 speed=0.96x    
frame=11835 fps= 14 q=21.0 size=   16076kB time=00:13:41.91 bitrate= 160.2kbits/s dup=0 drop=433 speed=0.959x    
frame=11835 fps= 14 q=21.0 size=   16076kB time=00:13:41.91 bitrate= 160.2kbits/s dup=0 drop=433 speed=0.959x    
frame=11835 fps= 14 q=21.0 size=   16076kB time=00:13:41.91 bitrate= 160.2kbits/s dup=0 drop=433 speed=0.958x    
frame=11835 fps= 14 q=21.0 size=   16076kB time=00:13:41.91 bitrate= 160.2kbits/s dup=0 drop=433 speed=0.957x    
frame=11835 fps= 14 q=21.0 size=   16076kB time=00:13:41.91 bitrate= 160.2kbits/s dup=0 drop=433 speed=0.957x    
frame=11835 fps= 14 q=21.0 size=   16076kB time=00:13:41.91 bitrate= 160.2kbits/s dup=0 drop=433 speed=0.956x    
......
...... 
frame=11839 fps=9.0 q=22.0 size=   23189kB time=02:16:02.34 bitrate=  23.3kbits/s dup=0 drop=433 speed=6.22x    
frame=11839 fps=9.0 q=22.0 size=   23197kB time=02:16:10.66 bitrate=  23.3kbits/s dup=0 drop=433 speed=6.22x    
frame=11839 fps=9.0 q=22.0 size=   23205kB time=02:16:18.92 bitrate=  23.2kbits/s dup=0 drop=433 speed=6.23x    
frame=11839 fps=9.0 q=22.0 size=   23213kB time=02:16:27.19 bitrate=  23.2kbits/s dup=0 drop=433 speed=6.23x    
frame=11839 fps=9.0 q=22.0 size=   23221kB time=02:16:35.34 bitrate=  23.2kbits/s dup=0 drop=433 speed=6.23x    
frame=11839 fps=9.0 q=22.0 size=   23229kB time=02:16:43.67 bitrate=  23.2kbits/s dup=0 drop=433 speed=6.24x    
frame=11839 fps=9.0 q=22.0 size=   23237kB time=02:16:51.89 bitrate=  23.2kbits/s dup=0 drop=433 speed=6.24x    
frame=11839 fps=9.0 q=22.0 size=   23245kB time=02:17:00.12 bitrate=  23.2kbits/s dup=0 drop=433 speed=6.25x    
frame=11839 fps=9.0 q=22.0 size=   23253kB time=02:17:08.43 bitrate=  23.2kbits/s dup=0 drop=433 speed=6.25x    



    


    There is a way to stops FFMPEG when this happen ?

    


    Thanks !

    


  • How do you use FFMPEG to transcode h264_qsv from Apple PRORES Quicktime ?

    4 décembre 2022, par RCJetPilot

    I am trying to transcode an Apple Prores 444 to H.264 using qsv without success.

    


    If I use this command line :

    


    ffmpeg -i 10minute_Pipeline_Test.mov -c:v h264_qsv -c:a aac -pix_fmt qsv  chris.mp4

    


    I get :

    


    ffmpeg version 4.2.1 Copyright (c) 2000-2019 the FFmpeg developers
  built with gcc 9 (Ubuntu 9.3.0-17ubuntu1~20.04)
  configuration: --prefix=/root/ffmpeg_build --extra-cflags=-I/root/ffmpeg_build/include --extra-ldflags=-L/root/ffmpeg_build/lib --bindir=/root/bin --extra-libs=-ldl --enable-gpl --enable-libass --enable-libfdk-aac --enable-libmp3lame --enable-nonfree --enable-libmfx
  libavutil      56. 31.100 / 56. 31.100
  libavcodec     58. 54.100 / 58. 54.100
  libavformat    58. 29.100 / 58. 29.100
  libavdevice    58.  8.100 / 58.  8.100
  libavfilter     7. 57.100 /  7. 57.100
  libswscale      5.  5.100 /  5.  5.100
  libswresample   3.  5.100 /  3.  5.100
  libpostproc    55.  5.100 / 55.  5.100
Guessed Channel Layout for Input Stream #0.2 : mono
Guessed Channel Layout for Input Stream #0.3 : mono
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '10minute_Pipeline_Test.mov':
  Metadata:
    major_brand     : qt  
    minor_version   : 537134592
    compatible_brands: qt  
    creation_time   : 2020-12-19T12:43:38.000000Z
    com.apple.quicktime.author: 
    com.apple.quicktime.comment: 
    com.apple.quicktime.copyright: 
    com.apple.quicktime.description: 
    com.apple.quicktime.director: 
    com.apple.quicktime.genre: 
    com.apple.quicktime.information: 
    com.apple.quicktime.keywords: 
    com.apple.quicktime.producer: 
    com.apple.quicktime.displayname: 
    timecode        : 12:43:37;28
  Duration: 00:10:06.72, start: 0.000000, bitrate: 167429 kb/s
    Stream #0:0(eng): Data: none (tmcd / 0x64636D74)
    Metadata:
      creation_time   : 1970-01-04T00:49:14.000000Z
      timecode        : 12:43:37;28
    Stream #0:1(eng): Video: prores (Standard) (apcn / 0x6E637061), yuv422p10le(tv, GBR, progressive), 1280x720, 164985 kb/s, SAR 1:1 DAR 16:9, 59.94 fps, 59.94 tbr, 60k tbn, 60k tbc (default)
    Metadata:
      creation_time   : 1970-01-01T00:00:04.000000Z
    Stream #0:2(eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, mono, s32 (24 bit), 1152 kb/s (default)
    Stream #0:3(eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, mono, s32 (24 bit), 1152 kb/s (default)
    Metadata:
      creation_time   : 2003-10-05T11:26:56.000000Z
File 'chris.mp4' already exists. Overwrite ? [y/N] y
Stream mapping:
  Stream #0:1 -> #0:0 (prores (native) -> h264 (h264_qsv))
  Stream #0:2 -> #0:1 (pcm_s24le (native) -> aac (native))
Press [q] to stop, [?] for help
[h264_qsv @ 0x56265b81a800] Selected ratecontrol mode is unsupported
[h264_qsv @ 0x56265b81a800] Low power mode is unsupported
[h264_qsv @ 0x56265b81a800] Current frame rate is unsupported
[h264_qsv @ 0x56265b81a800] Current picture structure is unsupported
[h264_qsv @ 0x56265b81a800] Current resolution is unsupported
[h264_qsv @ 0x56265b81a800] Current pixel format is unsupported
[h264_qsv @ 0x56265b81a800] some encoding parameters are not supported by the QSV runtime. Please double check the input parameters.
Error initializing output stream 0:0 -- Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height
Conversion failed!
user@NUC:~$ ffmpeg -i 10minute_Pipeline_Test.mov -c:v h264_qsv -c:a aac -pix_fmt qsv  chris.mp4
ffmpeg version 4.2.1 Copyright (c) 2000-2019 the FFmpeg developers
  built with gcc 9 (Ubuntu 9.3.0-17ubuntu1~20.04)
  configuration: --prefix=/root/ffmpeg_build --extra-cflags=-I/root/ffmpeg_build/include --extra-ldflags=-L/root/ffmpeg_build/lib --bindir=/root/bin --extra-libs=-ldl --enable-gpl --enable-libass --enable-libfdk-aac --enable-libmp3lame --enable-nonfree --enable-libmfx
  libavutil      56. 31.100 / 56. 31.100
  libavcodec     58. 54.100 / 58. 54.100
  libavformat    58. 29.100 / 58. 29.100
  libavdevice    58.  8.100 / 58.  8.100
  libavfilter     7. 57.100 /  7. 57.100
  libswscale      5.  5.100 /  5.  5.100
  libswresample   3.  5.100 /  3.  5.100
  libpostproc    55.  5.100 / 55.  5.100
Guessed Channel Layout for Input Stream #0.2 : mono
Guessed Channel Layout for Input Stream #0.3 : mono
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '10minute_Pipeline_Test.mov':
  Metadata:
    major_brand     : qt  
    minor_version   : 537134592
    compatible_brands: qt  
    creation_time   : 2020-12-19T12:43:38.000000Z
    com.apple.quicktime.author: 
    com.apple.quicktime.comment: 
    com.apple.quicktime.copyright: 
    com.apple.quicktime.description: 
    com.apple.quicktime.director: 
    com.apple.quicktime.genre: 
    com.apple.quicktime.information: 
    com.apple.quicktime.keywords: 
    com.apple.quicktime.producer: 
    com.apple.quicktime.displayname: 
    timecode        : 12:43:37;28
  Duration: 00:10:06.72, start: 0.000000, bitrate: 167429 kb/s
    Stream #0:0(eng): Data: none (tmcd / 0x64636D74)
    Metadata:
      creation_time   : 1970-01-04T00:49:14.000000Z
      timecode        : 12:43:37;28
    Stream #0:1(eng): Video: prores (Standard) (apcn / 0x6E637061), yuv422p10le(tv, GBR, progressive), 1280x720, 164985 kb/s, SAR 1:1 DAR 16:9, 59.94 fps, 59.94 tbr, 60k tbn, 60k tbc (default)
    Metadata:
      creation_time   : 1970-01-01T00:00:04.000000Z
    Stream #0:2(eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, mono, s32 (24 bit), 1152 kb/s (default)
    Stream #0:3(eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, mono, s32 (24 bit), 1152 kb/s (default)
    Metadata:
      creation_time   : 2003-10-05T11:26:56.000000Z
File 'chris.mp4' already exists. Overwrite ? [y/N] y
Stream mapping:
  Stream #0:1 -> #0:0 (prores (native) -> h264 (h264_qsv))
  Stream #0:2 -> #0:1 (pcm_s24le (native) -> aac (native))
Press [q] to stop, [?] for help
Impossible to convert between the formats supported by the filter 'Parsed_null_0' and the filter 'auto_scaler_0'
Error reinitializing filters!
Failed to inject frame into filter network: Function not implemented
Error while processing the decoded data for stream #0:1
Conversion failed!


    


    If I use :

    


    ffmpeg -i 10minute_Pipeline_Test.mov -c:v h264_qsv -c:a aac  chris.mp4

    


    I get :

    


    ffmpeg version 4.2.1 Copyright (c) 2000-2019 the FFmpeg developers
  built with gcc 9 (Ubuntu 9.3.0-17ubuntu1~20.04)
  configuration: --prefix=/root/ffmpeg_build --extra-cflags=-I/root/ffmpeg_build/include --extra-ldflags=-L/root/ffmpeg_build/lib --bindir=/root/bin --extra-libs=-ldl --enable-gpl --enable-libass --enable-libfdk-aac --enable-libmp3lame --enable-nonfree --enable-libmfx
  libavutil      56. 31.100 / 56. 31.100
  libavcodec     58. 54.100 / 58. 54.100
  libavformat    58. 29.100 / 58. 29.100
  libavdevice    58.  8.100 / 58.  8.100
  libavfilter     7. 57.100 /  7. 57.100
  libswscale      5.  5.100 /  5.  5.100
  libswresample   3.  5.100 /  3.  5.100
  libpostproc    55.  5.100 / 55.  5.100
Guessed Channel Layout for Input Stream #0.2 : mono
Guessed Channel Layout for Input Stream #0.3 : mono
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '10minute_Pipeline_Test.mov':
  Metadata:
    major_brand     : qt  
    minor_version   : 537134592
    compatible_brands: qt  
    creation_time   : 2020-12-19T12:43:38.000000Z
    com.apple.quicktime.author: 
    com.apple.quicktime.comment: 
    com.apple.quicktime.copyright: 
    com.apple.quicktime.description: 
    com.apple.quicktime.director: 
    com.apple.quicktime.genre: 
    com.apple.quicktime.information: 
    com.apple.quicktime.keywords: 
    com.apple.quicktime.producer: 
    com.apple.quicktime.displayname: 
    timecode        : 12:43:37;28
  Duration: 00:10:06.72, start: 0.000000, bitrate: 167429 kb/s
    Stream #0:0(eng): Data: none (tmcd / 0x64636D74)
    Metadata:
      creation_time   : 1970-01-04T00:49:14.000000Z
      timecode        : 12:43:37;28
    Stream #0:1(eng): Video: prores (Standard) (apcn / 0x6E637061), yuv422p10le(tv, GBR, progressive), 1280x720, 164985 kb/s, SAR 1:1 DAR 16:9, 59.94 fps, 59.94 tbr, 60k tbn, 60k tbc (default)
    Metadata:
      creation_time   : 1970-01-01T00:00:04.000000Z
    Stream #0:2(eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, mono, s32 (24 bit), 1152 kb/s (default)
    Stream #0:3(eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, mono, s32 (24 bit), 1152 kb/s (default)
    Metadata:
      creation_time   : 2003-10-05T11:26:56.000000Z
File 'chris.mp4' already exists. Overwrite ? [y/N] y
Stream mapping:
  Stream #0:1 -> #0:0 (prores (native) -> h264 (h264_qsv))
  Stream #0:2 -> #0:1 (pcm_s24le (native) -> aac (native))
Press [q] to stop, [?] for help
Impossible to convert between the formats supported by the filter 'Parsed_null_0' and the filter 'auto_scaler_0'
Error reinitializing filters!
Failed to inject frame into filter network: Function not implemented
Error while processing the decoded data for stream #0:1
Conversion failed!
user@NUC:~$ ffmpeg -i 10minute_Pipeline_Test.mov -c:v h264_qsv -c:a aac  chris.mp4
ffmpeg version 4.2.1 Copyright (c) 2000-2019 the FFmpeg developers
  built with gcc 9 (Ubuntu 9.3.0-17ubuntu1~20.04)
  configuration: --prefix=/root/ffmpeg_build --extra-cflags=-I/root/ffmpeg_build/include --extra-ldflags=-L/root/ffmpeg_build/lib --bindir=/root/bin --extra-libs=-ldl --enable-gpl --enable-libass --enable-libfdk-aac --enable-libmp3lame --enable-nonfree --enable-libmfx
  libavutil      56. 31.100 / 56. 31.100
  libavcodec     58. 54.100 / 58. 54.100
  libavformat    58. 29.100 / 58. 29.100
  libavdevice    58.  8.100 / 58.  8.100
  libavfilter     7. 57.100 /  7. 57.100
  libswscale      5.  5.100 /  5.  5.100
  libswresample   3.  5.100 /  3.  5.100
  libpostproc    55.  5.100 / 55.  5.100
Guessed Channel Layout for Input Stream #0.2 : mono
Guessed Channel Layout for Input Stream #0.3 : mono
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '10minute_Pipeline_Test.mov':
  Metadata:
    major_brand     : qt  
    minor_version   : 537134592
    compatible_brands: qt  
    creation_time   : 2020-12-19T12:43:38.000000Z
    com.apple.quicktime.author: 
    com.apple.quicktime.comment: 
    com.apple.quicktime.copyright: 
    com.apple.quicktime.description: 
    com.apple.quicktime.director: 
    com.apple.quicktime.genre: 
    com.apple.quicktime.information: 
    com.apple.quicktime.keywords: 
    com.apple.quicktime.producer: 
    com.apple.quicktime.displayname: 
    timecode        : 12:43:37;28
  Duration: 00:10:06.72, start: 0.000000, bitrate: 167429 kb/s
    Stream #0:0(eng): Data: none (tmcd / 0x64636D74)
    Metadata:
      creation_time   : 1970-01-04T00:49:14.000000Z
      timecode        : 12:43:37;28
    Stream #0:1(eng): Video: prores (Standard) (apcn / 0x6E637061), yuv422p10le(tv, GBR, progressive), 1280x720, 164985 kb/s, SAR 1:1 DAR 16:9, 59.94 fps, 59.94 tbr, 60k tbn, 60k tbc (default)
    Metadata:
      creation_time   : 1970-01-01T00:00:04.000000Z
    Stream #0:2(eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, mono, s32 (24 bit), 1152 kb/s (default)
    Stream #0:3(eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, mono, s32 (24 bit), 1152 kb/s (default)
    Metadata:
      creation_time   : 2003-10-05T11:26:56.000000Z
File 'chris.mp4' already exists. Overwrite ? [y/N] y
Stream mapping:
  Stream #0:1 -> #0:0 (prores (native) -> h264 (h264_qsv))
  Stream #0:2 -> #0:1 (pcm_s24le (native) -> aac (native))
Press [q] to stop, [?] for help
[h264_qsv @ 0x55b3bb6e8800] Selected ratecontrol mode is unsupported
[h264_qsv @ 0x55b3bb6e8800] Low power mode is unsupported
[h264_qsv @ 0x55b3bb6e8800] Current frame rate is unsupported
[h264_qsv @ 0x55b3bb6e8800] Current picture structure is unsupported
[h264_qsv @ 0x55b3bb6e8800] Current resolution is unsupported
[h264_qsv @ 0x55b3bb6e8800] Current pixel format is unsupported
[h264_qsv @ 0x55b3bb6e8800] some encoding parameters are not supported by the QSV runtime. Please double check the input parameters.
Error initializing output stream 0:0 -- Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height
Conversion failed!


    


    I cannot get ANYTHING to work. I can transcode other h264 files without issue. I cannot seem to transcode this prores file.

    


    Here is a link to the source file if anyone can help I would REALLY appreciate it...

    


    https://www.dropbox.com/s/ejrfzad20yzaifm/10minute_Pipeline_Test.mov?dl=1

    


  • FFMPEG build on Windows using MSVC - make fails

    28 août 2024, par Maya Sela

    I am trying to build FFMPEG on Windows with MSVC. I am following this guide.
    
I have managed to setup the environment in order to configure successfully, but make doesn't work.
    
From VS2013 x64 Native Tools Command Prompt I run

    


    msys2_shell.cmd -use-full-path


    


    and from msys2_shell.cmd I go to the ffmpeg folder and run

    


    mingw32-make


    


    which outputs :

    


    awk: cmd. line:1:                                                                                                        ^ syntax error
awk: cmd. line:1: /including/ { sub(/^.*file: */, ""); gsub(/\/, "/"); if (!match($0, / /)) print "libavdevice/alldevices.o:", $0 }
awk: cmd. line:1:                                                                                                           ^ unterminated string
ffbuild/common.mak:67: recipe for target 'libavdevice/alldevices.o' failed
mingw32-make: *** [libavdevice/alldevices.o] Error 1


    


    Some more info :

    


    $ mingw32-make --version
GNU Make 3.82.90
Built for i686-pc-mingw32
Copyright (C) 1988-2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later /gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.


    


    FFMPEG snapshot version N-100459-ga7f9b3b
    
The Makefile :

    


    MAIN_MAKEFILE=1
include ffbuild/config.mak

vpath %.c    $(SRC_PATH)
vpath %.cpp  $(SRC_PATH)
vpath %.h    $(SRC_PATH)
vpath %.inc  $(SRC_PATH)
vpath %.m    $(SRC_PATH)
vpath %.S    $(SRC_PATH)
vpath %.asm  $(SRC_PATH)
vpath %.rc   $(SRC_PATH)
vpath %.v    $(SRC_PATH)
vpath %.texi $(SRC_PATH)
vpath %.cu   $(SRC_PATH)
vpath %.ptx  $(SRC_PATH)
vpath %/fate_config.sh.template $(SRC_PATH)

TESTTOOLS   = audiogen videogen rotozoom tiny_psnr tiny_ssim base64 audiomatch
HOSTPROGS  := $(TESTTOOLS:%=tests/%) doc/print_options

# $(FFLIBS-yes) needs to be in linking order
FFLIBS-$(CONFIG_AVDEVICE)   += avdevice
FFLIBS-$(CONFIG_AVFILTER)   += avfilter
FFLIBS-$(CONFIG_AVFORMAT)   += avformat
FFLIBS-$(CONFIG_AVCODEC)    += avcodec
FFLIBS-$(CONFIG_AVRESAMPLE) += avresample
FFLIBS-$(CONFIG_POSTPROC)   += postproc
FFLIBS-$(CONFIG_SWRESAMPLE) += swresample
FFLIBS-$(CONFIG_SWSCALE)    += swscale

FFLIBS := avutil

DATA_FILES := $(wildcard $(SRC_PATH)/presets/*.ffpreset) $(SRC_PATH)/doc/ffprobe.xsd

SKIPHEADERS = compat/w32pthreads.h

# first so "all" becomes default target
all: all-yes

include $(SRC_PATH)/tools/Makefile
include $(SRC_PATH)/ffbuild/common.mak

FF_EXTRALIBS := $(FFEXTRALIBS)
FF_DEP_LIBS  := $(DEP_LIBS)
FF_STATIC_DEP_LIBS := $(STATIC_DEP_LIBS)

$(TOOLS): %$(EXESUF): %.o
    $(LD) $(LDFLAGS) $(LDEXEFLAGS) $(LD_O) $^ $(EXTRALIBS-$(*F)) $(EXTRALIBS) $(ELIBS)

target_dec_%_fuzzer$(EXESUF): target_dec_%_fuzzer.o $(FF_DEP_LIBS)
    $(LD) $(LDFLAGS) $(LDEXEFLAGS) $(LD_O) $^ $(ELIBS) $(FF_EXTRALIBS) $(LIBFUZZER_PATH)

tools/target_bsf_%_fuzzer$(EXESUF): tools/target_bsf_%_fuzzer.o $(FF_DEP_LIBS)
    $(LD) $(LDFLAGS) $(LDEXEFLAGS) $(LD_O) $^ $(ELIBS) $(FF_EXTRALIBS) $(LIBFUZZER_PATH)

target_dem_%_fuzzer$(EXESUF): target_dem_%_fuzzer.o $(FF_DEP_LIBS)
    $(LD) $(LDFLAGS) $(LDEXEFLAGS) $(LD_O) $^ $(ELIBS) $(FF_EXTRALIBS) $(LIBFUZZER_PATH)

tools/target_dem_fuzzer$(EXESUF): tools/target_dem_fuzzer.o $(FF_DEP_LIBS)
    $(LD) $(LDFLAGS) $(LDEXEFLAGS) $(LD_O) $^ $(ELIBS) $(FF_EXTRALIBS) $(LIBFUZZER_PATH)

tools/target_io_dem_fuzzer$(EXESUF): tools/target_io_dem_fuzzer.o $(FF_DEP_LIBS)
    $(LD) $(LDFLAGS) $(LDEXEFLAGS) $(LD_O) $^ $(ELIBS) $(FF_EXTRALIBS) $(LIBFUZZER_PATH)


tools/enum_options$(EXESUF): ELIBS = $(FF_EXTRALIBS)
tools/enum_options$(EXESUF): $(FF_DEP_LIBS)
tools/sofa2wavs$(EXESUF): ELIBS = $(FF_EXTRALIBS)
tools/uncoded_frame$(EXESUF): $(FF_DEP_LIBS)
tools/uncoded_frame$(EXESUF): ELIBS = $(FF_EXTRALIBS)
tools/target_dec_%_fuzzer$(EXESUF): $(FF_DEP_LIBS)
tools/target_dem_%_fuzzer$(EXESUF): $(FF_DEP_LIBS)

CONFIGURABLE_COMPONENTS =                                           \
    $(wildcard $(FFLIBS:%=$(SRC_PATH)/lib%/all*.c))                 \
    $(SRC_PATH)/libavcodec/bitstream_filters.c                      \
    $(SRC_PATH)/libavcodec/parsers.c                                \
    $(SRC_PATH)/libavformat/protocols.c                             \

config.h: ffbuild/.config
ffbuild/.config: $(CONFIGURABLE_COMPONENTS)
    @-tput bold 2>/dev/null
    @-printf '\nWARNING: $(?) newer than config.h, rerun configure\n\n'
    @-tput sgr0 2>/dev/null

SUBDIR_VARS := CLEANFILES FFLIBS HOSTPROGS TESTPROGS TOOLS               \
               HEADERS ARCH_HEADERS BUILT_HEADERS SKIPHEADERS            \
               ARMV5TE-OBJS ARMV6-OBJS ARMV8-OBJS VFP-OBJS NEON-OBJS     \
               ALTIVEC-OBJS VSX-OBJS MMX-OBJS X86ASM-OBJS                \
               MIPSFPU-OBJS MIPSDSPR2-OBJS MIPSDSP-OBJS MSA-OBJS         \
               MMI-OBJS OBJS SLIBOBJS HOSTOBJS TESTOBJS

define RESET
$(1) :=
$(1)-yes :=
endef

define DOSUBDIR
$(foreach V,$(SUBDIR_VARS),$(eval $(call RESET,$(V))))
SUBDIR := $(1)/
include $(SRC_PATH)/$(1)/Makefile
-include $(SRC_PATH)/$(1)/$(ARCH)/Makefile
-include $(SRC_PATH)/$(1)/$(INTRINSICS)/Makefile
include $(SRC_PATH)/ffbuild/library.mak
endef

$(foreach D,$(FFLIBS),$(eval $(call DOSUBDIR,lib$(D))))

include $(SRC_PATH)/fftools/Makefile
include $(SRC_PATH)/doc/Makefile
include $(SRC_PATH)/doc/examples/Makefile

libavcodec/utils.o libavformat/utils.o libavdevice/avdevice.o libavfilter/avfilter.o libavutil/utils.o libpostproc/postprocess.o libswresample/swresample.o libswscale/utils.o : libavutil/ffversion.h

$(PROGS): %$(PROGSSUF)$(EXESUF): %$(PROGSSUF)_g$(EXESUF)
ifeq ($(STRIPTYPE),direct)
    $(STRIP) -o $@ $<
else
    $(CP) $< $@
    $(STRIP) $@
endif

%$(PROGSSUF)_g$(EXESUF): $(FF_DEP_LIBS)
    $(LD) $(LDFLAGS) $(LDEXEFLAGS) $(LD_O) $(OBJS-$*) $(FF_EXTRALIBS)

VERSION_SH  = $(SRC_PATH)/ffbuild/version.sh
GIT_LOG     = $(SRC_PATH)/.git/logs/HEAD

.version: $(wildcard $(GIT_LOG)) $(VERSION_SH) ffbuild/config.mak
.version: M=@

libavutil/ffversion.h .version:
    $(M)$(VERSION_SH) $(SRC_PATH) libavutil/ffversion.h $(EXTRA_VERSION)
    $(Q)touch .version

# force version.sh to run whenever version might have changed
-include .version

install: install-libs install-headers

install-libs: install-libs-yes

install-data: $(DATA_FILES)
    $(Q)mkdir -p "$(DATADIR)"
    $(INSTALL) -m 644 $(DATA_FILES) "$(DATADIR)"

uninstall: uninstall-data uninstall-headers uninstall-libs uninstall-pkgconfig

uninstall-data:
    $(RM) -r "$(DATADIR)"

clean::
    $(RM) $(CLEANSUFFIXES)
    $(RM) $(addprefix compat/,$(CLEANSUFFIXES)) $(addprefix compat/*/,$(CLEANSUFFIXES)) $(addprefix compat/*/*/,$(CLEANSUFFIXES))
    $(RM) -r coverage-html
    $(RM) -rf coverage.info coverage.info.in lcov

distclean:: clean
    $(RM) .version avversion.h config.asm config.h mapfile  \
        ffbuild/.config ffbuild/config.* libavutil/avconfig.h \
        version.h libavutil/ffversion.h libavcodec/codec_names.h \
        libavcodec/bsf_list.c libavformat/protocol_list.c \
        libavcodec/codec_list.c libavcodec/parser_list.c \
        libavfilter/filter_list.c libavdevice/indev_list.c libavdevice/outdev_list.c \
        libavformat/muxer_list.c libavformat/demuxer_list.c
ifeq ($(SRC_LINK),src)
    $(RM) src
endif
    $(RM) -rf doc/examples/pc-uninstalled

config:
    $(SRC_PATH)/configure $(value FFMPEG_CONFIGURATION)

build: all alltools examples testprogs
check: all alltools examples testprogs fate

include $(SRC_PATH)/tests/Makefile

$(sort $(OUTDIRS)):
    $(Q)mkdir -p $@

# Dummy rule to stop make trying to rebuild removed or renamed headers
%.h:
    @:

# Disable suffix rules.  Most of the builtin rules are suffix rules,
# so this saves some time on slow systems.
.SUFFIXES:

.PHONY: all all-yes alltools build check config testprogs
.PHONY: *clean install* uninstall*


    


    Any suggestions ?
    
Thanks !

    


    EDIT
    
Tried starting with x64 Native Tools Command Prompt for VS 2019 and got the same result.

    


    EDIT #2 (because this is too long for a comment)

    


    $ mingw32-make Q=
mkdir -p libavutil/
mkdir -p libswscale/
mkdir -p libswresample/
mkdir -p libavcodec/
mkdir -p libavformat/
mkdir -p libavfilter/
mkdir -p libavdevice/
awk: cmd. line:1: /including/ { sub(/^.*file: */, ""); gsub(/\/, "/"); if (!match($0, / /)) print "libavdevice/alldevices.o:", $0 }
awk: cmd. line:1:                                                                                                        ^ syntax error
awk: cmd. line:1: /including/ { sub(/^.*file: */, ""); gsub(/\/, "/"); if (!match($0, / /)) print "libavdevice/alldevices.o:", $0 }
awk: cmd. line:1:                                                                                                           ^ unterminated string
ffbuild/common.mak:67: recipe for target 'libavdevice/alldevices.o' failed
mingw32-make: *** [libavdevice/alldevices.o] Error 1


    


    ffbuild/common.mak is :

    


    #
# common bits used by all libraries
#

DEFAULT_X86ASMD=.dbg

ifeq ($(DBG),1)
X86ASMD=$(DEFAULT_X86ASMD)
else
X86ASMD=
endif

ifndef SUBDIR

ifndef V
Q      = @
ECHO   = printf "$(1)\t%s\n" $(2)
BRIEF  = CC CXX OBJCC HOSTCC HOSTLD AS X86ASM AR LD STRIP CP WINDRES NVCC
SILENT = DEPCC DEPHOSTCC DEPAS DEPX86ASM RANLIB RM

MSG    = $@
M      = @$(call ECHO,$(TAG),$@);
$(foreach VAR,$(BRIEF), \
    $(eval override $(VAR) = @$$(call ECHO,$(VAR),$$(MSG)); $($(VAR))))
$(foreach VAR,$(SILENT),$(eval override $(VAR) = @$($(VAR))))
$(eval INSTALL = @$(call ECHO,INSTALL,$$(^:$(SRC_DIR)/%=%)); $(INSTALL))
endif

ALLFFLIBS = avcodec avdevice avfilter avformat avresample avutil postproc swscale swresample

# NASM requires -I path terminated with /
IFLAGS     := -I. -I$(SRC_LINK)/
CPPFLAGS   := $(IFLAGS) $(CPPFLAGS)
CFLAGS     += $(ECFLAGS)
CCFLAGS     = $(CPPFLAGS) $(CFLAGS)
OBJCFLAGS  += $(EOBJCFLAGS)
OBJCCFLAGS  = $(CPPFLAGS) $(CFLAGS) $(OBJCFLAGS)
ASFLAGS    := $(CPPFLAGS) $(ASFLAGS)
CXXFLAGS   := $(CPPFLAGS) $(CFLAGS) $(CXXFLAGS)
X86ASMFLAGS += $(IFLAGS:%=%/) -I$( -Pconfig.asm

HOSTCCFLAGS = $(IFLAGS) $(HOSTCPPFLAGS) $(HOSTCFLAGS)
LDFLAGS    := $(ALLFFLIBS:%=$(LD_PATH)lib%) $(LDFLAGS)

define COMPILE
       $(call $(1)DEP,$(1))
       $($(1)) $($(1)FLAGS) $($(2)) $($(1)_DEPFLAGS) $($(1)_C) $($(1)_O) $(patsubst $(SRC_PATH)/%,$(SRC_LINK)/%,$<)
endef

COMPILE_C = $(call COMPILE,CC)
COMPILE_CXX = $(call COMPILE,CXX)
COMPILE_S = $(call COMPILE,AS)
COMPILE_M = $(call COMPILE,OBJCC)
COMPILE_X86ASM = $(call COMPILE,X86ASM)
COMPILE_HOSTC = $(call COMPILE,HOSTCC)
COMPILE_NVCC = $(call COMPILE,NVCC)
COMPILE_MMI = $(call COMPILE,CC,MMIFLAGS)
COMPILE_MSA = $(call COMPILE,CC,MSAFLAGS)

%_mmi.o: %_mmi.c
    $(COMPILE_MMI)

%_msa.o: %_msa.c
    $(COMPILE_MSA)

%.o: %.c
    $(COMPILE_C)

%.o: %.cpp
    $(COMPILE_CXX)

%.o: %.m
    $(COMPILE_M)

%.s: %.c
    $(CC) $(CCFLAGS) -S -o $@ $<

%.o: %.S
    $(COMPILE_S)

%_host.o: %.c
    $(COMPILE_HOSTC)

%$(DEFAULT_X86ASMD).asm: %.asm
    $(DEPX86ASM) $(X86ASMFLAGS) -M -o $@ $< > $(@:.asm=.d)
    $(X86ASM) $(X86ASMFLAGS) -e $< | sed '/^%/d;/^$$/d;' > $@

%.o: %.asm
    $(COMPILE_X86ASM)
    -$(if $(ASMSTRIPFLAGS), $(STRIP) $(ASMSTRIPFLAGS) $@)

%.o: %.rc
    $(WINDRES) $(IFLAGS) --preprocessor "$(DEPWINDRES) -E -xc-header -DRC_INVOKED $(CC_DEPFLAGS)" -o $@ $<

%.i: %.c
    $(CC) $(CCFLAGS) $(CC_E) $<

%.h.c:
    $(Q)echo '#include "$*.h"' >$@

%.ptx: %.cu $(SRC_PATH)/compat/cuda/cuda_runtime.h
    $(COMPILE_NVCC)

%.ptx.c: %.ptx
    $(Q)sh $(SRC_PATH)/compat/cuda/ptx2c.sh $@ $(patsubst $(SRC_PATH)/%,$(SRC_LINK)/%,$<)

%.c %.h %.pc %.ver %.version: TAG = GEN

# Dummy rule to stop make trying to rebuild removed or renamed headers
%.h:
    @:

# Disable suffix rules.  Most of the builtin rules are suffix rules,
# so this saves some time on slow systems.
.SUFFIXES:

# Do not delete intermediate files from chains of implicit rules
$(OBJS):
endif

include $(SRC_PATH)/ffbuild/arch.mak

OBJS      += $(OBJS-yes)
SLIBOBJS  += $(SLIBOBJS-yes)
FFLIBS    := $($(NAME)_FFLIBS) $(FFLIBS-yes) $(FFLIBS)
TESTPROGS += $(TESTPROGS-yes)

LDLIBS       = $(FFLIBS:%=%$(BUILDSUF))
FFEXTRALIBS := $(LDLIBS:%=$(LD_LIB)) $(foreach lib,EXTRALIBS-$(NAME) $(FFLIBS:%=EXTRALIBS-%),$($(lib))) $(EXTRALIBS)

OBJS      := $(sort $(OBJS:%=$(SUBDIR)%))
SLIBOBJS  := $(sort $(SLIBOBJS:%=$(SUBDIR)%))
TESTOBJS  := $(TESTOBJS:%=$(SUBDIR)tests/%) $(TESTPROGS:%=$(SUBDIR)tests/%.o)
TESTPROGS := $(TESTPROGS:%=$(SUBDIR)tests/%$(EXESUF))
HOSTOBJS  := $(HOSTPROGS:%=$(SUBDIR)%.o)
HOSTPROGS := $(HOSTPROGS:%=$(SUBDIR)%$(HOSTEXESUF))
TOOLS     += $(TOOLS-yes)
TOOLOBJS  := $(TOOLS:%=tools/%.o)
TOOLS     := $(TOOLS:%=tools/%$(EXESUF))
HEADERS   += $(HEADERS-yes)

PATH_LIBNAME = $(foreach NAME,$(1),lib$(NAME)/$($(2)LIBNAME))
DEP_LIBS := $(foreach lib,$(FFLIBS),$(call PATH_LIBNAME,$(lib),$(CONFIG_SHARED:yes=S)))
STATIC_DEP_LIBS := $(foreach lib,$(FFLIBS),$(call PATH_LIBNAME,$(lib)))

SRC_DIR    := $(SRC_PATH)/lib$(NAME)
ALLHEADERS := $(subst $(SRC_DIR)/,$(SUBDIR),$(wildcard $(SRC_DIR)/*.h $(SRC_DIR)/$(ARCH)/*.h))
SKIPHEADERS += $(ARCH_HEADERS:%=$(ARCH)/%) $(SKIPHEADERS-)
SKIPHEADERS := $(SKIPHEADERS:%=$(SUBDIR)%)
HOBJS        = $(filter-out $(SKIPHEADERS:.h=.h.o),$(ALLHEADERS:.h=.h.o))
PTXOBJS      = $(filter %.ptx.o,$(OBJS))
$(HOBJS):     CCFLAGS += $(CFLAGS_HEADERS)
checkheaders: $(HOBJS)
.SECONDARY:   $(HOBJS:.o=.c) $(PTXOBJS:.o=.c) $(PTXOBJS:.o=)

alltools: $(TOOLS)

$(HOSTOBJS): %.o: %.c
    $(COMPILE_HOSTC)

$(HOSTPROGS): %$(HOSTEXESUF): %.o
    $(HOSTLD) $(HOSTLDFLAGS) $(HOSTLD_O) $^ $(HOSTEXTRALIBS)

$(OBJS):     | $(sort $(dir $(OBJS)))
$(HOBJS):    | $(sort $(dir $(HOBJS)))
$(HOSTOBJS): | $(sort $(dir $(HOSTOBJS)))
$(SLIBOBJS): | $(sort $(dir $(SLIBOBJS)))
$(TESTOBJS): | $(sort $(dir $(TESTOBJS)))
$(TOOLOBJS): | tools

OUTDIRS := $(OUTDIRS) $(dir $(OBJS) $(HOBJS) $(HOSTOBJS) $(SLIBOBJS) $(TESTOBJS))

CLEANSUFFIXES     = *.d *.gcda *.gcno *.h.c *.ho *.map *.o *.pc *.ptx *.ptx.c *.ver *.version *$(DEFAULT_X86ASMD).asm *~ *.ilk *.pdb
LIBSUFFIXES       = *.a *.lib *.so *.so.* *.dylib *.dll *.def *.dll.a

define RULES
clean::
    $(RM) $(HOSTPROGS) $(TESTPROGS) $(TOOLS)
endef

$(eval $(RULES))

-include $(wildcard $(OBJS:.o=.d) $(HOSTOBJS:.o=.d) $(TESTOBJS:.o=.d) $(HOBJS:.o=.d) $(SLIBOBJS:.o=.d)) $(OBJS:.o=$(DEFAULT_X86ASMD).d)