
Recherche avancée
Autres articles (6)
-
Use, discuss, criticize
13 avril 2011, parTalk to people directly involved in MediaSPIP’s development, or to people around you who could use MediaSPIP to share, enhance or develop their creative projects.
The bigger the community, the more MediaSPIP’s potential will be explored and the faster the software will evolve.
A discussion list is available for all exchanges between users. -
Other interesting software
13 avril 2011, parWe don’t claim to be the only ones doing what we do ... and especially not to assert claims to be the best either ... What we do, we just try to do it well and getting better ...
The following list represents softwares that tend to be more or less as MediaSPIP or that MediaSPIP tries more or less to do the same, whatever ...
We don’t know them, we didn’t try them, but you can take a peek.
Videopress
Website : http://videopress.com/
License : GNU/GPL v2
Source code : (...) -
Menus personnalisés
14 novembre 2010, parMediaSPIP utilise le plugin Menus pour gérer plusieurs menus configurables pour la navigation.
Cela permet de laisser aux administrateurs de canaux la possibilité de configurer finement ces menus.
Menus créés à l’initialisation du site
Par défaut trois menus sont créés automatiquement à l’initialisation du site : Le menu principal ; Identifiant : barrenav ; Ce menu s’insère en général en haut de la page après le bloc d’entête, son identifiant le rend compatible avec les squelettes basés sur Zpip ; (...)
Sur d’autres sites (2461)
-
record long videos from multiple webcams with FFmpeg
4 août 2020, par NagamotoI am using


ffmpeg -f dshow -vcodec mjpeg -t 6000 -rtbufsize 2.14748e+09 -video_size 1920x1080 -framerate 60 -i video=camID-0 -f dshow -vcodec mjpeg -t 6000 -rtbufsize 2.14748e+09 -video_size 1920x1080 -framerate 60 -i video=camID-1 -map 0 -c:v libx264 -preset ultrafast -y -r 30 fileName_0.mp4 -map 1 -c:v libx264 -preset ultrafast -y -r 30 fileName_1.mp4


to record video from two webcams. Since the output will be compressed further down the line I am mostly concerned with quality and not losing frames. But after about 2min the real-time buffer is full :


