
Recherche avancée
Médias (91)
-
Chuck D with Fine Arts Militia - No Meaning No
15 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
Paul Westerberg - Looking Up in Heaven
15 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
Le Tigre - Fake French
15 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
Thievery Corporation - DC 3000
15 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
Dan the Automator - Relaxation Spa Treatment
15 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
Gilberto Gil - Oslodum
15 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
Autres articles (100)
-
Multilang : améliorer l’interface pour les blocs multilingues
18 février 2011, parMultilang est un plugin supplémentaire qui n’est pas activé par défaut lors de l’initialisation de MediaSPIP.
Après son activation, une préconfiguration est mise en place automatiquement par MediaSPIP init permettant à la nouvelle fonctionnalité d’être automatiquement opérationnelle. Il n’est donc pas obligatoire de passer par une étape de configuration pour cela. -
L’agrémenter visuellement
10 avril 2011MediaSPIP est basé sur un système de thèmes et de squelettes. Les squelettes définissent le placement des informations dans la page, définissant un usage spécifique de la plateforme, et les thèmes l’habillage graphique général.
Chacun peut proposer un nouveau thème graphique ou un squelette et le mettre à disposition de la communauté. -
Possibilité de déploiement en ferme
12 avril 2011, parMediaSPIP peut être installé comme une ferme, avec un seul "noyau" hébergé sur un serveur dédié et utilisé par une multitude de sites différents.
Cela permet, par exemple : de pouvoir partager les frais de mise en œuvre entre plusieurs projets / individus ; de pouvoir déployer rapidement une multitude de sites uniques ; d’éviter d’avoir à mettre l’ensemble des créations dans un fourre-tout numérique comme c’est le cas pour les grandes plate-formes tout public disséminées sur le (...)
Sur d’autres sites (6457)
-
ALSA buffer xrun induced by low quality source in ffmpeg capture
8 janvier 2021, par Peter BecichI am attempting to transfer some old Video 8 tapes to my computer, though an EasyCap USB stick and the motherboard's sound line-in, on Ubuntu. I believe the arguments are correctly laid out below to capture from two independent streams, and encode them both into the output MP4 file.



Edit :



I can simplify the question a bit, now.



ALSA buffer overrun (or underrun ?) is induced by the unreliable/noisy audio source. For instance, if ffmpeg captures the beginning of tape playback, this causes "buffer xrun" far beyond when the tape gets up to speed and playback should be normal.



It is interesting that the bitrate shown in the ffmpeg log shoots up higher than normal when it's producing a garbage output ! (Is this bitrate a sum of of audio and video bitrates ?)



I've tried a couple of audio encoding codecs, and had the same problem.



Using
libfdk_aac
:


Metadata:
 encoder : Lavf56.15.102
 Stream #0:0: Video: h264 (libx264) ([33][0][0][0] / 0x0021), yuv422p, 640x480, q=-1--1, 29.97 fps, 11988 tbn, 29.97 tbc
 Metadata:
 encoder : Lavc56.13.100 libx264
 Stream #0:1: Audio: aac (libfdk_aac) ([64][0][0][0] / 0x0040), 48000 Hz, mono, s16, 128 kb/s
 Metadata:
 encoder : Lavc56.13.100 libfdk_aac
Stream mapping:
 Stream #0:0 -> #0:0 (rawvideo (native) -> h264 (libx264))
 Stream #1:0 -> #0:1 (pcm_s16le (native) -> aac (libfdk_aac))
