
Recherche avancée
Médias (1)
-
Somos millones 1
21 juillet 2014, par
Mis à jour : Juin 2015
Langue : français
Type : Video
Autres articles (75)
-
Le plugin : Podcasts.
14 juillet 2010, parLe problème du podcasting est à nouveau un problème révélateur de la normalisation des transports de données sur Internet.
Deux formats intéressants existent : Celui développé par Apple, très axé sur l’utilisation d’iTunes dont la SPEC est ici ; Le format "Media RSS Module" qui est plus "libre" notamment soutenu par Yahoo et le logiciel Miro ;
Types de fichiers supportés dans les flux
Le format d’Apple n’autorise que les formats suivants dans ses flux : .mp3 audio/mpeg .m4a audio/x-m4a .mp4 (...) -
ANNEXE : Les plugins utilisés spécifiquement pour la ferme
5 mars 2010, parLe site central/maître de la ferme a besoin d’utiliser plusieurs plugins supplémentaires vis à vis des canaux pour son bon fonctionnement. le plugin Gestion de la mutualisation ; le plugin inscription3 pour gérer les inscriptions et les demandes de création d’instance de mutualisation dès l’inscription des utilisateurs ; le plugin verifier qui fournit une API de vérification des champs (utilisé par inscription3) ; le plugin champs extras v2 nécessité par inscription3 (...)
-
Submit bugs and patches
13 avril 2011Unfortunately a software is never perfect.
If you think you have found a bug, report it using our ticket system. Please to help us to fix it by providing the following information : the browser you are using, including the exact version as precise an explanation as possible of the problem if possible, the steps taken resulting in the problem a link to the site / page in question
If you think you have solved the bug, fill in a ticket and attach to it a corrective patch.
You may also (...)
Sur d’autres sites (12003)
-
Error : "No such option : -l" when running yt-dlp
12 juin 2022, par garsonI have adapted code from this Stack Overflow answer to try to download a video and use ffmpeg to alter it


yt-dlp "https://www.youtube.com/watch?v=PtkqwslbLY8" -o ffmpeg -i in.mp4 -vcodec libx264 -crf 23 -preset fast -profile:v baseline \
-level 3 -refs 6 -vf "scale=640:-1,pad=iw:480:0:(oh-ih)/2,format=yuv420p" \
-acodec copy output.mp4



However, when I run this I'm getting the error :


yt-dlp: error: no such option: -l



Any ideas of how to fix this ?


-
Why do I get "method DESCRIBE failed : 401 Unauthorized "
28 juillet 2021, par TheOliveTurtleLet me explain my problem, I am trying to access different channels in a DVR system.
I have successfully gotten access to a single camera (channel 1) by using opencv as such :


public_link = 'rtsp://test:test@192.168.1.48/cam/realmonitor'

cap = cv2.VideoCapture(public_link, cv2.CAP_FFMPEG)



The problem is I can't access the other channels with these parameters :


public_link = 'rtsp://test:test@192.168.1.48/cam/realmonitor?channel=3&subtype=0'

cap = cv2.VideoCapture(public_link, cv2.CAP_FFMPEG)



I've tried the following links :


- 

- rtsp ://test:test@192.168.1.48/cam/realmonitor ?channel=3&subtype=0
- rtsp ://test:test@192.168.1.48/cam/realmonitor ?channel=3&subtype=1
- rtsp ://192.168.1.48/cam/realmonitor ?channel=3&subtype=0&authbasic=dGVzdDp0ZXN0








I get this following error :




[rtsp @ 00000201ce582cc0] method DESCRIBE failed : 401 Unauthorized




I've noticed that even if I test with this URL (rtsp ://test:test@192.168.1.48/blablabla) it works just fine ! (ONLY Channel #1) but when I insert the symbol '=' into the URL string, I get the above error.


It's really frustrating, Any sort of help would be much appreciated.


PS : the user 'test' has admin privileges in the system.


I've tried to run the test with plain ffmpeg command like such :

ffmpeg -loglevel debug -i "rtsp://test:test@192.168.1.48/cam/monitor?channel=3&subtype=0" ./folder/output.m3u8


I get the following error :


