
Recherche avancée
Autres articles (41)
-
Les tâches Cron régulières de la ferme
1er décembre 2010, parLa gestion de la ferme passe par l’exécution à intervalle régulier de plusieurs tâches répétitives dites Cron.
Le super Cron (gestion_mutu_super_cron)
Cette tâche, planifiée chaque minute, a pour simple effet d’appeler le Cron de l’ensemble des instances de la mutualisation régulièrement. Couplée avec un Cron système sur le site central de la mutualisation, cela permet de simplement générer des visites régulières sur les différents sites et éviter que les tâches des sites peu visités soient trop (...) -
Les formats acceptés
28 janvier 2010, parLes commandes suivantes permettent d’avoir des informations sur les formats et codecs gérés par l’installation local de ffmpeg :
ffmpeg -codecs ffmpeg -formats
Les format videos acceptés en entrée
Cette liste est non exhaustive, elle met en exergue les principaux formats utilisés : h264 : H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 m4v : raw MPEG-4 video format flv : Flash Video (FLV) / Sorenson Spark / Sorenson H.263 Theora wmv :
Les formats vidéos de sortie possibles
Dans un premier temps on (...) -
Les autorisations surchargées par les plugins
27 avril 2010, parMediaspip core
autoriser_auteur_modifier() afin que les visiteurs soient capables de modifier leurs informations sur la page d’auteurs
Sur d’autres sites (6048)
-
Solution Merge mp3+mp4 together with FFMPEG or other
7 juin 2018, par SandyUgaleI have been working on a project where I have .mp3 and video file (.MP4). I have FFMG on my AWS server and I’m providing both to FFMPEG give me complete video file with provided audio file. Then I send this file to my AWS S3 and then fetch this video as needed in my web app.
Problem/Use Case :
If I have 10 mp3 and 10 mp4 video files then I have to wait the until it complete all videos then only I can send them on S3, so Im waiting for long as number goes up.
Can I control this ?
Solution-1 : Don’t need to wait for loop
Meaning instead of starting all merging together parallel I would like merging to be done one by one. Referencing above example
First merge of 1.mp3 + 1. Mp4= 1.mp4 (complete file) –upload s3.
Second merge of 2.mp3 + 2. Mp4= 2.mp4 (complete file) –upload s3.
Tenth merge of 10.mp3 + 10. Mp4= 10.mp4 (complete file) –upload s3.Solution-2 : send video as they ready
How I can know which video has been ready to send to s3 ?
Solution-3 : other service
Is there any other online API or services where I can pass mp3 + mp4 and give me video url simply after merging so technically video will hosted on either their platform or on my S3 doest matter.
-
Can build & make video call with pjsip and ffmpeg
10 mai 2023, par QVietI try to build PJSIP with ffmpeg with this config :


i Follow those step :


- 

- build need lib and place in thirdparty folder name ffmpeg
- setup link lib & header already.
- run build with "$configure —with-ffmpeg="
- config_site.h add :












#define PJMEDIA_HAS_OPENH264_CODEC 1 
#define PJMEDIA_HAS_VIDEO 1 
#define PJMEDIA_VIDEO_DEV_HAS_FFMPEG 1 
#define PJMEDIA_HAS_FFMPEG_VID_CODEC 1 
#define PJMEDIA_HAS_FFMPEG 1 
#define PJMEDIA_HAS_FFMPEG_CODEC_H264 1 
#define PJMEDIA_HAS_LIBAVDEVICE 1 
#define PJMEDIA_HAS_OPENH264_CODEC 1





I see have to enable PJMEDIA_HAS_OPENH264_CODEC , if not, can build success but when import will receive this error :


Undefined symbol: _WelsCreateDecoder



cause miss wels package exits in openh264 lib.


The build with success after all with above config but in this :


pj_status_t status = pjsua_vid_enum_codecs(videoCodecInfo, &videoCodecCount);



the codec info just show 1 codec is "H264/97" -> is OpenH264 codec, i can't see ffmpeg here.
When im start call like normal, see log openh264 init call/ open camera .


What i need step to using ffmpeg, i can see any docs about it


can you help me ?