[dshow @ 00000221716edf80] real-time buffer [@device_pnp_\\?\usb#vid_15aa&pid_1555&mi_00#6&b8e4142&0&0000#{65e8773d-8f56-11d0-a3b9-00a0c9223196}\global] [video input] too full or near too full (75% of size: 2147480000 [rtbufsize parameter])! frame dropped!



On the other hand capturing uncompressed video results in huge filesizes (1.3 TB for an hour) but encoding with the settings above the computer can't keep up.
Currently the webcams capture 60fps- which is not a must but I can't set them to anything lower.


How can I record long video (max 1.5h) with good quality while keeping file-sizes manageable ?


ffmpeg -f dshow -list_options true -i video="3.0 USB Camera"



ffmpeg version 4.3 Copyright (c) 2000-2020 the FFmpeg developers
 built with gcc 9.3.1 (GCC) 20200621
 configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libdav1d --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libsrt --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libaom --enable-libgsm --disable-w32threads --enable-libmfx --enable-ffnvcodec --enable-cuda-llvm --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth --enable-libopenmpt --enable-amf
 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
[dshow @ 000001f32953c380] DirectShow video device options (from video devices)
[dshow @ 000001f32953c380] Pin "Capture" (alternative pin name "0")
[dshow @ 000001f32953c380] vcodec=mjpeg min s=1920x1080 fps=60.0002 max s=1920x1080 fps=60.0002
[dshow @ 000001f32953c380] vcodec=mjpeg min s=1920x1080 fps=60.0002 max s=1920x1080 fps=60.0002
[dshow @ 000001f32953c380] vcodec=mjpeg min s=1280x720 fps=60.0002 max s=1280x720 fps=60.0002
[dshow @ 000001f32953c380] vcodec=mjpeg min s=1280x720 fps=60.0002 max s=1280x720 fps=60.0002
[dshow @ 000001f32953c380] vcodec=mjpeg min s=640x480 fps=60.0002 max s=640x480 fps=60.0002
[dshow @ 000001f32953c380] vcodec=mjpeg min s=640x480 fps=60.0002 max s=640x480 fps=60.0002
[dshow @ 000001f32953c380] pixel_format=yuyv422 min s=1920x1080 fps=60.0002 max s=1920x1080 fps=60.0002
[dshow @ 000001f32953c380] pixel_format=yuyv422 min s=1920x1080 fps=60.0002 max s=1920x1080 fps=60.0002
[dshow @ 000001f32953c380] pixel_format=yuyv422 min s=1280x720 fps=60.0002 max s=1280x720 fps=60.0002
[dshow @ 000001f32953c380] pixel_format=yuyv422 min s=1280x720 fps=60.0002 max s=1280x720 fps=60.0002
[dshow @ 000001f32953c380] pixel_format=yuyv422 min s=640x480 fps=60.0002 max s=640x480 fps=60.0002
[dshow @ 000001f32953c380] pixel_format=yuyv422 min s=640x480 fps=60.0002 max s=640x480 fps=60.0002
video=3.0 USB Camera: Immediate exit requested



-
Live jpeg sequence image to RTMP fps drop
6 avril 2021, par m0j1I want to encode a sequence of jpg images (captured from my camera in unity) to h264 codec live stream video. I'm using the following command in ffmpeg :


-f image2pipe -vcodec mjpeg -r 25 -i udp://127.0.0.1:6000 -r 25 -preset slow -vcodec libx264 -tune zerolatency -b:v 800k -maxrate 800k -bufsize 400k -f mpegts udp://127.0.0.1:5701



On the other side, I playback this live stream using ffplay (ffplay -fflags nobuffer -flags low_delay -framedrop udp ://192.168.189.112:5701) and everything seems to be fine.

After that, I want to use a media server to restream this to other clients so I chose node media server and with the following ffmpeg comment I stream my image sequence to my media server :

-f image2pipe -vcodec mjpeg -r 25 -i udp://127.0.0.1:6000 -r 25 -preset slow -vcodec libx264 -tune zerolatency -b:v 800k -maxrate 800k -bufsize 400k -f flv rtmp://192.168.189.112/live/STREAM_NAME



But when I use ffplay to playback this live stream using the following command I get a choppy stream that looks like it is in 5fps :


ffplay -fflags nobuffer -flags low_delay -framedroprtmp://192.168.189.112/live/STREAM_NAME

 



I also tried to first record my live stream using node media server and then play it to see if I had received the data right and surprisingly the recorded video is perfect.

I wanted to ask if someone has any tips or experience about this.


-
Using ffmpeg on Ubuntu, how can the audio and video from an audio-video USB capture device be recorded ?
11 avril 2022, par BlandCorporationI have a USB audio-video capture device, something used to digitize video cassettes. I want to record both the video and audio from the device to a video file that has dimensions 720x576 and video codec H.264 and good audio quality.


I am able to record video from the device using ffmpeg and I am able to see video from the device using MPlayer. I am able also to see that audio is being delivered from the device to the computer by looking at Input tab of the Sound Preferences window or by recording the audio using Audacity, however the audio gets delivered from the device apparently only when the video is being accessed using ffmpeg or MPlayer.


I have tried to get ffmpeg to record the audio and I have tried to get MPlayer to play the audio and my efforts have not been successful.


The device is "Pinnacle Dazzle DVC 90/100/101" (as returned by
v4l2-ctl --list-devices
). The sound cards listing shows it as "DVC100" :

$ cat /proc/asound/cards 
 0 [PCH ]: HDA-Intel - HDA Intel PCH
 HDA Intel PCH at 0x601d118000 irq 171
 1 [DVC100 ]: USB-Audio - DVC100
 Pinnacle Systems GmbH DVC100 at usb-0000:00:14.0-4, high speed
29 [ThinkPadEC ]: ThinkPad EC - ThinkPad Console Audio Control
 ThinkPad Console Audio Control at EC reg 0x30, fw N2LHT33W



The PulseAudio listing for the device is as follows :


$ pactl list cards short
0 alsa_card.pci-0000_00_1f.3 module-alsa-card.c
14 alsa_card.usb-Pinnacle_Systems_GmbH_DVC100-01 module-alsa-card.c



The following ffmpeg command successfully records video, but records severely distorted, broken and out-of-sync audio :


ffmpeg -y -f rawvideo -f alsa -thread_queue_size 2048 -ar 48000 -i hw:0 \
 -c:a aac -video_size 720x576 -pixel_format uyvy422 -i /dev/video2 out.mp4



The following MPlayer command successfully displays the video but does not play the audio :


mplayer -tv driver=v4l2:norm=PAL:device=/dev/video2:width=720:height=576 \
 -ao alsa:device=hw=1.0 -vf pp=lb tv://



Now, when the above MPlayer command is running (not the ffmpeg command) and displaying the input video in a window, Audacity can be opened and set recording audio, and it records the audio from the device clearly and in good quality. While Audacity is doing this, the input device is listed in
pavucontrol
as "Dazzle DVC Audio Device Analogue Stereo". Equivalently, arecord can be used also to record the audio using the following command (with output shown) :

$ arecord -vv -D plughw:DVC100 -fdat out.wav
Recording WAVE 'out.wav' : Signed 16 bit Little Endian, Rate 48000 Hz, Stereo
Plug PCM: Hardware PCM card 1 'DVC100' device 0 subdevice 0
Its setup is:
 stream : CAPTURE
 access : RW_INTERLEAVED
 format : S16_LE
 subformat : STD
 channels : 2
 rate : 48000
 exact rate : 48000 (48000/1)
 msbits : 16
 buffer_size : 24000
 period_size : 6000
 period_time : 125000
 tstamp_mode : NONE
 tstamp_type : MONOTONIC
 period_step : 1
 avail_min : 6000
 period_event : 0
 start_threshold : 1
 stop_threshold : 24000
 silence_threshold: 0
 silence_size : 0
 boundary : 6755399441055744000
 appl_ptr : 0
 hw_ptr : 0



Looking at the output of
arecord -L
, I tried a variety of audio device input names with ffmpeg and none of them seemed to work. So, for example, I tried commands like the following :

ffmpeg -y -f rawvideo -f alsa -i plughw:DVC100 \
 -video_size 720x576 -pixel_format uyvy422 -i /dev/video2 out.mp4



And tried the following audio device names :


plughw:DVC100
plughw:CARD=DVC100,DEV=0
hw:CARD=DVC100,DEV=0
plughw:CARD=DVC100
sysdefault:CARD=DVC100
iec958:CARD=DVC100,DEV=0
dsnoop:CARD=DVC100,DEV=0



So, how might I get ffmpeg to record the audio successfully to the video file ? Is there some alternative approach to this problem ?



EDIT : The relevant output from the command
pactl list sources
is as follows :

Source #20
 State: SUSPENDED
 Name: alsa_input.usb-Pinnacle_Systems_GmbH_DVC100-01.analog-stereo
 Description: Dazzle DVC100 Audio Device Analogue Stereo
 Driver: module-alsa-card.c
 Sample Specification: s16le 2ch 48000Hz
 Channel Map: front-left,front-right
 Owner Module: 45
 Mute: no
 Volume: front-left: 99957 / 153% / 11.00 dB, front-right: 99957 / 153% / 11.00 dB
 balance 0.00
 Base Volume: 35466 / 54% / -16.00 dB
 Monitor of Sink: n/a
 Latency: 0 usec, configured 0 usec
 Flags: HARDWARE HW_MUTE_CTRL HW_VOLUME_CTRL DECIBEL_VOLUME LATENCY 
 Properties:
 alsa.resolution_bits = "16"
 device.api = "alsa"
 device.class = "sound"
 alsa.class = "generic"
 alsa.subclass = "generic-mix"
 alsa.name = "USB Audio"
 alsa.id = "USB Audio"
 alsa.subdevice = "0"
 alsa.subdevice_name = "subdevice #0"
 alsa.device = "0"
 alsa.card = "1"
 alsa.card_name = "DVC100"
 alsa.long_card_name = "Pinnacle Systems GmbH DVC100 at usb-0000:00:14.0-4, high speed"
 alsa.driver_name = "snd_usb_audio"
 device.bus_path = "pci-0000:00:14.0-usb-0:4:1.1"
 sysfs.path = "/devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4:1.1/sound/card1"
 udev.id = "usb-Pinnacle_Systems_GmbH_DVC100-01"
 device.bus = "usb"
 device.vendor.id = "2304"
 device.vendor.name = "Pinnacle Systems, Inc."
 device.product.id = "021a"
 device.product.name = "Dazzle DVC100 Audio Device"
 device.serial = "Pinnacle_Systems_GmbH_DVC100"
 device.string = "front:1"
 device.buffering.buffer_size = "352800"
 device.buffering.fragment_size = "176400"
 device.access_mode = "mmap+timer"
 device.profile.name = "analog-stereo"
 device.profile.description = "Analogue Stereo"
 device.description = "Dazzle DVC100 Audio Device Analogue Stereo"
 alsa.mixer_name = "USB Mixer"
 alsa.components = "USB2304:021a"
 module-udev-detect.discovered = "1"
 device.icon_name = "audio-card-usb"
 Ports:
 analog-input-linein: Line In (priority: 8100)
 Active Port: analog-input-linein
 Formats:
 pcm



I tested the name from this with ffmpeg (version 4.3.1, compiled with
-enable-libpulse
) in the following way :

ffmpeg -y -f video4linux2 -f pulse \
 -i alsa_input.usb-Pinnacle_Systems_GmbH_DVC100-01.analog-stereo \
 -video_size 720x576 -pixel_format uyvy422 -i /dev/video2 out.mp4



Unfortunately this hasn't worked.