[alsa @ 0x22038a0] ALSA buffer xrun. 0kB time=00:00:00.00 bitrate=N/A 
[alsa @ 0x22038a0] ALSA buffer xrun.1934kB time=00:00:02.76 bitrate=5723.5kbits/s 
[alsa @ 0x22038a0] ALSA buffer xrun.4795kB time=00:00:05.49 bitrate=7150.1kbits/s 
[alsa @ 0x22038a0] ALSA buffer xrun.7668kB time=00:00:08.21 bitrate=7646.1kbits/s 
[alsa @ 0x22038a0] ALSA buffer xrun.1475kB time=00:00:10.94 bitrate=8588.9kbits/s 
[alsa @ 0x22038a0] ALSA buffer xrun.3822kB time=00:00:13.66 bitrate=8289.0kbits/s 
[alsa @ 0x22038a0] ALSA buffer xrun.5388kB time=00:00:16.38 bitrate=7695.0kbits/s 
[alsa @ 0x22038a0] ALSA buffer xrun.6896kB time=00:00:19.10 bitrate=7244.0kbits/s 
[alsa @ 0x22038a0] ALSA buffer xrun.8980kB time=00:00:21.84 bitrate=7118.8kbits/s 
[alsa @ 0x22038a0] ALSA buffer xrun.2032kB time=00:00:24.55 bitrate=7349.3kbits/s 
[alsa @ 0x22038a0] ALSA buffer xrun.4612kB time=00:00:27.27 bitrate=7391.1kbits/s 
[alsa @ 0x22038a0] ALSA buffer xrun.6660kB time=00:00:29.98 bitrate=7284.6kbits/s 
[alsa @ 0x22038a0] ALSA buffer xrun.9123kB time=00:00:32.68 bitrate=7299.3kbits/s 
[alsa @ 0x22038a0] ALSA buffer xrun.0641kB time=00:00:35.39 bitrate=7091.7kbits/s 
[alsa @ 0x22038a0] ALSA buffer xrun.2601kB time=00:00:38.13 bitrate=7002.6kbits/s 
[alsa @ 0x22038a0] ALSA buffer xrun.5828kB time=00:00:40.87 bitrate=7181.0kbits/s 
[alsa @ 0x22038a0] ALSA buffer xrun.8481kB time=00:00:43.60 bitrate=7229.9kbits/s 
[alsa @ 0x22038a0] ALSA buffer xrun.1461kB time=00:00:46.34 bitrate=7328.0kbits/s 
[alsa @ 0x22038a0] ALSA buffer xrun.3982kB time=00:00:49.06 bitrate=7342.7kbits/s 
[alsa @ 0x22038a0] ALSA buffer xrun.6565kB time=00:00:51.77 bitrate=7367.8kbits/s 
[alsa @ 0x22038a0] ALSA buffer xrun.9718kB time=00:00:54.51 bitrate=7471.3kbits/s 
[alsa @ 0x22038a0] ALSA buffer xrun.2341kB time=00:00:57.25 bitrate=7489.2kbits/s 
^Cframe= 1760 fps= 29 q=-1.0 Lsize= 53946kB time=00:01:00.04 bitrate=7360.3kbits/s 
video:53880kB audio:53kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.022994%
[libx264 @ 0x2217ac0] frame I:8 Avg QP:24.00 size: 55686
[libx264 @ 0x2217ac0] frame P:1752 Avg QP:27.66 size: 31237
[libx264 @ 0x2217ac0] mb I I16..4: 100.0% 0.0% 0.0%
[libx264 @ 0x2217ac0] mb P I16..4: 15.0% 0.0% 0.0% P16..4: 80.2% 0.0% 0.0% 0.0% 0.0% skip: 4.8%
[libx264 @ 0x2217ac0] coded y,uvDC,uvAC intra: 45.3% 86.6% 59.4% inter: 65.7% 81.3% 11.5%
[libx264 @ 0x2217ac0] i16 v,h,dc,p: 40% 25% 26% 9%
[libx264 @ 0x2217ac0] i8c dc,h,v,p: 45% 24% 19% 12%
[libx264 @ 0x2217ac0] kb/s:7516.07
Received signal 2: terminating.




Using
libvorbis
:


Metadata:
 encoder : Lavf56.15.102
 Stream #0:0: Video: h264 (libx264) ([33][0][0][0] / 0x0021), yuv422p, 640x480, q=-1--1, 29.97 fps, 11988 tbn, 29.97 tbc
 Metadata:
 encoder : Lavc56.13.100 libx264
 Stream #0:1: Audio: vorbis (libvorbis) ([221][0][0][0] / 0x00DD), 48000 Hz, mono, fltp, 128 kb/s
 Metadata:
 encoder : Lavc56.13.100 libvorbis
Stream mapping:
 Stream #0:0 -> #0:0 (rawvideo (native) -> h264 (libx264))
 Stream #1:0 -> #0:1 (pcm_s16le (native) -> vorbis (libvorbis))
[alsa @ 0x1a948a0] ALSA buffer xrun. 0kB time=00:00:00.00 bitrate=N/A 
[alsa @ 0x1a948a0] ALSA buffer xrun. 402kB time=00:00:04.37 bitrate= 752.3kbits/s 
[alsa @ 0x1a948a0] ALSA buffer xrun.4122kB time=00:00:08.80 bitrate=3833.0kbits/s 
[alsa @ 0x1a948a0] ALSA buffer xrun.8722kB time=00:00:13.14 bitrate=5436.3kbits/s 
[alsa @ 0x1a948a0] ALSA buffer xrun.3903kB time=00:00:17.51 bitrate=6502.2kbits/s 
[alsa @ 0x1a948a0] ALSA buffer xrun.6625kB time=00:00:21.89 bitrate=6221.4kbits/s 
[alsa @ 0x1a948a0] ALSA buffer xrun.9548kB time=00:00:26.28 bitrate=6092.5kbits/s 
^Cframe= 851 fps= 26 q=-1.0 Lsize= 22018kB time=00:00:30.69 bitrate=5875.3kbits/s 
video:21996kB audio:12kB subtitle:0kB other streams:0kB global headers:4kB muxing overhead: 0.044897%
[libx264 @ 0x1aa8ac0] frame I:4 Avg QP:23.50 size: 62405
[libx264 @ 0x1aa8ac0] frame P:847 Avg QP:25.58 size: 26297
[libx264 @ 0x1aa8ac0] mb I I16..4: 100.0% 0.0% 0.0%
[libx264 @ 0x1aa8ac0] mb P I16..4: 13.2% 0.0% 0.0% P16..4: 72.0% 0.0% 0.0% 0.0% 0.0% skip:14.8%
[libx264 @ 0x1aa8ac0] coded y,uvDC,uvAC intra: 40.6% 81.0% 58.6% inter: 58.8% 72.7% 8.6%
[libx264 @ 0x1aa8ac0] i16 v,h,dc,p: 41% 28% 22% 9%
[libx264 @ 0x1aa8ac0] i8c dc,h,v,p: 54% 19% 16% 11%
[libx264 @ 0x1aa8ac0] kb/s:6345.60
Received signal 2: terminating.






