
Recherche avancée
Médias (1)
-
Carte de Schillerkiez
13 mai 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Texte
Autres articles (111)
-
Script d’installation automatique de MediaSPIP
25 avril 2011, parAfin de palier aux difficultés d’installation dues principalement aux dépendances logicielles coté serveur, un script d’installation "tout en un" en bash a été créé afin de faciliter cette étape sur un serveur doté d’une distribution Linux compatible.
Vous devez bénéficier d’un accès SSH à votre serveur et d’un compte "root" afin de l’utiliser, ce qui permettra d’installer les dépendances. Contactez votre hébergeur si vous ne disposez pas de cela.
La documentation de l’utilisation du script d’installation (...) -
Que fait exactement ce script ?
18 janvier 2011, parCe script est écrit en bash. Il est donc facilement utilisable sur n’importe quel serveur.
Il n’est compatible qu’avec une liste de distributions précises (voir Liste des distributions compatibles).
Installation de dépendances de MediaSPIP
Son rôle principal est d’installer l’ensemble des dépendances logicielles nécessaires coté serveur à savoir :
Les outils de base pour pouvoir installer le reste des dépendances Les outils de développements : build-essential (via APT depuis les dépôts officiels) ; (...) -
Automated installation script of MediaSPIP
25 avril 2011, parTo overcome the difficulties mainly due to the installation of server side software dependencies, an "all-in-one" installation script written in bash was created to facilitate this step on a server with a compatible Linux distribution.
You must have access to your server via SSH and a root account to use it, which will install the dependencies. Contact your provider if you do not have that.
The documentation of the use of this installation script is available here.
The code of this (...)
Sur d’autres sites (8322)
-
Why can't I duplicate an MJPEG stream from a webcam to a V4L2 Loopback Device on Linux ?
17 août 2021, par Chris WhiteI'm trying to duplicate a USB webcam device V4L2 stream (/dev/video0) to a V4L2 Loopback Device (/dev/video99) at the highest resolution and framerate possible with the hardware available on a Raspberry Pi 4 running the latest Raspbian (also the minimum CPU load). I'm using FFMPEG version 7:4.1.6-1 deb10u1+rpt2 and v4l2loopback version 0.12.5.1.


The output from :

ffmpeg -f v4l2 -list_formats all -i /dev/video0
gives me the following :

[video4linux2,v4l2 @ 0xc1e1c0] Compressed: mjpeg : Motion-JPEG : 1600x1200 3264x2448 2592x1944 2048x1536 1280x960 1024x768 800x600 640x480 320x240 1600x1200
[video4linux2,v4l2 @ 0xc1e1c0] Raw : yuyv422 : YUYV 4:2:2 : 1600x1200 3264x2448 2592x1944 2048x1536 1280x960 1024x768 800x600 640x480 320x240 1600x1200



3264x2448px is the native CCD resolution, and the image is being used for machine vision purposes, so I'd like to use this maximum resolution at the highest framerate I can. The reason for the loopback device is so that I can view/stream the videofeed (with GStreamer) and take high resolution PNG snapshots simultaneously, using the command
ffmpeg -f v4l2 -video_size 3264x2448 -i /dev/video99 -frames 1 capture.png -y
From my understanding this means there is an MJPEG stream at this resolution and according to the commandv4l2-ctl -d /dev/video0 --list-formats-ext
I can manage 15fps :

ioctl: VIDIOC_ENUM_FMT
 Type: Video Capture

 [0]: 'MJPG' (Motion-JPEG, compressed)
 Size: Discrete 1600x1200
 Interval: Discrete 0.067s (15.000 fps)
 Interval: Discrete 0.067s (15.000 fps)
 Size: Discrete 3264x2448
 Interval: Discrete 0.067s (15.000 fps)
 Size: Discrete 2592x1944
 Interval: Discrete 0.067s (15.000 fps)
 Size: Discrete 2048x1536
 Interval: Discrete 0.067s (15.000 fps)
 Size: Discrete 1280x960
 Interval: Discrete 0.067s (15.000 fps)
 Size: Discrete 1024x768
 Interval: Discrete 0.033s (30.000 fps)
 Size: Discrete 800x600
 Interval: Discrete 0.033s (30.000 fps)
 Size: Discrete 640x480
 Interval: Discrete 0.033s (30.000 fps)
 Size: Discrete 320x240
 Interval: Discrete 0.033s (30.000 fps)
 Size: Discrete 1600x1200
 Interval: Discrete 0.067s (15.000 fps)
 Interval: Discrete 0.067s (15.000 fps)
 [1]: 'YUYV' (YUYV 4:2:2)
 Size: Discrete 1600x1200
 Interval: Discrete 0.100s (10.000 fps)
 Interval: Discrete 0.100s (10.000 fps)
 Size: Discrete 3264x2448
 Interval: Discrete 0.500s (2.000 fps)
 Size: Discrete 2592x1944
 Interval: Discrete 0.333s (3.000 fps)
 Size: Discrete 2048x1536
 Interval: Discrete 0.333s (3.000 fps)
 Size: Discrete 1280x960
 Interval: Discrete 0.100s (10.000 fps)
 Size: Discrete 1024x768
 Interval: Discrete 0.100s (10.000 fps)
 Size: Discrete 800x600
 Interval: Discrete 0.033s (30.000 fps)
 Size: Discrete 640x480
 Interval: Discrete 0.033s (30.000 fps)
 Size: Discrete 320x240
 Interval: Discrete 0.033s (30.000 fps)
 Size: Discrete 1600x1200
 Interval: Discrete 0.100s (10.000 fps)
 Interval: Discrete 0.100s (10.000 fps)