PS C:\Users\cjhou> ffmpeg -loglevel debug -i "rtsp://test:test@192.168.1.48/cam/realmonitor?channel=3&subtype=0" .\folder\output.m3u8 
ffmpeg version 4.4-full_build-www.gyan.dev Copyright (c) 2000-2021 the FFmpeg developers
built with gcc 10.2.0 (Rev6, 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-librist --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-libbluray --enable-libcaca --enable-sdl2 --enable-libdav1d --enable-libzvbi --enable-librav1e --enable-libsvtav1 --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-libglslang --enable-vulkan --enable-opencl --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-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-ladspa --enable-libbs2b --enable-libflite --enable-libmysofa --enable-librubberband --enable-libsoxr --enable-chromaprint
libavutil 56. 70.100 / 56. 70.100
libavcodec 58.134.100 / 58.134.100
libavformat 58. 76.100 / 58. 76.100
libavdevice 58. 13.100 / 58. 13.100
libavfilter 7.110.100 / 7.110.100
libswscale 5. 9.100 / 5. 9.100
libswresample 3. 9.100 / 3. 9.100
libpostproc 55. 9.100 / 55. 9.100
Splitting the commandline.
Reading option '-loglevel' ... matched as option 'loglevel' (set logging level) with argument 'debug'.
Reading option '-i' ... matched as input url with argument 'rtsp://test:test@192.168.1.48/cam/realmonitor?channel=3&subtype=0'.
Reading option '.\folder\output.m3u8' ... matched as output url. 
Finished splitting the commandline. 
Parsing a group of options: global. 
Applying option loglevel (set logging level) with argument debug. 
Successfully parsed a group of options. 
Parsing a group of options: input url rtsp://test:test@192.168.1.48/cam/realmonitor?channel=3&subtype=0.
Successfully parsed a group of options.
Opening an input file: rtsp://houssem:152400@192.168.1.48/cam/realmonitor?channel=3&subtype=0.
[tcp @ 000001882b592240] No default whitelist set 
[tcp @ 000001882b592240] Original list of addresses: 
[tcp @ 000001882b592240] Address 192.168.1.48 port 554 
[tcp @ 000001882b592240] Interleaved list of addresses: 
[tcp @ 000001882b592240] Address 192.168.1.48 port 554 [tcp @ 000001882b592240] Starting connection attempt to 192.168.1.48 port 554 
[tcp @ 000001882b592240] Successfully connected to 192.168.1.48 port 554 
[rtsp @ 000001882b58f080] method DESCRIBE failed: 401 Unauthorized 
[rtsp @ 000001882b58f080] Cseq: 3 Server: Rtsp Server 960*576*30*4096

WWW-Authenticate: Digest realm="Surveillance Server", nonce="44976150"

rtsp://test:test@192.168.1.48/cam/realmonitor?channel=3&subtype=0: Server returned 401 Unauthorized (authorization failed)



With this command
ffplay "rtsp://test:test@192.168.1.48/cam/realmonitor?channel=3&subtype=0"
, I get this output :

PS C:\Users\cjhou> ffplay "rtsp://test:test@192.168.1.48/cam/realmonitor?channel=3&subtype=0"
ffplay version 4.4-full_build-www.gyan.dev Copyright (c) 2003-2021 the FFmpeg developers
 built with gcc 10.2.0 (Rev6, 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-librist --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-libbluray --enable-libcaca --enable-sdl2 --enable-libdav1d --enable-libzvbi --enable-librav1e --enable-libsvtav1 --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-libglslang --enable-vulkan --enable-opencl --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-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-ladspa --enable-libbs2b --enable-libflite --enable-libmysofa --enable-librubberband --enable-libsoxr --enable-chromaprint
 libavutil 56. 70.100 / 56. 70.100
 libavcodec 58.134.100 / 58.134.100
 libavformat 58. 76.100 / 58. 76.100
 libavdevice 58. 13.100 / 58. 13.100
 libavfilter 7.110.100 / 7.110.100
 libswscale 5. 9.100 / 5. 9.100
 libswresample 3. 9.100 / 3. 9.100
 libpostproc 55. 9.100 / 55. 9.100
[rtsp @ 000001d413d2f640] method DESCRIBE failed: 401 Unauthorized
rtsp://test:test@192.168.1.48/cam/realmonitor?channel=3&subtype=0: Server returned 401 Unauthorized (authorization failed)
 nan : 0.000 fd= 0 aq= 0KB vq= 0KB sq= 0B f=0/0



By the way, I am using this device :


- 

- Device Name : Digital Video Record
- Model Number : 16-CHANNEL
- Software Version : XVR_HI3521A_16_v6.1.52.1
- Date : Dec 19 2016 14:36:39










Hope this helps !


-
"invalid argument" for av_buffersrc_write_frame / av_buffersrc_add_frame
1er février 2017, par TheSHEEEPI am trying to use FFmpeg C api to create a filter to merge two audio streams. Trying to follow the code from here : Implementing a multiple input filter graph with the Libavfilter library in Android NDK
Everything seems to be alright.
However, as soon as I call av_buffersrc_write_frame (or av_buffersrc_add_frame or av_buffersrc_add_frame_flags, it doesn’t matter), FFmpeg just reports "invalid argument" and nothing else - an utterly useless error message, as it could mean everything.
Which argument is invalid ? What is wrong about it ? Nobody knows.I am initializing the graph and "grabbing" the contexts of the buffer sources for later use like this :
// Alloc filter graph
*filter_graph = avfilter_graph_alloc();
if ((*filter_graph) == NULL) {
os::log("Error: Cannot allocate filter graph.");
return AVERROR(ENOMEM);
}
// Building the filter string, ommitted
int result = avfilter_graph_parse2(*filter_graph, filterString.c_str(), &gis, &gos, NULL);
if (result < 0)
{
char errorBuf[1024];
av_make_error_string(errorBuf, 1024, result);
log("Error: Parsing filter string: %s", errorBuf);
return AVERROR_EXIT;
}
// Configure the graph
result = avfilter_graph_config(*filter_graph, NULL);
if (result < 0)
{
char errorBuf[1024];
av_make_error_string(errorBuf, 1024, result);
log("Error: Configuring filter graph: %s", errorBuf);
return AVERROR_EXIT;
}
// Get the buffer source and buffer sink contexts
for (unsigned int i = 0; i < (*filter_graph)->nb_filters; ++i) {
AVFilterContext* filterContext = (*filter_graph)->filters[i];
// The first two filters should be the abuffers
std::string name = filterContext->name;
if (name.find("abuffer") != name.npos && i < 2) {
inputs[i].buffer_source_context = filterContext;
}
// abuffersink is the one we need to get the converted frames from
if (name.find("abuffersink") != name.npos) {
*buffer_sink_context = filterContext;
}
}There are absolutely no errors in the initialization. At least FFmpeg has only this to say about it, which I think looks good :
FFMPEG: [Parsed_abuffer_0 @ 0ddfe840] Setting 'time_base' to value '1/48000'
FFMPEG: [Parsed_abuffer_0 @ 0ddfe840] Setting 'sample_rate' to value '48000'
FFMPEG: [Parsed_abuffer_0 @ 0ddfe840] Setting 'sample_fmt' to value '1'
FFMPEG: [Parsed_abuffer_0 @ 0ddfe840] Setting 'channel_layout' to value '3'
FFMPEG: [Parsed_abuffer_0 @ 0ddfe840] Setting 'channels' to value '2'
FFMPEG: [Parsed_abuffer_0 @ 0ddfe840] tb:1/48000 samplefmt:s16 samplerate:48000 chlayout:3
FFMPEG: [Parsed_abuffer_1 @ 0ddfe500] Setting 'time_base' to value '1/44100'
FFMPEG: [Parsed_abuffer_1 @ 0ddfe500] Setting 'sample_rate' to value '44100'
FFMPEG: [Parsed_abuffer_1 @ 0ddfe500] Setting 'sample_fmt' to value '1'
FFMPEG: [Parsed_abuffer_1 @ 0ddfe500] Setting 'channel_layout' to value '3'
FFMPEG: [Parsed_abuffer_1 @ 0ddfe500] Setting 'channels' to value '2'
FFMPEG: [Parsed_abuffer_1 @ 0ddfe500] tb:1/44100 samplefmt:s16 samplerate:44100 chlayout:3
FFMPEG: [Parsed_volume_3 @ 0ddfe580] Setting 'volume' to value '2'
FFMPEG: [Parsed_aresample_4 @ 0ddfe660] Setting 'sample_rate' to value '48000'
FFMPEG: [Parsed_aformat_5 @ 0ddfe940] Setting 'sample_fmts' to value 'fltp'
FFMPEG: [Parsed_aformat_5 @ 0ddfe940] Setting 'channel_layouts' to value '3'Then, I am trying to add a frame (that has been decoded beforehand) like this :
// "buffer_source_context" is one of the "inputs[i].buffer_source_context" from the code above
int result = av_buffersrc_write_frame( buffer_source_context,
input_frame);
if (result < 0) {
char errorBuf[1024];
av_make_error_string(errorBuf, 1024, result);
log("Error: While adding to buffer source: %s", errorBuf);
return AVERROR_EXIT;
}And the result is the mentioned "invalid argument".
The buffer_source_context is one of those noted from the code above and the input_frame is perfectly fine as well.
Before the filtering code was added, the same frame was passed to an encoder instead without a problem.I am at a loss at what the error could be here. I log FFmpeg errors at the lowest possible level, but not a single error is shown. I am using FFmpeg 3.1.1.