Recherche avancée

Médias (3)

Mot : - Tags -/pdf

Autres articles (56)

  • Multilang : améliorer l’interface pour les blocs multilingues

    18 février 2011, par

    Multilang 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.

  • Ajouter des informations spécifiques aux utilisateurs et autres modifications de comportement liées aux auteurs

    12 avril 2011, par

    La manière la plus simple d’ajouter des informations aux auteurs est d’installer le plugin Inscription3. Il permet également de modifier certains comportements liés aux utilisateurs (référez-vous à sa documentation pour plus d’informations).
    Il est également possible d’ajouter des champs aux auteurs en installant les plugins champs extras 2 et Interface pour champs extras.

  • List of compatible distributions

    26 avril 2011, par

    The table below is the list of Linux distributions compatible with the automated installation script of MediaSPIP. Distribution nameVersion nameVersion number Debian Squeeze 6.x.x Debian Weezy 7.x.x Debian Jessie 8.x.x Ubuntu The Precise Pangolin 12.04 LTS Ubuntu The Trusty Tahr 14.04
    If you want to help us improve this list, you can provide us access to a machine whose distribution is not mentioned above or send the necessary fixes to add (...)

Sur d’autres sites (8329)

  • FFMPEG Debug "Invalid data found when processing input"

    29 septembre 2020, par dgcipp

    How can I debug this error ? I am trying to display a vp8-encoded video stream (TCP) from Android (x86) to my PC but I got this message from ffplay : "tcp ://10.8.0.3:49152 ? listen : Invalid data found when processing input"

    


    With h264 it works and the same code in an android device works with vp8 too.

    


    Command in the server :

    


    ffplay -i tcp://10.8.0.3:49152?listen


    


    I have tried adding verbosity or log-level debug, but it shows the same. How can I get a detailed error ?

    


    enter image description here

    


  • "invalid argument" for av_buffersrc_write_frame / av_buffersrc_add_frame

    1er février 2017, par TheSHEEEP

    I 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.

  • Why do I get "method DESCRIBE failed : 401 Unauthorized "

    28 juillet 2021, par TheOliveTurtle

    Let 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 !