ffmpeg's detection of the ALSA stream is seemingly goofed up by the inconsistencies of the tape. In the failure case, only short blips of the tapes audio exist in the output MP4. The audio bitrate of the output file is less than 10 kbps, averaged out across the whole file. The output video seems to be fine, even though the low frames-per-second in the failure case log below.



The audio and video streams can be captured fine for short amounts of time before a source error occurs ; this provides the success case log. The failure case log was created by intentionally making an error in the source streams — turning on the camera makes a brief noisy signal.



Is there a setting that needs to be forced to keep ffmpeg recording the audio stream, even when the tape is blank or noisy ?



Could it be that the libfdk_aac audio encoder is tripped up by the low quality source ?



The relevant line ;
rawvideo
stream is piped to this in script at bottom :


ffmpeg -pixel_format uyvy422 -s:v 720x480 -framerate 29.97 -f rawvideo \
-i $PIPE -f alsa -i hw:0,0 -vf scale=w=720:h=540 -vcodec libx264 \
-preset ultrafast -shortest -c:a libfdk_aac -b:a 128k -af pan=1:c0=c0 \
-ar 96000 $OUTFILE




The
ar
argument was one attempt to force recording.


ffmpeg log file for (short-lived) success ; high frames-per-second captured :



ffmpeg version 2.5.3 Copyright (c) 2000-2015 the FFmpeg developers
 built on Jan 11 2015 17:53:45 with gcc 4.8 (Ubuntu 4.8.2-19ubuntu1)
 configuration: --extra-libs=-ldl --prefix=/opt/ffmpeg --enable-avresample --disable-debug --enable-nonfree --enable-gpl --enable-version3 --enable-libpulse --enable-libopencore-amrnb --enable-libopencore-amrwb --disable-decoder=amrnb --disable-decoder=amrwb --enable-libx264 --enable-libx265 --enable-libfdk-aac --enable-libvorbis --enable-libmp3lame --enable-libopus --enable-libvpx --enable-libspeex --enable-libass --enable-avisynth --enable-libsoxr --enable-libxvid --enable-libvo-aacenc --enable-libvidstab
 libavutil 54. 15.100 / 54. 15.100
 libavcodec 56. 13.100 / 56. 13.100
 libavformat 56. 15.102 / 56. 15.102
 libavdevice 56. 3.100 / 56. 3.100
 libavfilter 5. 2.103 / 5. 2.103
 libavresample 2. 1. 0 / 2. 1. 0
 libswscale 3. 1.101 / 3. 1.101
 libswresample 1. 1.100 / 1. 1.100
 libpostproc 53. 3.100 / 53. 3.100
Input #0, rawvideo, from '/tmp/somagic-pipe':
 Duration: N/A, start: 0.000000, bitrate: 165722 kb/s
 Stream #0:0: Video: rawvideo (UYVY / 0x59565955), uyvy422, 720x480, 165722 kb/s, 29.97 tbr, 29.97 tbn, 29.97 tbc
Home directory not accessible: Permission denied
Guessed Channel Layout for Input Stream #1.0 : stereo
Input #1, alsa, from 'hw:0,0':
 Duration: N/A, start: 1423202268.577088, bitrate: 1536 kb/s
 Stream #1:0: Audio: pcm_s16le, 48000 Hz, 2 channels, s16, 1536 kb/s
No pixel format specified, yuv422p for H.264 encoding chosen.
Use -pix_fmt yuv420p for compatibility with outdated media players.
[Parsed_pan_0 @ 0x3335d60] This syntax is deprecated. Use '|' to separate the list items.
Single channel layout '1' is interpreted as a number of channels, switch to the syntax '1c' otherwise it will be interpreted as a channel layout number in a later version
[Parsed_pan_0 @ 0x3335d60] Pure channel mapping detected: 0
[libx264 @ 0x3364bc0] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.1 Cache64
[libx264 @ 0x3364bc0] profile High 4:2:2, level 3.1, 4:2:2 8-bit
[libx264 @ 0x3364bc0] 264 - core 142 r2389 956c8d8 - H.264/MPEG-4 AVC codec - Copyleft 2003-2014 - http://www.videolan.org/x264.html - options: cabac=0 ref=1 deblock=0:0:0 analyse=0:0 me=dia subme=0 psy=1 psy_rd=1.00:0.00 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=3 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=0 weightp=0 keyint=250 keyint_min=25 scenecut=0 intra_refresh=0 rc=crf mbtree=0 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=0
Output #0, mp4, to '/home/peterbecich/easycap/Videos/fpv_video_02_05_2015_21_57_48.mp4':
 Metadata:
 encoder : Lavf56.15.102
 Stream #0:0: Video: h264 (libx264) ([33][0][0][0] / 0x0021), yuv422p, 720x540, q=-1--1, 29.97 fps, 11988 tbn, 29.97 tbc
 Metadata:
 encoder : Lavc56.13.100 libx264
 Stream #0:1: Audio: aac (libfdk_aac) ([64][0][0][0] / 0x0040), 96000 Hz, mono, s16, 128 kb/s
 Metadata:
 encoder : Lavc56.13.100 libfdk_aac