** this i log call stack :**


2023-04-24 10:17:21.522976+0700 PSUAKitSample[83000:15642975] 💚 DEBUG 10:17:21.523 [SIPSample -[SIPSample startEndpointWithEndpointConfiguration:error:]:272] Creating new PSUASIP Endpoint instance.
10:17:21.525 os_core_unix.c !pjlib 2.13-dev for POSIX initialized
10:17:21.526 sip_endpoint.c .Creating endpoint instance...
10:17:21.527 pjlib .select() I/O Queue created (0x1050a32c8)
10:17:21.527 sip_endpoint.c .Module "mod-msg-print" registered
10:17:21.527 sip_transport.c .Transport manager created.
10:17:21.527 pjsua_core.c .PJSUA state changed: NULL --> CREATED
2023-04-24 10:17:21.528077+0700 PSUAKitSample[83000:15642817] 10:17:21.528 sip_endpoint.c .Module "mod-pjsua-log" registered

2023-04-24 10:17:21.528204+0700 PSUAKitSample[83000:15642975] 💚 DEBUG 10:17:21.528 [SIPSample void logCallBack(int, const char *, int):1034] sip_endpoint.c .Module "mod-PSUA-log" registered
2023-04-24 10:17:21.529375+0700 PSUAKitSample[83000:15642817] 10:17:21.529 sip_endpoint.c .Module "mod-tsx-layer" registered

2023-04-24 10:17:21.529477+0700 PSUAKitSample[83000:15642975] 💚 DEBUG 10:17:21.529 [SIPSample void logCallBack(int, const char *, int):1034] sip_endpoint.c .Module "mod-tsx-layer" registered
2023-04-24 10:17:21.529491+0700 PSUAKitSample[83000:15642817] 10:17:21.529 sip_endpoint.c .Module "mod-stateful-util" registered

2023-04-24 10:17:21.529592+0700 PSUAKitSample[83000:15642975] 💚 DEBUG 10:17:21.530 [SIPSample void logCallBack(int, const char *, int):1034] sip_endpoint.c .Module "mod-stateful-util" registered
2023-04-24 10:17:21.529895+0700 PSUAKitSample[83000:15642817] 10:17:21.529 sip_endpoint.c .Module "mod-ua" registered

2023-04-24 10:17:21.530024+0700 PSUAKitSample[83000:15642975] 💚 DEBUG 10:17:21.530 [SIPSample void logCallBack(int, const char *, int):1034] sip_endpoint.c .Module "mod-ua" registered
2023-04-24 10:17:21.530068+0700 PSUAKitSample[83000:15642817] 10:17:21.530 sip_endpoint.c .Module "mod-100rel" registered

2023-04-24 10:17:21.530181+0700 PSUAKitSample[83000:15642817] 10:17:21.530 sip_endpoint.c .Module "mod-pjsua" registered

2023-04-24 10:17:21.530217+0700 PSUAKitSample[83000:15642975] 💚 DEBUG 10:17:21.530 [SIPSample void logCallBack(int, const char *, int):1034] sip_endpoint.c .Module "mod-100rel" registered
2023-04-24 10:17:21.530283+0700 PSUAKitSample[83000:15642975] 💚 DEBUG 10:17:21.530 [SIPSample void logCallBack(int, const char *, int):1034] sip_endpoint.c .Module "mod-PSUA" registered
2023-04-24 10:17:21.530865+0700 PSUAKitSample[83000:15642817] 10:17:21.530 sip_endpoint.c .Module "mod-invite" registered

2023-04-24 10:17:21.530970+0700 PSUAKitSample[83000:15642975] 💚 DEBUG 10:17:21.531 [SIPSample void logCallBack(int, const char *, int):1034] sip_endpoint.c .Module "mod-invite" registered
2023-04-24 10:17:21.677206+0700 PSUAKitSample[83000:15642817] 10:17:21.677 coreaudio_dev.c .. dev_id 0: iPhone IO device (in=1, out=1) 8000Hz

