
Recherche avancée
Autres articles (88)
-
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. -
Support audio et vidéo HTML5
10 avril 2011MediaSPIP utilise les balises HTML5 video et audio pour la lecture de documents multimedia en profitant des dernières innovations du W3C supportées par les navigateurs modernes.
Pour les navigateurs plus anciens, le lecteur flash Flowplayer est utilisé.
Le lecteur HTML5 utilisé a été spécifiquement créé pour MediaSPIP : il est complètement modifiable graphiquement pour correspondre à un thème choisi.
Ces technologies permettent de distribuer vidéo et son à la fois sur des ordinateurs conventionnels (...) -
D’autres logiciels intéressants
12 avril 2011, parOn ne revendique pas d’être les seuls à faire ce que l’on fait ... et on ne revendique surtout pas d’être les meilleurs non plus ... Ce que l’on fait, on essaie juste de le faire bien, et de mieux en mieux...
La liste suivante correspond à des logiciels qui tendent peu ou prou à faire comme MediaSPIP ou que MediaSPIP tente peu ou prou à faire pareil, peu importe ...
On ne les connais pas, on ne les a pas essayé, mais vous pouvez peut être y jeter un coup d’oeil.
Videopress
Site Internet : (...)
Sur d’autres sites (6058)
-
How do I configure codec parameters for a RTSP stream ?
16 mai 2024, par KermitI am trying to stream a network camera source into
/dev/video0
. However, all attempts keep telling me I have set incorrect codec parameters. Any suggestions ?

# works
ffplay rtsp://admin:password@172.16.0.184:554/live



Then trying any of these to feed into
/dev/video0
(valid from list ofls /dev/video*
) :

ffmpeg -rtsp_transport tcp -i "rtsp://admin:password@172.16.0.184:554/live" -c:v rawvideo -pix_fmt yuv420p -f v4l2 /dev/video0



Results in


ffmpeg version 5.1.4-0+rpt3+deb12u1 Copyright (c) 2000-2023 the FFmpeg developers
 built with gcc 12 (Debian 12.2.0-14)
 configuration: --prefix=/usr --extra-version=0+rpt3+deb12u1 --toolchain=hardened --incdir=/usr/include/aarch64-linux-gnu --enable-gpl --disable-stripping --disable-mmal --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libdav1d --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libglslang --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librabbitmq --enable-librist --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libssh --enable-libsvtav1 --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzimg --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opencl --enable-opengl --enable-sand --enable-sdl2 --disable-sndio --enable-libjxl --enable-neon --enable-v4l2-request --enable-libudev --enable-epoxy --libdir=/usr/lib/aarch64-linux-gnu --arch=arm64 --enable-pocketsphinx --enable-librsvg --enable-libdc1394 --enable-libdrm --enable-vout-drm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libx264 --enable-libplacebo --enable-librav1e --enable-shared
 libavutil 57. 28.100 / 57. 28.100
 libavcodec 59. 37.100 / 59. 37.100
 libavformat 59. 27.100 / 59. 27.100
 libavdevice 59. 7.100 / 59. 7.100
 libavfilter 8. 44.100 / 8. 44.100
 libswscale 6. 7.100 / 6. 7.100
 libswresample 4. 7.100 / 4. 7.100
 libpostproc 56. 6.100 / 56. 6.100
Input #0, rtsp, from 'rtsp://admin:password@172.16.0.184:554/live':
 Metadata:
 title : Media Server
 Duration: N/A, start: 0.000000, bitrate: N/A
 Stream #0:0: Video: hevc (Main), yuv420p(tv), 3840x2160, 30 fps, 100 tbr, 90k tbn
 Stream #0:1: Audio: aac (LC), 32000 Hz, mono, fltp
Stream mapping:
 Stream #0:0 -> #0:0 (hevc (native) -> rawvideo (native))
Press [q] to stop, [?] for help
[video4linux2,v4l2 @ 0x55562d9faa70] ioctl(VIDIOC_G_FMT): Invalid argument
Could not write header for output file #0 (incorrect codec parameters ?): Invalid argument
Error initializing output stream 0:0 -- 
Conversion failed!