Stream mapping:
 Stream #0:0 -> #0:0 (rawvideo (native) -> h264 (libx264))
 Stream #1:0 -> #0:1 (pcm_s16le (native) -> aac (libfdk_aac))
Press [q] to stop, [?] for help
frame= 13 fps=0.0 q=26.0 size= 187kB time=00:00:00.30 bitrate=5102.7kbits/s 
frame= 29 fps= 29 q=26.0 size= 469kB time=00:00:00.83 bitrate=4607.6kbits/s 
frame= 44 fps= 29 q=26.0 size= 755kB time=00:00:01.33 bitrate=4635.2kbits/s 
frame= 59 fps= 29 q=26.0 size= 1024kB time=00:00:01.83 bitrate=4572.1kbits/s 
frame= 74 fps= 29 q=26.0 size= 1279kB time=00:00:02.33 bitrate=4486.5kbits/s 
frame= 89 fps= 29 q=26.0 size= 1516kB time=00:00:02.83 bitrate=4378.0kbits/s 
frame= 104 fps= 29 q=26.0 size= 1752kB time=00:00:03.33 bitrate=4301.0kbits/s 
frame= 119 fps= 29 q=26.0 size= 1991kB time=00:00:03.83 bitrate=4251.1kbits/s 
frame= 135 fps= 30 q=26.0 size= 2245kB time=00:00:04.37 bitrate=4207.5kbits/s 
frame= 150 fps= 30 q=26.0 size= 2524kB time=00:00:04.87 bitrate=4245.0kbits/s 
frame= 165 fps= 30 q=26.0 size= 2808kB time=00:00:05.37 bitrate=4282.0kbits/s 
frame= 180 fps= 30 q=26.0 size= 3091kB time=00:00:05.87 bitrate=4311.5kbits/s 
[rawvideo @ 0x3350640] Invalid buffer size, packet size 65536 < expected frame_size 691200
Error while decoding stream #0:0: Invalid argument
frame= 183 fps= 29 q=-1.0 Lsize= 3247kB time=00:00:06.11 bitrate=4351.5kbits/s 
video:3142kB audio:96kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.254788%
[libx264 @ 0x3364bc0] frame I:1 Avg QP:20.00 size: 2289
[libx264 @ 0x3364bc0] frame P:182 Avg QP:25.99 size: 17664
[libx264 @ 0x3364bc0] mb I I16..4: 100.0% 0.0% 0.0%
[libx264 @ 0x3364bc0] mb P I16..4: 78.5% 0.0% 0.0% P16..4: 20.2% 0.0% 0.0% 0.0% 0.0% skip: 1.4%
[libx264 @ 0x3364bc0] coded y,uvDC,uvAC intra: 84.1% 71.5% 18.9% inter: 51.9% 63.5% 0.4%
[libx264 @ 0x3364bc0] i16 v,h,dc,p: 15% 8% 69% 8%
[libx264 @ 0x3364bc0] i8c dc,h,v,p: 50% 19% 24% 7%
[libx264 @ 0x3364bc0] kb/s:4215.02




ffmpeg log for failure ; low FPS captured :



ffmpeg version 2.5.3 Copyright (c) 2000-2015 the FFmpeg developers
 built on Jan 11 2015 17:53:45 with gcc 4.8 (Ubuntu 4.8.2-19ubuntu1)
 configuration: --extra-libs=-ldl --prefix=/opt/ffmpeg --enable-avresample --disable-debug --enable-nonfree --enable-gpl --enable-version3 --enable-libpulse --enable-libopencore-amrnb --enable-libopencore-amrwb --disable-decoder=amrnb --disable-decoder=amrwb --enable-libx264 --enable-libx265 --enable-libfdk-aac --enable-libvorbis --enable-libmp3lame --enable-libopus --enable-libvpx --enable-libspeex --enable-libass --enable-avisynth --enable-libsoxr --enable-libxvid --enable-libvo-aacenc --enable-libvidstab
 libavutil 54. 15.100 / 54. 15.100
 libavcodec 56. 13.100 / 56. 13.100
 libavformat 56. 15.102 / 56. 15.102
 libavdevice 56. 3.100 / 56. 3.100
 libavfilter 5. 2.103 / 5. 2.103
 libavresample 2. 1. 0 / 2. 1. 0
 libswscale 3. 1.101 / 3. 1.101
 libswresample 1. 1.100 / 1. 1.100
 libpostproc 53. 3.100 / 53. 3.100