I feel like I've tried every possible version of GStreamer/FFMPEG command to achieve this and have had varying success, but more often than not I come up against "av_interleaved_write_frame() : Cannot allocate memory" or some issue with converting M-JPEG to rawvideo for the loopback device...


What command should I be using ? I'm at the end of my tether !


I've tried :


gst-launch-1.0 v4l2src device=/dev/video0 ! "image/jpeg,width=3264,height=2448,framerate=15/1" ! avdec_mjpeg ! "video/x-raw,format=YUY2,width=3264,height=2448,framerate=15/1" ! v4l2sink device=/dev/video99



and


ffmpeg -f v4l2 -video_size 3264x2448 -i /dev/video0 -vcodec rawvideo -pix_fmt yuyv422 -r 1 -f v4l2 /dev/video99



(EDIT) gives :


ffmpeg version 4.1.6-1~deb10u1+rpt2 Copyright (c) 2000-2020 the FFmpeg developers
 built with gcc 8 (Raspbian 8.3.0-6+rpi1)
 configuration: --prefix=/usr --extra-version='1~deb10u1+rpt2' --toolchain=hardened --incdir=/usr/include/arm-linux-gnueabihf --enable-gpl --disable-stripping --enable-avresample --disable-filter=resample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librsvg --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-omx-rpi --enable-mmal --enable-neon --enable-rpi --enable-vout-drm --enable-v4l2-request --enable-libudev --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libx264 --enable-shared --libdir=/usr/lib/arm-linux-gnueabihf --cpu=arm1176jzf-s --arch=arm
 libavutil 56. 22.100 / 56. 22.100
 libavcodec 58. 35.100 / 58. 35.100
 libavformat 58. 20.100 / 58. 20.100
 libavdevice 58. 5.100 / 58. 5.100
 libavfilter 7. 40.101 / 7. 40.101
 libavresample 4. 0. 0 / 4. 0. 0
 libswscale 5. 3.100 / 5. 3.100
 libswresample 3. 3.100 / 3. 3.100
 libpostproc 55. 3.100 / 55. 3.100
Input #0, video4linux2,v4l2, from '/dev/video0':
 Duration: N/A, start: 14226.770484, bitrate: 255688 kb/s
 Stream #0:0: Video: rawvideo (YUY2 / 0x32595559), yuyv422, 3264x2448, 255688 kb/s, 2 fps, 2 tbr, 1000k tbn, 1000k tbc
Stream mapping:
 Stream #0:0 -> #0:0 (rawvideo (native) -> rawvideo (native))
Press [q] to stop, [?] for help
Output #0, video4linux2,v4l2, to '/dev/video99':
 Metadata:
 encoder : Lavf58.20.100
 Stream #0:0: Video: rawvideo (YUY2 / 0x32595559), yuyv422, 3264x2448, q=2-31, 127844 kb/s, 1 fps, 1 tbn, 1 tbc
 Metadata:
 encoder : Lavc58.35.100 rawvideo
av_interleaved_write_frame(): Cannot allocate memory
frame= 1 fps=0.0 q=-0.0 Lsize=N/A time=00:00:01.00 bitrate=N/A speed=15.8x 
video:15606kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
Conversion failed!



and


ffmpeg -f v4l2 -video_size 3264x2448 -i /dev/video0 -vcodec rawvideo -pix_fmt yuv420p -r 15 -f v4l2 /dev/video99



(EDIT) gives :