-
how can I assign unique AVFoundation camera device names ?
28 avril 2023, par mcgregor94086Short summary :
I have a USB multi-camera array device. According to system_profiler, each of these webcams share the same name : "USB Camera". I have no unique name I can use with FFMPEG AVFoundation and get images from that specific camera. How can I tell FFMPEG the specific camera that I want (each has a unique USB path that I normally use to identify a specific camera.


I can solve this problem on Linux, but I can't figure out how to do it on macOS.


How I might do this on Linux
I know the unique USB Path to each camera, and I would like to use this to assign a unique Name that I can address using FFMPEG when taking images. On Linux I can use the udev system to make those assignments,


In Linux, I can reassign a new unique camera name using /etc/udev/rules.d/60-v4l.rules. with something like this :


SUBSYSTEMS=="usb", ENVID_VENDOR_ID=="0bda", ENVID_MODEL_ID=="5829", ENVID_PATH_TAG==platform-fd500000_pcie-0000_01_00_0-usb_1_4_5_1_3_1_1, ENVID_V4L_PRODUCT="Cam_00"
SUBSYSTEMS=="usb", ENVID_VENDOR_ID=="0bda", ENVID_MODEL_ID=="5829", ENVID_PATH_TAG==platform-fd500000_pcie-0000_01_00_0-usb_1_4_5_1_3_1_3, ENVID_V4L_PRODUCT="Cam_01"
...


More details :
Of course macOS doesn't work this way, as it uses AVFoundation to address video devices.


When I attach the device I see that 16 new cameras now appear when I type query system_profiler SPCameraDataType, it prints the output shown further below


You may notice that there are 16 cameras all named "USB Camera :" but system_profiler is reporting that each has a "Unique ID :" that is different for each camera. This Unique ID is composed of a unique USB Path (e.g. '0x1441311') concatenated with the "Vendor ID" ('00bda') and product ID ('5829') all expressed in hexadecimal.


Unfortunately, this means every camera has the same generic name in iPhoto, and when specifying the input camera in FFMPEG with AVFoundation syntax, I can't seem to indicate which specific camera I want.


I want to take 1 photo from each camera in a specific order. I have a table that maps each camera's USB Path to a desired name that would make it easy for me to trigger the camera captures in the sequence I desire.


In Linux, I can reassign a new unique camera name using /etc/udev/rules.d/60-v4l.rules.


SUBSYSTEMS=="usb", ENVID_VENDOR_ID=="0bda", ENVID_MODEL_ID=="5829", ENVID_PATH_TAG==platform-fd500000_pcie-0000_01_00_0-usb_1_4_5_1_3_1_1, ENVID_V4L_PRODUCT="Cam_00"
SUBSYSTEMS=="usb", ENVID_VENDOR_ID=="0bda", ENVID_MODEL_ID=="5829", ENVID_PATH_TAG==platform-fd500000_pcie-0000_01_00_0-usb_1_4_5_1_3_1_3, ENVID_V4L_PRODUCT="Cam_01"
...


% system_profiler SPCameraDataType


Camera :


USB Camera:

 Model ID: UVC Camera VendorID_3034 ProductID_22569
 Unique ID: 0x144131100bda5829

USB Camera:

 Model ID: UVC Camera VendorID_3034 ProductID_22569
 Unique ID: 0x144200000bda5829

USB Camera:

 Model ID: UVC Camera VendorID_3034 ProductID_22569
 Unique ID: 0x144141400bda5829

USB Camera:

 Model ID: UVC Camera VendorID_3034 ProductID_22569
 Unique ID: 0x144131300bda5829

USB Camera:

 Model ID: UVC Camera VendorID_3034 ProductID_22569
 Unique ID: 0x144141300bda5829

USB Camera:

 Model ID: UVC Camera VendorID_3034 ProductID_22569
 Unique ID: 0x144121200bda5829

USB Camera:

 Model ID: UVC Camera VendorID_3034 ProductID_22569
 Unique ID: 0x144121400bda5829

USB Camera:

 Model ID: UVC Camera VendorID_3034 ProductID_22569
 Unique ID: 0x144133000bda5829

USB Camera:

 Model ID: UVC Camera VendorID_3034 ProductID_22569
 Unique ID: 0x144131200bda5829

USB Camera:

 Model ID: UVC Camera VendorID_3034 ProductID_22569
 Unique ID: 0x144141100bda5829

USB Camera:

 Model ID: UVC Camera VendorID_3034 ProductID_22569
 Unique ID: 0x144143000bda5829

USB Camera:

 Model ID: UVC Camera VendorID_3034 ProductID_22569
 Unique ID: 0x144121300bda5829

USB Camera:

 Model ID: UVC Camera VendorID_3034 ProductID_22569
 Unique ID: 0x144110000bda5829

USB Camera:

 Model ID: UVC Camera VendorID_3034 ProductID_22569
 Unique ID: 0x144141200bda5829

FaceTime HD Camera (Built-in):

 Model ID: UVC Camera VendorID_1452 ProductID_34068
 Unique ID: 0x8020000005ac8514

USB Camera:

 Model ID: UVC Camera VendorID_3034 ProductID_22569
 Unique ID: 0x144300000bda5829



MacBook Pro, OS X 10.11
Posted on Apr 27, 2023 10:49 PM
Reply


Page content loaded
There are no replies.
how can I assign unique AVFoundation camera device names ?
Reply


-
ffmpeg with libopenh264 to get profile high422
24 juillet 2023, par Андрей ТернитиI have raw MJPEG video file. 3840x2160, 25fps, YUYV 4:2:2. I want use ffmpeg with encoder libopenh264. Why I can't use profile high422 ?


ffmpeg -framerate 25 -i inFile.yuvj422p -profile:v high422 -c:v libopenh264 -q 2 -b 2500000 -allow_skip_frames 1 -maxrate 3500000 outFile.mkv



Log


...
[libopenh264enc @ 0x56077580ed80] [Eval @ 0x7ffe78457230] Undefined constant or missing '(' in 'high422'



Let's know encoder's capability


# ffmpeg -h encoder=libopenh264
Encoder libopenh264 [OpenH264 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10]:
 General capabilities: threads 
 Threading capabilities: other
 Supported pixel formats: yuv420p
libopenh264enc AVOptions:
 -slice_mode <int> E..V......P set slice mode, use slices/max_nal_size (from 0 to 4) (default fixed)
 fixed 1 E..V....... a fixed number of slices
 dyn 3 E..V....... Size limited (compatibility name)
 sizelimited 3 E..V....... Size limited
 -loopfilter <int> E..V....... enable loop filter (from 0 to 1) (default 1)
 -profile <int> E..V....... set profile restrictions (from -99 to 65535) (default -99)
 constrained_baseline 578 E..V.......
 main 77 E..V.......
 high 100 E..V.......
 -max_nal_size <int> E..V....... set maximum NAL size in bytes (from 0 to INT_MAX) (default 0)
 -allow_skip_frames <boolean> E..V....... allow skipping frames to hit the target bitrate (default false)
 -cabac <int> E..V......P Enable cabac(deprecated, use coder) (from 0 to 1) (default 0)
 -coder <int> E..V....... Coder type (from -1 to 1) (default default)
 default -1 E..V.......
 cavlc 0 E..V.......
 cabac 1 E..V.......
 vlc 0 E..V.......
 ac 1 E..V.......
 -rc_mode <int> E..V....... Select rate control mode (from -1 to 3) (default quality)
 off -1 E..V....... bit rate control off
 quality 0 E..V....... quality mode
 bitrate 1 E..V....... bitrate mode
 buffer 2 E..V....... using buffer status to adjust the video quality (no bitrate control)
 timestamp 3 E..V....... bit rate control based on timestamp
</int></int></int></boolean></int></int></int></int>


Looks like there is no high422 profile in libopenh264. But I can find
PRO_HIGH422 in several places of source code...


ffmpeg version


# ffmpeg -v
ffmpeg version N-111611-g5b11ee9429 Copyright (c) 2000-2023 the FFmpeg developers
 built with gcc 11 (Ubuntu 11.4.0-1ubuntu1~22.04)
 configuration: --prefix=/home/a/Downloads/myGitHub/FFmpeg_fixing/ffmpeg_openh264/ffmpeg_build/ --pkg-config-flags=--static --extra-cflags=-I/home/a/Downloads/myGitHub/FFmpeg_fixing/ffmpeg_openh264/ffmpeg_build/include --extra-ldflags=-L/home/a/Downloads/myGitHub/FFmpeg_fixing/ffmpeg_openh264/ffmpeg_build/lib --extra-libs='-lpthread -lm' --ld=g++ --bindir=/home/a/bin --enable-gpl --enable-libopenh264



Why I can't use profile high422 ?