Input #0, rawvideo, from '/tmp/somagic-pipe':
 Duration: N/A, start: 0.000000, bitrate: 165722 kb/s
 Stream #0:0: Video: rawvideo (UYVY / 0x59565955), uyvy422, 720x480, 165722 kb/s, 29.97 tbr, 29.97 tbn, 29.97 tbc
Home directory not accessible: Permission denied
Guessed Channel Layout for Input Stream #1.0 : stereo
Input #1, alsa, from 'hw:0,0':
 Duration: N/A, start: 1423201999.226455, bitrate: 1536 kb/s
 Stream #1:0: Audio: pcm_s16le, 48000 Hz, 2 channels, s16, 1536 kb/s
No pixel format specified, yuv422p for H.264 encoding chosen.
Use -pix_fmt yuv420p for compatibility with outdated media players.
[Parsed_pan_0 @ 0x21cad60] This syntax is deprecated. Use '|' to separate the list items.
Single channel layout '1' is interpreted as a number of channels, switch to the syntax '1c' otherwise it will be interpreted as a channel layout number in a later version
[Parsed_pan_0 @ 0x21cad60] Pure channel mapping detected: 0
[libx264 @ 0x21f9bc0] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.1 Cache64
[libx264 @ 0x21f9bc0] profile High 4:2:2, level 3.1, 4:2:2 8-bit
[libx264 @ 0x21f9bc0] 264 - core 142 r2389 956c8d8 - H.264/MPEG-4 AVC codec - Copyleft 2003-2014 - http://www.videolan.org/x264.html - options: cabac=0 ref=1 deblock=0:0:0 analyse=0:0 me=dia subme=0 psy=1 psy_rd=1.00:0.00 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=3 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=0 weightp=0 keyint=250 keyint_min=25 scenecut=0 intra_refresh=0 rc=crf mbtree=0 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=0
Output #0, mp4, to '/home/peterbecich/easycap/Videos/fpv_video_02_05_2015_21_53_18.mp4':
 Metadata:
 encoder : Lavf56.15.102
 Stream #0:0: Video: h264 (libx264) ([33][0][0][0] / 0x0021), yuv422p, 720x540, q=-1--1, 29.97 fps, 11988 tbn, 29.97 tbc
 Metadata:
 encoder : Lavc56.13.100 libx264
 Stream #0:1: Audio: aac (libfdk_aac) ([64][0][0][0] / 0x0040), 96000 Hz, mono, s16, 128 kb/s
 Metadata:
 encoder : Lavc56.13.100 libfdk_aac
Stream mapping:
 Stream #0:0 -> #0:0 (rawvideo (native) -> h264 (libx264))
 Stream #1:0 -> #0:1 (pcm_s16le (native) -> aac (libfdk_aac))