ffmpeg version 4.1.6-1~deb10u1+rpt2 Copyright (c) 2000-2020 the FFmpeg developers
 built with gcc 8 (Raspbian 8.3.0-6+rpi1)
 configuration: --prefix=/usr --extra-version='1~deb10u1+rpt2' --toolchain=hardened --incdir=/usr/include/arm-linux-gnueabihf --enable-gpl --disable-stripping --enable-avresample --disable-filter=resample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librsvg --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-omx-rpi --enable-mmal --enable-neon --enable-rpi --enable-vout-drm --enable-v4l2-request --enable-libudev --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libx264 --enable-shared --libdir=/usr/lib/arm-linux-gnueabihf --cpu=arm1176jzf-s --arch=arm
 libavutil 56. 22.100 / 56. 22.100
 libavcodec 58. 35.100 / 58. 35.100
 libavformat 58. 20.100 / 58. 20.100
 libavdevice 58. 5.100 / 58. 5.100
 libavfilter 7. 40.101 / 7. 40.101
 libavresample 4. 0. 0 / 4. 0. 0
 libswscale 5. 3.100 / 5. 3.100
 libswresample 3. 3.100 / 3. 3.100
 libpostproc 55. 3.100 / 55. 3.100
Input #0, video4linux2,v4l2, from '/dev/video0':
 Duration: N/A, start: 13704.103283, bitrate: 255688 kb/s
 Stream #0:0: Video: rawvideo (YUY2 / 0x32595559), yuyv422, 3264x2448, 255688 kb/s, 2 fps, 2 tbr, 1000k tbn, 1000k tbc
Stream mapping:
 Stream #0:0 -> #0:0 (rawvideo (native) -> rawvideo (native))
Press [q] to stop, [?] for help
Output #0, video4linux2,v4l2, to '/dev/video99':
 Metadata:
 encoder : Lavf58.20.100
 Stream #0:0: Video: rawvideo (I420 / 0x30323449), yuv420p, 3264x2448, q=2-31, 1438248 kb/s, 15 fps, 15 tbn, 15 tbc
 Metadata:
 encoder : Lavc58.35.100 rawvideo
av_interleaved_write_frame(): Cannot allocate memory
 Last message repeated 7 times
frame= 8 fps=0.0 q=-0.0 Lsize=N/A time=00:00:00.53 bitrate=N/A dup=7 drop=0 speed=1.37x 
video:93636kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
Conversion failed!



and


ffmpeg -f v4l2 -input_format mjpeg -i /dev/video0 -vcodec copy -f v4l2 /dev/video99



(EDIT) gives :


ffmpeg version 4.1.6-1~deb10u1+rpt2 Copyright (c) 2000-2020 the FFmpeg developers
 built with gcc 8 (Raspbian 8.3.0-6+rpi1)
 configuration: --prefix=/usr --extra-version='1~deb10u1+rpt2' --toolchain=hardened --incdir=/usr/include/arm-linux-gnueabihf --enable-gpl --disable-stripping --enable-avresample --disable-filter=resample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librsvg --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-omx-rpi --enable-mmal --enable-neon --enable-rpi --enable-vout-drm --enable-v4l2-request --enable-libudev --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libx264 --enable-shared --libdir=/usr/lib/arm-linux-gnueabihf --cpu=arm1176jzf-s --arch=arm
 libavutil 56. 22.100 / 56. 22.100
 libavcodec 58. 35.100 / 58. 35.100
 libavformat 58. 20.100 / 58. 20.100
 libavdevice 58. 5.100 / 58. 5.100
 libavfilter 7. 40.101 / 7. 40.101
 libavresample 4. 0. 0 / 4. 0. 0
 libswscale 5. 3.100 / 5. 3.100
 libswresample 3. 3.100 / 3. 3.100
 libpostproc 55. 3.100 / 55. 3.100
[mjpeg @ 0xdb5240] EOI missing, emulating
Input #0, video4linux2,v4l2, from '/dev/video0':
 Duration: N/A, start: 12511.425271, bitrate: N/A
 Stream #0:0: Video: mjpeg, yuvj422p(pc, bt470bg/unknown/unknown), 3264x2448, 15 fps, 15 tbr, 1000k tbn, 1000k tbc
[video4linux2,v4l2 @ 0xdb7f10] V4L2 output device supports only a single raw video stream
Could not write header for output file #0 (incorrect codec parameters ?): Invalid argument
Stream mapping:
 Stream #0:0 -> #0:0 (copy)
 Last message repeated 1 times



I'm not sure what to troubleshoot next - looking at available memory, there's no problem, so what am I doing wrong ? This copy of the feed is the last piece of the puzzle...


-
Extracting mp3 from mp4 via FFMPEG doesn't apply audio bitrate
17 juillet 2021, par Mohammad ZamanianI want to extract a simplified mono low bitrate low frequency and basically low sized audio from any mp4 file. I use the following FFMPEG command but the resulting audio somehow has 2 channels and its bitrate is the same as the original audio from mp4.