2023-04-24 10:17:21.677497+0700 PSUAKitSample[83000:15642975] 💚 DEBUG 10:17:21.677 [SIPSample void logCallBack(int, const char *, int):1034] coreaudio_dev.c .. dev_id 0: iPhone IO device (in=1, out=1) 8000Hz
2023-04-24 10:17:21.677588+0700 PSUAKitSample[83000:15642817] 10:17:21.677 coreaudio_dev.c ..core audio initialized

2023-04-24 10:17:21.677804+0700 PSUAKitSample[83000:15642975] 💚 DEBUG 10:17:21.678 [SIPSample void logCallBack(int, const char *, int):1034] coreaudio_dev.c ..core audio initialized
2023-04-24 10:17:21.678538+0700 PSUAKitSample[83000:15642817] 10:17:21.678 pjlib ..select() I/O Queue created (0x1060684a8)

2023-04-24 10:17:21.678743+0700 PSUAKitSample[83000:15642975] 💚 DEBUG 10:17:21.679 [SIPSample void logCallBack(int, const char *, int):1034] pjlib ..select() I/O Queue created (0x1060684a8)
2023-04-24 10:17:21.683380+0700 PSUAKitSample[83000:15642817] 10:17:21.683 pjsua_vid.c ..Initializing video subsystem..

2023-04-24 10:17:21.683585+0700 PSUAKitSample[83000:15642975] 💚 DEBUG 10:17:21.683 [SIPSample void logCallBack(int, const char *, int):1034] PSUA_vid.c ..Initializing video subsystem..
2023-04-24 10:17:21.684058+0700 PSUAKitSample[83000:15642817] 10:17:21.684 vid_conf.c ...Created video conference bridge with 32 ports

2023-04-24 10:17:21.684260+0700 PSUAKitSample[83000:15642975] 💚 DEBUG 10:17:21.684 [SIPSample void logCallBack(int, const char *, int):1034] vid_conf.c ...Created video conference bridge with 32 ports
2023-04-24 10:17:21.684983+0700 PSUAKitSample[83000:15642817] 10:17:21.684 openh264.cpp ...OpenH264 codec initialized

2023-04-24 10:17:21.685168+0700 PSUAKitSample[83000:15642975] 💚 DEBUG 10:17:21.685 [SIPSample void logCallBack(int, const char *, int):1034] openh264.cpp ...OpenH264 codec initialized
2023-04-24 10:17:21.685237+0700 PSUAKitSample[83000:15642817] 10:17:21.685 opengl_dev.c ...OpenGL device initialized

2023-04-24 10:17:21.685370+0700 PSUAKitSample[83000:15642975] 💚 DEBUG 10:17:21.685 [SIPSample void logCallBack(int, const char *, int):1034] opengl_dev.c ...OpenGL device initialized
2023-04-24 10:17:21.715616+0700 PSUAKitSample[83000:15642817] 10:17:21.715 darwin_dev.m ...Darwin video initialized with 5 devices:

2023-04-24 10:17:21.715796+0700 PSUAKitSample[83000:15642975] 💚 DEBUG 10:17:21.716 [SIPSample void logCallBack(int, const char *, int):1034] darwin_dev.m ...Darwin video initialized with 5 devices:
2023-04-24 10:17:21.715812+0700 PSUAKitSample[83000:15642817] 10:17:21.715 darwin_dev.m ... 0: [Renderer] iOS - UIView

2023-04-24 10:17:21.715917+0700 PSUAKitSample[83000:15642975] 💚 DEBUG 10:17:21.716 [SIPSample void logCallBack(int, const char *, int):1034] darwin_dev.m ... 0: [Renderer] iOS - UIView
2023-04-24 10:17:21.715921+0700 PSUAKitSample[83000:15642817] 10:17:21.715 darwin_dev.m ... 1: [Capturer] AVF - Front Camera

2023-04-24 10:17:21.716006+0700 PSUAKitSample[83000:15642975] 💚 DEBUG 10:17:21.716 [SIPSample void logCallBack(int, const char *, int):1034] darwin_dev.m ... 1: [Capturer] AVF - Front Camera
2023-04-24 10:17:21.716033+0700 PSUAKitSample[83000:15642817] 10:17:21.716 darwin_dev.m ... 2: [Capturer] AVF - Back Camera