Press [q] to stop, [?] for help
frame= 1 fps=0.0 q=0.0 size= 0kB time=00:00:00.00 bitrate=N/A 
frame= 1 fps=1.0 q=0.0 size= 0kB time=00:00:00.00 bitrate=N/A 
frame= 1 fps=0.7 q=0.0 size= 0kB time=00:00:00.00 bitrate=N/A 
frame= 1 fps=0.5 q=0.0 size= 0kB time=00:00:00.00 bitrate=N/A 
frame= 1 fps=0.4 q=0.0 size= 0kB time=00:00:00.00 bitrate=N/A 
frame= 1 fps=0.3 q=0.0 size= 0kB time=00:00:00.00 bitrate=N/A 
frame= 1 fps=0.3 q=0.0 size= 0kB time=00:00:00.00 bitrate=N/A 
frame= 1 fps=0.2 q=0.0 size= 0kB time=00:00:00.00 bitrate=N/A 
frame= 1 fps=0.2 q=0.0 size= 0kB time=00:00:00.00 bitrate=N/A 
frame= 1 fps=0.2 q=0.0 size= 0kB time=00:00:00.00 bitrate=N/A 
frame= 1 fps=0.2 q=0.0 size= 0kB time=00:00:00.00 bitrate=N/A 
[alsa @ 0x21e5ac0] ALSA buffer xrun.
frame= 8 fps=1.3 q=19.0 size= 12kB time=00:00:06.03 bitrate= 15.9kbits/s 
frame= 23 fps=3.5 q=18.0 size= 12kB time=00:00:06.03 bitrate= 16.4kbits/s 
frame= 38 fps=5.4 q=18.0 size= 12kB time=00:00:06.03 bitrate= 16.7kbits/s 
frame= 53 fps=7.0 q=18.0 size= 12kB time=00:00:06.03 bitrate= 16.9kbits/s 
frame= 68 fps=8.4 q=26.0 size= 146kB time=00:00:06.03 bitrate= 198.8kbits/s 
frame= 83 fps=9.7 q=26.0 size= 375kB time=00:00:06.03 bitrate= 510.0kbits/s 
frame= 98 fps= 11 q=26.0 size= 608kB time=00:00:06.03 bitrate= 826.5kbits/s 
frame= 114 fps= 12 q=26.0 size= 875kB time=00:00:06.03 bitrate=1189.1kbits/s 
frame= 128 fps= 13 q=26.0 size= 1091kB time=00:00:06.03 bitrate=1481.6kbits/s 
frame= 144 fps= 14 q=26.0 size= 1339kB time=00:00:06.03 bitrate=1819.2kbits/s 
frame= 159 fps= 14 q=26.0 size= 1571kB time=00:00:06.03 bitrate=2134.6kbits/s 
frame= 174 fps= 15 q=26.0 size= 1796kB time=00:00:06.03 bitrate=2440.1kbits/s 
[alsa @ 0x21e5ac0] ALSA buffer xrun.
frame= 189 fps= 16 q=26.0 size= 2015kB time=00:00:12.04 bitrate=1370.4kbits/s 
frame= 204 fps= 16 q=26.0 size= 2238kB time=00:00:12.04 bitrate=1522.3kbits/s 
frame= 219 fps= 17 q=26.0 size= 2490kB time=00:00:12.04 bitrate=1694.2kbits/s 
frame= 235 fps= 17 q=26.0 size= 2728kB time=00:00:12.04 bitrate=1855.8kbits/s 
frame= 250 fps= 18 q=26.0 size= 2973kB time=00:00:12.04 bitrate=2022.4kbits/s 
[rawvideo @ 0x21e5640] Invalid buffer size, packet size 65536 < expected frame_size 691200
Error while decoding stream #0:0: Invalid argument
frame= 261 fps= 18 q=-1.0 Lsize= 3269kB time=00:00:12.06 bitrate=2220.1kbits/s 
video:3263kB audio:4kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.081101%
[libx264 @ 0x21f9bc0] frame I:2 Avg QP:21.50 size: 21342
[libx264 @ 0x21f9bc0] frame P:259 Avg QP:24.22 size: 12734
[libx264 @ 0x21f9bc0] mb I I16..4: 100.0% 0.0% 0.0%
[libx264 @ 0x21f9bc0] mb P I16..4: 62.8% 0.0% 0.0% P16..4: 14.2% 0.0% 0.0% 0.0% 0.0% skip:22.9%
[libx264 @ 0x21f9bc0] coded y,uvDC,uvAC intra: 77.7% 61.2% 14.1% inter: 19.7% 24.8% 1.6%
[libx264 @ 0x21f9bc0] i16 v,h,dc,p: 17% 10% 65% 8%
[libx264 @ 0x21f9bc0] i8c dc,h,v,p: 52% 18% 24% 6%
[libx264 @ 0x21f9bc0] kb/s:3068.90




The whole script :



#!/bin/sh

PIPE=/tmp/somagic-pipe
OUTFILEDIR=~/easycap/Videos/
LOGDIR=~/.somagic-log/
NOW=`date +"%m_%d_%Y_%H_%M_%S"`

OUTFILE=${OUTFILEDIR}fpv_video_${NOW}.mp4

mkdir $LOGDIR

FFMPEG_LOG=${LOGDIR}ffmpeg.log
SOMAGIC_LOG=${LOGDIR}somagic.log
MPLAYER_LOG=${LOGDIR}mplayer.log

rm $PIPE >/dev/null 2>&1
rm $OUTFILE >/dev/null 2>&1

rm $FFMPEG_LOG
rm $SOMAGIC_LOG
rm $MPLAYER_LOG

mkfifo $PIPE >/dev/null 2>&1

ffmpeg -pixel_format uyvy422 -s:v 720x480 -framerate 29.97 -f rawvideo \
-i $PIPE -f alsa -i hw:0,0 -vf scale=w=720:h=540 -vcodec libx264 \
-preset ultrafast -shortest -c:a libfdk_aac -b:a 128k -af pan=1:c0=c0 \
-ar 96000 $OUTFILE > $FFMPEG_LOG 2>&1 &

somagic-capture --ntsc -c --luminance=2 --lum-aperture=3 2> $SOMAGIC_LOG \
| tee $PIPE | \
mplayer -vf yadif,screenshot -demuxer rawvideo -rawvideo \
"ntsc:format=uyvy:fps=30000/1001" -aspect 4:3 - 2> $MPLAYER_LOG


rm $PIPE >/dev/null 2>&1 




Modified from here : https://gist.github.com/Brick85/0b327ac2d3d45e23ed33