ffmpeg.exe -report -y -i "{mp4}" -vn -acodec libmp3lame -ac 1 -ab 64k -ar 24000 -f mp3 output "{mp3}"



Here is my report :


ffmpeg started on 2021-07-17 at 18:30:20
Report written to "ffmpeg-20210717-183020.log"
Log level: 48
Command line:
"C:\\ffmpeg\\bin\\ffmpeg.exe" -report -y -i "C:/Users/ScottRobertson/Desktop/VirtualExhibition/Final Booth Data/1-Abidi (gold)/Video/Video1.mp4" -vn -acodec libmp3lame -ac 1 -ab 64k -f mp3 output "C:/Users/ScottRobertson/Desktop/VirtualExhibition/Final Booth Data/1-Abidi (gold)/Video/Audio.mp3"
ffmpeg version 4.3.1-2021-01-01-full_build-www.gyan.dev Copyright (c) 2000-2021 the FFmpeg developers
 built with gcc 10.2.0 (Rev5, Built by MSYS2 project)
 configuration: --enable-gpl --enable-version3 --enable-static --disable-w32threads --disable-autodetect --enable-fontconfig --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-lzma --enable-libsnappy --enable-zlib --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-libbluray --enable-libcaca --enable-sdl2 --enable-libdav1d --enable-libzvbi --enable-librav1e --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxvid --enable-libaom --enable-libopenjpeg --enable-libvpx --enable-libass --enable-frei0r --enable-libfreetype --enable-libfribidi --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-ffnvcodec --enable-nvdec --enable-nvenc --enable-d3d11va --enable-dxva2 --enable-libmfx --enable-libcdio --enable-libgme --enable-libmodplug --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libshine --enable-libtheora --enable-libtwolame --enable-libvo-amrwbenc --enable-libilbc --enable-l libavutil 56. 51.100 / 56. 51.100
 libavcodec 58. 91.100 / 58. 91.100
 libavformat 58. 45.100 / 58. 45.100
 libavdevice 58. 10.100 / 58. 10.100
 libavfilter 7. 85.100 / 7. 85.100
 libswscale 5. 7.100 / 5. 7.100
 libswresample 3. 7.100 / 3. 7.100
 libpostproc 55. 7.100 / 55. 7.100