2023-04-24 10:17:21.716137+0700 PSUAKitSample[83000:15642817] 10:17:21.716 darwin_dev.m ... 3: [Capturer] AVF - Back Dual Camera

2023-04-24 10:17:21.716152+0700 PSUAKitSample[83000:15642975] 💚 DEBUG 10:17:21.716 [SIPSample void logCallBack(int, const char *, int):1034] darwin_dev.m ... 2: [Capturer] AVF - Back Camera
2023-04-24 10:17:21.716218+0700 PSUAKitSample[83000:15642975] 💚 DEBUG 10:17:21.716 [SIPSample void logCallBack(int, const char *, int):1034] darwin_dev.m ... 3: [Capturer] AVF - Back Dual Camera
2023-04-24 10:17:21.716247+0700 PSUAKitSample[83000:15642817] 10:17:21.716 darwin_dev.m ... 4: [Capturer] AVF - Back Telephoto Camera

2023-04-24 10:17:21.716375+0700 PSUAKitSample[83000:15642975] 💚 DEBUG 10:17:21.716 [SIPSample void logCallBack(int, const char *, int):1034] darwin_dev.m ... 4: [Capturer] AVF - Back Telephoto Camera
2023-04-24 10:17:21.716409+0700 PSUAKitSample[83000:15642817] 10:17:21.716 colorbar_dev.c ...Colorbar video src initialized with 2 device(s):

2023-04-24 10:17:21.716673+0700 PSUAKitSample[83000:15642817] 10:17:21.716 colorbar_dev.c ... 0: Colorbar generator

2023-04-24 10:17:21.716764+0700 PSUAKitSample[83000:15642975] 💚 DEBUG 10:17:21.717 [SIPSample void logCallBack(int, const char *, int):1034] colorbar_dev.c ...Colorbar video src initialized with 2 device(s):
2023-04-24 10:17:21.716918+0700 PSUAKitSample[83000:15642817] 10:17:21.716 colorbar_dev.c ... 1: Colorbar-active

2023-04-24 10:17:21.716938+0700 PSUAKitSample[83000:15642975] 💚 DEBUG 10:17:21.717 [SIPSample void logCallBack(int, const char *, int):1034] colorbar_dev.c ... 0: Colorbar generator
2023-04-24 10:17:21.717192+0700 PSUAKitSample[83000:15642975] 💚 DEBUG 10:17:21.717 [SIPSample void logCallBack(int, const char *, int):1034] colorbar_dev.c ... 1: Colorbar-active
2023-04-24 10:17:21.717528+0700 PSUAKitSample[83000:15642817] 10:17:21.717 sip_endpoint.c .Module "mod-evsub" registered

2023-04-24 10:17:21.717645+0700 PSUAKitSample[83000:15642975] 💚 DEBUG 10:17:21.718 [SIPSample void logCallBack(int, const char *, int):1034] sip_endpoint.c .Module "mod-evsub" registered
2023-04-24 10:17:21.717710+0700 PSUAKitSample[83000:15642817] 10:17:21.717 sip_endpoint.c .Module "mod-presence" registered



-
how can i stop ffmpeg when no new frame come to /dev/video0
17 mai 2022, par itirou tarouI am now modifying stream from camera with our program(programA) and output as .ts files like below.


camera => programA => /dev/video0 => ffmpeg => .ts files


When camera stopped, programA stop automatically and no new frame arrive to /dev/video0.
I want ffmpeg stop automatically in such situation.
What ffmpeg option should I use ?
Currently I'm using option below, but ffmpeg doesn't stop.


ffmpeg -f video4linux2 -i /dev/video0 -vsync vfr -f hls -c:v h264_nvenc out.m3u8



Edited :

I tried to invalidate /dev/video0 but it failed like below.

# modprobe -r v4l2loopback
modprobe: FATAL: Module v4l2loopback is in use.



After I stopped programA and ffmpeg, the command success.

ProgramA is kicked by systemd service and restart automatically when it stopped.

ffmpeg is kicked by programB, but programB doesn't control programA.

But it sounds like good idea to inform B so B can kill ffmpeg.

I'll try that way. Thank you.