-
configure : update copyright year
1er janvier 2021, par Lynne -
FFMPEG Conversion from GIF to video with audio, take too long
5 novembre 2020, par Mouaad Abdelghafour AITALII'm trying to convert a GIF file into 720p video and merge it with audio, the code below works fine, but it takes a long time to finish the process (depends on the audio length) :


//Converting from GIF to video is fast!

public static String makeVideo(String inputGifPath, String outputPath, int width, int height) {
 return "-y -i " + inputGifPath + " -movflags faststart -pix_fmt yuv420p -vf crop=" + width + ":" + height + ":0:40,scale=1280:720,setsar=1 " + outputPath;
 }



//Merging video with audio takes a lot of time!

public static String addAudio(String audioNoSpace, String inputVideoPath, String outputVideoPath) {
 return "-stream_loop -1 -i " + inputVideoPath + " -i " + audioNoSpace + " -shortest -map 0:v:0 -map 1:a:0 -y " + outputVideoPath;
}



FFMPEG commands :


-y -i file.gif -movflags faststart -pix_fmt yuv420p -vf crop=540:250:0:40,scale=1280:720,setsar=1 video.mp4

-stream_loop -1 -i video.mp4 -i audio.wav -shortest -map 0:v:0 -map 1:a:0 -y final_video.mp4



Part of log :