Splitting the commandline.
Reading option '-report' ... matched as option 'report' (generate a report) with argument '1'.
Reading option '-y' ... matched as option 'y' (overwrite output files) with argument '1'.
Reading option '-i' ... matched as input url with argument 'C:/Users/ScottRobertson/Desktop/VirtualExhibition/Final Booth Data/1-Abidi (gold)/Video/Video1.mp4'.
Reading option '-vn' ... matched as option 'vn' (disable video) with argument '1'.
Reading option '-acodec' ... matched as option 'acodec' (force audio codec ('copy' to copy stream)) with argument 'libmp3lame'.
Reading option '-ac' ... matched as option 'ac' (set number of audio channels) with argument '1'.
Reading option '-ab' ... matched as option 'ab' (audio bitrate (please use -b:a)) with argument '64k'.
Reading option '-f' ... matched as option 'f' (force format) with argument 'mp3'.
Reading option 'output' ... matched as output url.
Reading option 'C:/Users/ScottRobertson/Desktop/VirtualExhibition/Final Booth Data/1-Abidi (gold)/Video/Audio.mp3' ... matched as output url.
Finished splitting the commandline.
Parsing a group of options: global .
Applying option report (generate a report) with argument 1.
Applying option y (overwrite output files) with argument 1.
Successfully parsed a group of options.
Parsing a group of options: input url C:/Users/ScottRobertson/Desktop/VirtualExhibition/Final Booth Data/1-Abidi (gold)/Video/Video1.mp4.
Successfully parsed a group of options.
Opening an input file: C:/Users/ScottRobertson/Desktop/VirtualExhibition/Final Booth Data/1-Abidi (gold)/Video/Video1.mp4.
[NULL @ 000002e7d956ed40] Opening 'C:/Users/ScottRobertson/Desktop/VirtualExhibition/Final Booth Data/1-Abidi (gold)/Video/Video1.mp4' for reading
[file @ 000002e7d956fd80] Setting default whitelist 'file,crypto,data'
[mov,mp4,m4a,3gp,3g2,mj2 @ 000002e7d956ed40] Format mov,mp4,m4a,3gp,3g2,mj2 probed with size=2048 and score=100
[mov,mp4,m4a,3gp,3g2,mj2 @ 000002e7d956ed40] ISO: File Type Major Brand: mp42
[mov,mp4,m4a,3gp,3g2,mj2 @ 000002e7d956ed40] Unknown dref type 0x206c7275 size 12
[mov,mp4,m4a,3gp,3g2,mj2 @ 000002e7d956ed40] Setting codecpar->delay to 1 for stream st: 0
[mov,mp4,m4a,3gp,3g2,mj2 @ 000002e7d956ed40] Unknown dref type 0x206c7275 size 12
[mov,mp4,m4a,3gp,3g2,mj2 @ 000002e7d956ed40] Before avformat_find_stream_info() pos: 139797 bytes read:65536 seeks:1 nb_streams:2
[h264 @ 000002e7d9570c00] nal_unit_type: 7(SPS), nal_ref_idc: 3
[h264 @ 000002e7d9570c00] nal_unit_type: 8(PPS), nal_ref_idc: 3
[h264 @ 000002e7d9570c00] nal_unit_type: 5(IDR), nal_ref_idc: 3
[h264 @ 000002e7d9570c00] Format yuv420p chosen by get_format().
[h264 @ 000002e7d9570c00] Reinit context to 1920x1088, pix_fmt: yuv420p
[h264 @ 000002e7d9570c00] no picture 
[h264 @ 000002e7d9570c00] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 000002e7d9570c00] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0
[h264 @ 000002e7d9570c00] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0
[h264 @ 000002e7d9570c00] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0
[h264 @ 000002e7d9570c00] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 000002e7d9570c00] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0
[h264 @ 000002e7d9570c00] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0
[mov,mp4,m4a,3gp,3g2,mj2 @ 000002e7d956ed40] All info found
[mov,mp4,m4a,3gp,3g2,mj2 @ 000002e7d956ed40] After avformat_find_stream_info() pos: 158020 bytes read:65536 seeks:1 frames:11
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'C:/Users/ScottRobertson/Desktop/VirtualExhibition/Final Booth Data/1-Abidi (gold)/Video/Video1.mp4':
 Metadata:
 major_brand : mp42
 minor_version : 0
 compatible_brands: mp42mp41
 creation_time : 2020-11-24T06:56:49.000000Z
 Duration: 00:00:56.45, start: 0.000000, bitrate: 893 kb/s
 Stream #0:0(eng), 10, 1/30000: Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, bt709), 1920x1080, 749 kb/s, 29.97 fps, 29.97 tbr, 30k tbn, 59.94 tbc (default)
 Metadata:
 creation_time : 2020-11-24T06:56:49.000000Z
 handler_name : Mainconcept Video Media Handler
 encoder : AVC Coding
 Stream #0:1(eng), 1, 1/44100: Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 125 kb/s (default)
 Metadata:
 creation_time : 2020-11-24T06:56:49.000000Z
 handler_name : #Mainconcept MP4 Sound Media Handler
Successfully opened the file.
Parsing a group of options: output url output.
Applying option vn (disable video) with argument 1.
Applying option acodec (force audio codec ('copy' to copy stream)) with argument libmp3lame.
Applying option ac (set number of audio channels) with argument 1.
Applying option ab (audio bitrate (please use -b:a)) with argument 64k.
Applying option f (force format) with argument mp3.
Successfully parsed a group of options.
Opening an output file: output.
[file @ 000002e7d958e340] Setting default whitelist 'file,crypto,data'
Successfully opened the file.
Parsing a group of options: output url C:/Users/ScottRobertson/Desktop/VirtualExhibition/Final Booth Data/1-Abidi (gold)/Video/Audio.mp3.
Successfully parsed a group of options.
Opening an output file: C:/Users/ScottRobertson/Desktop/VirtualExhibition/Final Booth Data/1-Abidi (gold)/Video/Audio.mp3.
[file @ 000002e7da1bc480] Setting default whitelist 'file,crypto,data'
Successfully opened the file.
Stream mapping:
 Stream #0:1 -> #0:0 (aac (native) -> mp3 (libmp3lame))
 Stream #0:1 -> #1:0 (aac (native) -> mp3 (libmp3lame))
Press [q] to stop, [?] for help
cur_dts is invalid st:0 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)
cur_dts is invalid st:0 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)
cur_dts is invalid st:0 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)
cur_dts is invalid st:0 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)
cur_dts is invalid st:0 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)
cur_dts is invalid st:0 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)
cur_dts is invalid st:0 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)
cur_dts is invalid st:0 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)
cur_dts is invalid st:0 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)
cur_dts is invalid st:0 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)
cur_dts is invalid st:0 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)
detected 8 logical cores
[graph_0_in_0_1 @ 000002e7dac2b7c0] Setting 'time_base' to value '1/44100'
[graph_0_in_0_1 @ 000002e7dac2b7c0] Setting 'sample_rate' to value '44100'
[graph_0_in_0_1 @ 000002e7dac2b7c0] Setting 'sample_fmt' to value 'fltp'
[graph_0_in_0_1 @ 000002e7dac2b7c0] Setting 'channel_layout' to value '0x3'
[graph_0_in_0_1 @ 000002e7dac2b7c0] tb:1/44100 samplefmt:fltp samplerate:44100 chlayout:0x3
[format_out_0_0 @ 000002e7dac2b8c0] Setting 'sample_fmts' to value 's32p|fltp|s16p'
[format_out_0_0 @ 000002e7dac2b8c0] Setting 'sample_rates' to value '44100|48000|32000|22050|24000|16000|11025|12000|8000'
[format_out_0_0 @ 000002e7dac2b8c0] Setting 'channel_layouts' to value '0x4'
[format_out_0_0 @ 000002e7dac2b8c0] auto-inserting filter 'auto_resampler_0' between the filter 'Parsed_anull_0' and the filter 'format_out_0_0'
[AVFilterGraph @ 000002e7da1bdfc0] query_formats: 4 queried, 7 merged, 3 already done, 0 delayed
[auto_resampler_0 @ 000002e7d958edc0] [SWR @ 000002e7d95fd240] Using fltp internally between filters
[auto_resampler_0 @ 000002e7d958edc0] [SWR @ 000002e7d95fd240] Matrix coefficients:
[auto_resampler_0 @ 000002e7d958edc0] [SWR @ 000002e7d95fd240] FC: FL:0.707107 FR:0.707107 
[auto_resampler_0 @ 000002e7d958edc0] ch:2 chl:stereo fmt:fltp r:44100Hz -> ch:1 chl:mono fmt:fltp r:44100Hz
Output #0, mp3, to 'output':
 Metadata:
 major_brand : mp42
 minor_version : 0
 compatible_brands: mp42mp41
 TSSE : Lavf58.45.100
 Stream #0:0(eng), 0, 1/44100: Audio: mp3 (libmp3lame), 44100 Hz, mono, fltp, 64 kb/s (default)
 Metadata:
 creation_time : 2020-11-24T06:56:49.000000Z
 handler_name : #Mainconcept MP4 Sound Media Handler
 encoder : Lavc58.91.100 libmp3lame
[graph_1_in_0_1 @ 000002e7d9a5bf00] Setting 'time_base' to value '1/44100'
[graph_1_in_0_1 @ 000002e7d9a5bf00] Setting 'sample_rate' to value '44100'
[graph_1_in_0_1 @ 000002e7d9a5bf00] Setting 'sample_fmt' to value 'fltp'
[graph_1_in_0_1 @ 000002e7d9a5bf00] Setting 'channel_layout' to value '0x3'
[graph_1_in_0_1 @ 000002e7d9a5bf00] tb:1/44100 samplefmt:fltp samplerate:44100 chlayout:0x3
[format_out_1_0 @ 000002e7da1b8580] Setting 'sample_fmts' to value 's32p|fltp|s16p'
[format_out_1_0 @ 000002e7da1b8580] Setting 'sample_rates' to value '44100|48000|32000|22050|24000|16000|11025|12000|8000'
[format_out_1_0 @ 000002e7da1b8580] Setting 'channel_layouts' to value '0x4|0x3'
[AVFilterGraph @ 000002e7da1be5c0] query_formats: 4 queried, 9 merged, 0 already done, 0 delayed
Output #1, mp3, to 'C:/Users/ScottRobertson/Desktop/VirtualExhibition/Final Booth Data/1-Abidi (gold)/Video/Audio.mp3':
 Metadata:
 major_brand : mp42
 minor_version : 0
 compatible_brands: mp42mp41
 TSSE : Lavf58.45.100
 Stream #1:0(eng), 0, 1/44100: Audio: mp3 (libmp3lame), 44100 Hz, stereo, fltp (default)
 Metadata:
 creation_time : 2020-11-24T06:56:49.000000Z
 handler_name : #Mainconcept MP4 Sound Media Handler
 encoder : Lavc58.91.100 libmp3lame
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)
size= 129kB time=00:00:16.40 bitrate= 64.2kbits/s speed=32.8x 
size= 254kB time=00:00:32.49 bitrate= 64.1kbits/s speed=32.5x 
size= 256kB time=00:00:47.83 bitrate= 43.8kbits/s speed=31.8x 
[out_0_0 @ 000002e7d95b3d40] EOF on sink link out_0_0:default.
[out_1_0 @ 000002e7d9bae780] EOF on sink link out_1_0:default.
No more output streams to write to, finishing.
[libmp3lame @ 000002e7d958dbc0] Trying to remove 175 more samples than there are in the queue
[libmp3lame @ 000002e7da1bb940] Trying to remove 175 more samples than there are in the queue
size= 442kB time=00:00:56.45 bitrate= 64.1kbits/s speed= 33x 
video:0kB audio:1324kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
Input file #0 (C:/Users/ScottRobertson/Desktop/VirtualExhibition/Final Booth Data/1-Abidi (gold)/Video/Video1.mp4):
 Input stream #0:0 (video): 10 packets read (17858 bytes); 
 Input stream #0:1 (audio): 2431 packets read (886147 bytes); 2431 frames decoded (2489344 samples); 
 Total: 2441 packets (904005 bytes) demuxed