2020-11-05 19:50:33.092 5721-6212/maa.slowed_reverb W/mobile-ffmpeg: [graph 0 input from stream 0:0 @ 0x70b2dedb00] sws_param option is deprecated and ignored
2020-11-05 19:50:33.112 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: Output #0, mp4, to '/storage/emulated/0/Movies/folder/folder_1604602231893.mp4':
2020-11-05 19:50:33.113 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: Metadata:
2020-11-05 19:50:33.113 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: major_brand : 
2020-11-05 19:50:33.113 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: isom
2020-11-05 19:50:33.113 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: minor_version : 
2020-11-05 19:50:33.113 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: 512
2020-11-05 19:50:33.113 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: compatible_brands: 
2020-11-05 19:50:33.113 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: isomiso2mp41
2020-11-05 19:50:33.113 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: comment : 
2020-11-05 19:50:33.113 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: Optimized with ezgif.com
2020-11-05 19:50:33.113 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: encoder : 
2020-11-05 19:50:33.113 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: Lavf58.48.100
2020-11-05 19:50:33.113 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: Stream #0:0
2020-11-05 19:50:33.113 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: (und)
2020-11-05 19:50:33.113 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: : Video: mpeg4 (mp4v / 0x7634706D), yuv420p(progressive), 1280x720 [SAR 1:1 DAR 16:9], q=2-31, 200 kb/s
2020-11-05 19:50:33.113 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: , 
2020-11-05 19:50:33.113 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: 12.50 fps, 
2020-11-05 19:50:33.113 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: 12800 tbn, 
2020-11-05 19:50:33.113 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: 12.50 tbc
2020-11-05 19:50:33.113 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: (default)
2020-11-05 19:50:33.113 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: Metadata:
2020-11-05 19:50:33.113 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: handler_name : 
2020-11-05 19:50:33.113 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: VideoHandler
2020-11-05 19:50:33.113 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: encoder : 
2020-11-05 19:50:33.113 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: Lavc58.96.100 mpeg4
2020-11-05 19:50:33.113 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: Side data:
2020-11-05 19:50:33.113 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: 
2020-11-05 19:50:33.113 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: cpb: 
2020-11-05 19:50:33.113 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: bitrate max/min/avg: 0/0/200000 buffer size: 0 
2020-11-05 19:50:33.113 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: vbv_delay: N/A
2020-11-05 19:50:33.113 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: Stream #0:1
2020-11-05 19:50:33.113 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: : Audio: aac (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 128 kb/s
2020-11-05 19:50:33.113 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: Metadata:
2020-11-05 19:50:33.113 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: encoder : 
2020-11-05 19:50:33.113 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: Lavc58.96.100 aac
2020-11-05 19:50:33.462 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: frame= 17 fps=0.0 q=4.8 size= 0kB time=00:00:01.28 bitrate= 0.3kbits/s speed=3.27x 
2020-11-05 19:50:33.965 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: frame= 54 fps=0.0 q=28.4 size= 256kB time=00:00:04.24 bitrate= 494.7kbits/s speed=4.74x 
2020-11-05 19:50:34.468 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: frame= 85 fps= 61 q=24.8 size= 512kB time=00:00:06.72 bitrate= 624.2kbits/s speed=4.81x 
2020-11-05 19:50:34.973 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: frame= 117 fps= 61 q=31.0 size= 512kB time=00:00:09.28 bitrate= 452.0kbits/s speed=4.88x 
2020-11-05 19:50:35.478 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: frame= 150 fps= 62 q=31.0 size= 768kB time=00:00:11.92 bitrate= 527.8kbits/s speed=4.96x 
2020-11-05 19:50:35.976 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: frame= 184 fps= 63 q=31.0 size= 1024kB time=00:00:14.64 bitrate= 573.0kbits/s speed=5.04x 
2020-11-05 19:50:36.478 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: frame= 217 fps= 64 q=24.8 size= 1024kB time=00:00:17.28 bitrate= 485.5kbits/s speed=5.07x 
2020-11-05 19:50:36.994 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: frame= 249 fps= 63 q=31.0 size= 1280kB time=00:00:19.84 bitrate= 528.5kbits/s speed=5.06x 
2020-11-05 19:50:37.511 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: frame= 283 fps= 64 q=31.0 size= 1536kB time=00:00:22.56 bitrate= 557.8kbits/s speed=5.08x 
2020-11-05 19:50:38.012 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: frame= 313 fps= 63 q=24.8 size= 1536kB time=00:00:24.96 bitrate= 504.1kbits/s speed=5.05x 
2020-11-05 19:50:38.521 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: frame= 345 fps= 63 q=31.0 size= 1792kB time=00:00:27.52 bitrate= 533.4kbits/s speed=5.05x 
2020-11-05 19:50:39.026 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: frame= 377 fps= 63 q=31.0 size= 1792kB time=00:00:30.08 bitrate= 488.0kbits/s speed=5.05x 
2020-11-05 19:50:39.534 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: frame= 411 fps= 64 q=31.0 size= 2048kB time=00:00:32.80 bitrate= 511.5kbits/s speed=5.07x 
2020-11-05 19:50:40.055 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: frame= 443 fps= 63 q=31.0 size= 2304kB time=00:00:35.36 bitrate= 533.8kbits/s speed=5.06x 
2020-11-05 19:50:40.565 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: frame= 476 fps= 64 q=31.0 size= 2304kB time=00:00:38.00 bitrate= 496.7kbits/s speed=5.08x 
2020-11-05 19:50:41.056 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: frame= 506 fps= 63 q=31.0 size= 2560kB time=00:00:40.40 bitrate= 519.1kbits/s speed=5.06x 
2020-11-05 19:50:41.560 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: frame= 538 fps= 63 q=31.0 size= 2560kB time=00:00:42.96 bitrate= 488.2kbits/s speed=5.06x 
2020-11-05 19:50:42.068 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: frame= 571 fps= 63 q=31.0 size= 2816kB time=00:00:45.60 bitrate= 505.9kbits/s speed=5.07x 
2020-11-05 19:50:42.574 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: frame= 602 fps= 63 q=31.0 size= 3072kB time=00:00:48.08 bitrate= 523.4kbits/s speed=5.06x 
2020-11-05 19:50:43.087 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: frame= 636 fps= 64 q=31.0 size= 3072kB time=00:00:50.80 bitrate= 495.4kbits/s speed=5.08x 
2020-11-05 19:50:43.586 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: frame= 663 fps= 63 q=31.0 size= 3328kB time=00:00:52.96 bitrate= 514.8kbits/s speed=5.04x 
2020-11-05 19:50:44.086 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: frame= 696 fps= 63 q=31.0 size= 3328kB time=00:00:55.63 bitrate= 490.0kbits/s speed=5.05x 
2020-11-05 19:50:44.595 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: frame= 728 fps= 63 q=31.0 size= 3584kB time=00:00:58.16 bitrate= 504.8kbits/s speed=5.05x 
2020-11-05 19:50:45.101 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: frame= 761 fps= 63 q=31.0 size= 3840kB time=00:01:00.80 bitrate= 517.4kbits/s speed=5.05x 
2020-11-05 19:50:45.602 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: frame= 794 fps= 63 q=31.0 size= 3840kB time=00:01:03.44 bitrate= 495.9kbits/s speed=5.06x 
2020-11-05 19:50:46.103 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: frame= 827 fps= 63 q=31.0 size= 4096kB time=00:01:06.08 bitrate= 507.8kbits/s speed=5.07x 
2020-11-05 19:50:46.604 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: frame= 859 fps= 63 q=31.0 size= 4096kB time=00:01:08.64 bitrate= 488.9kbits/s speed=5.07x 
2020-11-05 19:50:47.116 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: frame= 890 fps= 63 q=31.0 size= 4352kB time=00:01:11.12 bitrate= 501.3kbits/s speed=5.06x 
2020-11-05 19:50:47.619 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: frame= 924 fps= 64 q=31.0 size= 4608kB time=00:01:13.84 bitrate= 511.2kbits/s speed=5.08x 
2020-11-05 19:50:48.120 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: frame= 954 fps= 63 q=31.0 size= 4608kB time=00:01:16.24 bitrate= 495.1kbits/s speed=5.07x 
2020-11-05 19:50:48.631 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: frame= 986 fps= 63 q=31.0 size= 4864kB time=00:01:18.80 bitrate= 505.7kbits/s speed=5.06x 
2020-11-05 19:50:49.143 5721-6212/maa.slowed_reverb I/mobile-ffmpeg: frame= 1017 fps= 63 q=31.0 size= 4864kB time=00:01:21.28 bitrate= 490.2kbits/s speed=5.06x