Output file #0 (output):
 Output stream #0:0 (audio): 2161 frames encoded (2489344 samples); 2162 packets muxed (451813 bytes); 
 Total: 2162 packets (451813 bytes) muxed
Output file #1 (C:/Users/ScottRobertson/Desktop/VirtualExhibition/Final Booth Data/1-Abidi (gold)/Video/Audio.mp3):
 Output stream #1:0 (audio): 2161 frames encoded (2489344 samples); 2162 packets muxed (903627 bytes); 
 Total: 2162 packets (903627 bytes) muxed
2431 frames successfully decoded, 0 decoding errors
[AVIOContext @ 000002e7d958e400] Statistics: 2 seeks, 3 writeouts
[AVIOContext @ 000002e7da1bc580] Statistics: 2 seeks, 5 writeouts
[AVIOContext @ 000002e7d9578040] Statistics: 2725576 bytes read, 65 seeks



How can I force the desired audio bitrate ?


Also, why is there 2 outputs called
Output file #0
andOutput file #1
and why the #0 doesn't have any path ?

-
FFMpeg produces low quality target file with just 1 second length on Ubuntu 20.04
16 juillet 2021, par MattI'm using FFMpeg locally on a Mac (actually using PHP-FFMpeg) and it's working perfectly. I'm running the same code on an Ubuntu server and whatever I try the output file is a tiny, low quality video with just 1 second length (the original is about 15 seconds).


I installed it on the server with


sudo apt update
sudo apt install ffmpeg



and then restarted the server. To test now I'm running


ffmpeg -i source.mp4 target.mp4



from the terminal and getting this output


ffmpeg version 4.2.4-1ubuntu0.1 Copyright (c) 2000-2020 the FFmpeg developers
 built with gcc 9 (Ubuntu 9.3.0-10ubuntu2)
 configuration: --prefix=/usr --extra-version=1ubuntu0.1 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --arch=amd64 --enable-gpl --disable-stripping --enable-avresample --disable-filter=resample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librsvg --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opencl --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-nvenc --enable-chromaprint --enable-frei0r --enable-libx264 --enable-shared
 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
 libavresample 4. 0. 0 / 4. 0. 0
 libswscale 5. 5.100 / 5. 5.100
 libswresample 3. 5.100 / 3. 5.100
 libpostproc 55. 5.100 / 55. 5.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'source.mp4':
 Metadata:
 major_brand : iso5
 minor_version : 1
 compatible_brands: isomiso5hlsf
 creation_time : 2021-07-16T05:37:58.000000Z
 Duration: 00:00:00.66, start: 0.000000, bitrate: 74037 kb/s
 Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(progressive), 640x480 [SAR 1:1 DAR 4:3], 83522 kb/s, 30.20 fps, 600 tbr, 600 tbn, 1200 tbc (default)
 Metadata:
 creation_time : 2021-07-16T05:37:58.000000Z
 handler_name : Core Media Video
 Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, mono, fltp, 1774 kb/s (default)
 Metadata:
 creation_time : 2021-07-16T05:37:58.000000Z
 handler_name : Core Media Audio
File 'target.mp4' already exists. Overwrite ? [y/N] y
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 @ 0x55db778748c0] using SAR=1/1
[libx264 @ 0x55db778748c0] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
[libx264 @ 0x55db778748c0] profile High, level 3.0
[libx264 @ 0x55db778748c0] 264 - core 155 r2917 0a84d98 - H.264/MPEG-4 AVC codec - Copyleft 2003-2018 - 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=3 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=250 keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
frame= 8 fps=0.0 q=0.0 size= 0kB time=-577014:32:22.77 bitrate= -0.0kbOutput #0, mp4, to 'target.mp4':
 Metadata:
 major_brand : iso5
 minor_version : 1
 compatible_brands: isomiso5hlsf
 encoder : Lavf58.29.100
 Stream #0:0(und): Video: h264 (libx264) (avc1 / 0x31637661), yuv420p(progressive), 640x480 [SAR 1:1 DAR 4:3], q=-1--1, 30.20 fps, 28k tbn, 30.20 tbc (default)
 Metadata:
 creation_time : 2021-07-16T05:37:58.000000Z
 handler_name : Core Media Video
 encoder : Lavc58.54.100 libx264
 Side data:
 cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: -1
 Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, mono, fltp, 69 kb/s (default)
 Metadata:
 creation_time : 2021-07-16T05:37:58.000000Z
 handler_name : Core Media Audio
 encoder : Lavc58.54.100 aac
frame= 15 fps= 14 q=0.0 size= 0kB time=00:00:00.00 bitrate=N/A dup=3 droframe= 18 fps= 11 q=0.0 size= 0kB time=00:00:00.46 bitrate= 0.8kbits/sframe= 18 fps=7.9 q=0.0 size= 0kB time=00:00:00.46 bitrate= 0.8kbits/sframe= 18 fps=6.4 q=0.0 size= 0kB time=00:00:00.46 bitrate= 0.8kbits/sframe= 19 fps=5.8 q=0.0 size= 0kB time=00:00:00.46 bitrate= 0.8kbits/sframe= 19 fps=5.0 q=0.0 size= 0kB time=00:00:00.46 bitrate= 0.8kbits/sframe= 20 fps=4.6 q=0.0 size= 0kB time=00:00:00.46 bitrate= 0.8kbits/s[aac @ 0x55db778a2f00] Queue input is backward in time
[mp4 @ 0x55db77876100] Non-monotonous DTS in output stream 0:1; previous: 23552, current: 20480; changing to 23553. This may result in incorrect timestamps in the output file.
[mp4 @ 0x55db77876100] Non-monotonous DTS in output stream 0:1; previous: 23553, current: 21504; changing to 23554. This may result in incorrect timestamps in the output file.
[mp4 @ 0x55db77876100] Non-monotonous DTS in output stream 0:1; previous: 23554, current: 22528; changing to 23555. This may result in incorrect timestamps in the output file.
[mp4 @ 0x55db77876100] Non-monotonous DTS in output stream 0:1; previous: 23555, current: 23552; changing to 23556. This may result in incorrect timestamps in the output file.
frame= 20 fps=3.3 q=-1.0 Lsize= 77kB time=00:00:00.56 bitrate=1122.7kbits/s dup=3 drop=3 speed=0.0936x 
video:69kB audio:6kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 2.688508%
[libx264 @ 0x55db778748c0] frame I:1 Avg QP:22.13 size: 14863
[libx264 @ 0x55db778748c0] frame P:5 Avg QP:25.37 size: 6279
[libx264 @ 0x55db778748c0] frame B:14 Avg QP:26.80 size: 1720
[libx264 @ 0x55db778748c0] consecutive B-frames: 5.0% 0.0% 15.0% 80.0%
[libx264 @ 0x55db778748c0] mb I I16..4: 15.9% 65.9% 18.2%
[libx264 @ 0x55db778748c0] mb P I16..4: 10.6% 11.7% 1.3% P16..4: 52.4% 11.2% 5.5% 0.0% 0.0% skip: 7.4%
[libx264 @ 0x55db778748c0] mb B I16..4: 1.0% 1.3% 0.4% B16..8: 35.8% 3.0% 0.5% direct: 2.4% skip:55.6% L0:41.2% L1:55.5% BI: 3.3%
[libx264 @ 0x55db778748c0] 8x8 transform intra:56.1% inter:82.3%
[libx264 @ 0x55db778748c0] coded y,uvDC,uvAC intra: 54.1% 75.0% 21.1% inter: 14.6% 25.2% 0.1%
[libx264 @ 0x55db778748c0] i16 v,h,dc,p: 9% 19% 3% 70%
[libx264 @ 0x55db778748c0] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 19% 18% 24% 5% 6% 9% 6% 6% 6%
[libx264 @ 0x55db778748c0] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 30% 20% 16% 6% 7% 7% 6% 5% 3%
[libx264 @ 0x55db778748c0] i8c dc,h,v,p: 48% 25% 22% 5%
[libx264 @ 0x55db778748c0] Weighted P-Frames: Y:40.0% UV:40.0%
[libx264 @ 0x55db778748c0] ref P L0: 62.4% 17.4% 14.3% 5.7% 0.1%
[libx264 @ 0x55db778748c0] ref B L0: 87.6% 10.7% 1.7%
[libx264 @ 0x55db778748c0] ref B L1: 95.0% 5.0%
[libx264 @ 0x55db778748c0] kb/s:849.86
[aac @ 0x55db778a2f00] Qavg: 4594.708



Here's what the files look like




Any ideas what could be wrong ?
Thanks for your help !