Recherche avancée

Médias (91)

Autres articles (41)

  • Websites made ​​with MediaSPIP

    2 mai 2011, par

    This page lists some websites based on MediaSPIP.

  • Creating farms of unique websites

    13 avril 2011, par

    MediaSPIP platforms can be installed as a farm, with a single "core" hosted on a dedicated server and used by multiple websites.
    This allows (among other things) : implementation costs to be shared between several different projects / individuals rapid deployment of multiple unique sites creation of groups of like-minded sites, making it possible to browse media in a more controlled and selective environment than the major "open" (...)

  • Other interesting software

    13 avril 2011, par

    We 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 : (...)

Sur d’autres sites (7630)

  • Getting error "DLL load failed while importing rect : %1 is not a valid Win32 application" while importing package

    17 août 2020, par Sagar Donadkar

    I am using cython package to call Cpp API and in my cpp code i am using ffmpeg library and able to build my code successfully using bellow command

    


    python setup.py build_ext --inplace --compiler=msvc


    


    but when i try to import generated pyd file then i get error

    


    PS D:\SiVUE\Backend\Cython\demo> python&#xA;Python 3.8.3 (tags/v3.8.3:6f8c832, May 13 2020, 22:20:19) [MSC v.1925 32 bit (Intel)] on win32&#xA;Type "help", "copyright", "credits" or "license" for more information.&#xA;>>> import rect&#xA;Traceback (most recent call last):&#xA;  File "<stdin>", line 1, in <module>&#xA;ImportError: DLL load failed while importing rect: %1 is not a valid Win32 application.&#xA;>>> &#xA;</module></stdin>

    &#xA;

    My entire code is provided bellow

    &#xA;

    header file&#xA;#ifndef RECTANGLE_H&#xA;#define RECTANGLE_H&#xA;#include <iostream>&#xA;&#xA;extern "C"&#xA;{&#xA;    #include "libavformat/avformat.h"&#xA;    #include "libavutil/dict.h"&#xA;}&#xA;&#xA;using namespace std;&#xA;&#xA;namespace shapes &#xA;{&#xA;    class Rectangle {&#xA;        public:&#xA;            int x0, y0, x1, y1;&#xA;            Rectangle();&#xA;            Rectangle(int x0, int y0, int x1, int y1);&#xA;            ~Rectangle();&#xA;            int getArea();&#xA;            int ffmpegFile();&#xA;            void getSize(int* width, int* height);&#xA;            void move(int dx, int dy);&#xA;    };&#xA;}&#xA;&#xA;#endif&#xA;</iostream>

    &#xA;

    Rectangle.Cpp file in ffmpegFile() i am calling mostly ffmpeg API

    &#xA;

    &#xA;#include <iostream>&#xA;#include "Rectangle.hpp"&#xA;&#xA;namespace shapes {&#xA;    &#xA;&#xA;    // Default constructor&#xA;    Rectangle::Rectangle () {}&#xA;&#xA;    // Overloaded constructor&#xA;    Rectangle::Rectangle (int x0, int y0, int x1, int y1) {&#xA;        this->x0 = x0;&#xA;        this->y0 = y0;&#xA;        this->x1 = x1;&#xA;        this->y1 = y1;&#xA;    }&#xA;&#xA;    // Destructor&#xA;    Rectangle::~Rectangle () {}&#xA;&#xA;    // Return the area of the rectangle&#xA;    int Rectangle::getArea () {&#xA;        return 10;&#xA;    }&#xA;&#xA;    // Get the size of the rectangle.&#xA;    // Put the size in the pointer args&#xA;    void Rectangle::getSize (int *width, int *height) {&#xA;        (*width) = x1 - x0;&#xA;        (*height) = y1 - y0;&#xA;    }&#xA;&#xA;    // Move the rectangle by dx dy&#xA;    void Rectangle::move (int dx, int dy) {&#xA;        this->x0 &#x2B;= dx;&#xA;        this->y0 &#x2B;= dy;&#xA;        this->x1 &#x2B;= dx;&#xA;        this->y1 &#x2B;= dy;&#xA;    }&#xA;    int Rectangle::ffmpegFile()&#xA;    {&#xA;        AVFormatContext *fmt_ctx = NULL;&#xA;        AVDictionaryEntry *tag = NULL;&#xA;        int ret = 0;&#xA;        char* filename = "D:\\Discovery.mp4";&#xA;&#xA;        if ((ret = avformat_open_input(&amp;fmt_ctx, filename, NULL, NULL)))&#xA;            return ret;&#xA;&#xA;        if ((ret = avformat_find_stream_info(fmt_ctx, NULL)) &lt; 0) {&#xA;            av_log(NULL, AV_LOG_ERROR, "Cannot find stream information\n");&#xA;            return ret;&#xA;        }&#xA;&#xA;        while ((tag = av_dict_get(fmt_ctx->metadata, "", tag, AV_DICT_IGNORE_SUFFIX)))&#xA;            printf("%s=%s\n", tag->key, tag->value);&#xA;&#xA;        avformat_close_input(&amp;fmt_ctx);&#xA;        return ret;&#xA;    }&#xA;}&#xA;</iostream>

    &#xA;

    Rectangle.pxd file declaration for cpp file function and variable

    &#xA;

    cdef extern from "Rectangle.cpp":&#xA;    pass&#xA;cdef extern from "Rectangle.hpp" namespace "shapes":&#xA;    cdef cppclass Rectangle:&#xA;        Rectangle() except &#x2B;&#xA;        Rectangle(int, int, int, int) except &#x2B;&#xA;        int x0, y0, x1, y1&#xA;        int getArea()&#xA;        void getSize(int* width, int* height)&#xA;        void move(int, int)&#xA;        int ffmpegFile()&#xA;

    &#xA;

    rect.pyx file i am calling cpp API

    &#xA;

    # distutils: language = c&#x2B;&#x2B;&#xA;&#xA;from Rectangle cimport Rectangle&#xA;&#xA;cdef class PyRectangle:&#xA;    cdef Rectangle c_rect  # Hold a C&#x2B;&#x2B; instance which we&#x27;re wrapping&#xA;&#xA;    def __cinit__(self, int x0, int y0, int x1, int y1):&#xA;        self.c_rect = Rectangle(x0, y0, x1, y1)&#xA;&#xA;    def get_area(self):&#xA;        return self.c_rect.getArea()&#xA;&#xA;    def get_size(self):&#xA;        cdef int width, height&#xA;        self.c_rect.getSize(&amp;width, &amp;height)&#xA;        return width, height&#xA;&#xA;    def move(self):&#xA;        print(self.c_rect.ffmpegFile())&#xA;

    &#xA;

    setup.py&#xA;I provided pyx file and ffmpeg library path as well as include path

    &#xA;

    from distutils.core import setup&#xA;from setuptools import Extension&#xA;from Cython.Build import cythonize &#xA;&#xA;sfc_module = [Extension(&#x27;rect&#x27;, sources = [&#x27;rect.pyx&#x27;],&#xA;                       include_dirs = [&#x27;D:\\SiVUE\\Backend\\Cython\\demo\\ffmpeg\\include\\&#x27;],&#xA;                       library_dirs = [&#x27;D:\\SiVUE\\Backend\\Cython\\demo\\ffmpeg\\lib\\&#x27;],&#xA;                       libraries = [&#x27;avcodec&#x27;,&#x27;avdevice&#x27;,&#x27;avfilter&#x27;,&#x27;avformat&#x27;,&#x27;avutil&#x27;,&#x27;postproc&#x27;,&#x27;swresample&#x27;,&#x27;swscale&#x27;],&#xA;                       language=&#x27;c&#x2B;&#x2B;&#x27;)]&#xA;&#xA;setup(name = &#x27;superfastcode&#x27;, version = &#x27;1.0&#x27;,&#xA;    description = &#x27;Python Package with superfastcode C&#x2B;&#x2B; extension&#x27;,&#xA;    ext_modules = cythonize(sfc_module),&#xA;    include_dirs = [&#x27;D:\\SiVUE\\Backend\\Cython\\demo\\ffmpeg\\include\\&#x27;]&#xA;    )&#xA;

    &#xA;

    Thank You

    &#xA;

  • Unrecognized option 'crf 21' in ffmpeg

    18 août 2020, par Gustavo Borba

    I'm trying to convert a video with ffmpeg in a simple jar application, but I'm getting this Unrecognized option Error splitting the argument list : Option not found.

    &#xA;

    I'm doing the following :

    &#xA;

    List <string> command = new ArrayList<string>();&#xA;command.add("ffmpeg");&#xA;command.add("-y");&#xA;command.add("-i"); &#xA;command.add(myCustomFileClass.getInputFileName()); &#xA;command.add("-c:v libx264");&#xA;command.add("-preset slower");&#xA;command.add("-crf 21");&#xA;command.add("-c:a aac"); &#xA;command.add(myCustomFileClass.getOutputFileName());&#xA;logger.debug(command.toString().replaceAll(",", ""));&#xA;ProcessBuilder builder = new ProcessBuilder(command);&#xA;process = builder.start();&#xA;</string></string>

    &#xA;

    After that, I just read the output from the command with a buffered reader and put it on the debug logger. I'm getting this output :

    &#xA;

    ffmpeg version 4.2.4-1ubuntu0.1 Copyright (c) 2000-2020 the FFmpeg developers&#xA;built with gcc 9 (Ubuntu 9.3.0-10ubuntu2)&#xA;configuration: --prefix=/usr --extra-version=1ubuntu0.1 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --arch=amd64 --enable-gpl --disable-stripping --enable-avresample --disable-filter=resample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librsvg --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opencl --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-nvenc --enable-chromaprint --enable-frei0r --enable-libx264 --enable-shared&#xA;libavutil      56. 31.100 / 56. 31.100&#xA;libavcodec     58. 54.100 / 58. 54.100&#xA;libavformat    58. 29.100 / 58. 29.100&#xA;libavdevice    58.  8.100 / 58.  8.100&#xA;libavfilter     7. 57.100 /  7. 57.100&#xA;libavresample   4.  0.  0 /  4.  0.  0&#xA;libswscale      5.  5.100 /  5.  5.100&#xA;libswresample   3.  5.100 /  3.  5.100&#xA;libpostproc    55.  5.100 / 55.  5.100&#xA;Unrecognized option &#x27;crf 21&#x27;.&#xA;Error splitting the argument list: Option not found&#xA;

    &#xA;

    What's curious is that when I execute what's inside command.toString().replaceAll(",", "") in my terminal, the command executes without any error. It's only ocurring in the java application.

    &#xA;

    I saw similar posts of people suggesting updating ffmpe (which I don't think it's the case) and splitting the arguments, but it's alredy done. I tried to just eliminate the crf config, but it just changes the error to At least one output file must be specified.

    &#xA;

    This suggests that the problem is indeed a bad splitting, but I'm out of ideas.

    &#xA;

  • FFMPEG "Could not allocate memory" Errors through php

    10 décembre 2019, par Applepiee

    I’ve tried to find a solution online for days now but cannot find any solution.

    I just switched server (Intel Xeon to AMD) and since the switch I’ve not been able to get ffmpeg conversions working through the php script. ffmpeg was the exact same version and all php settings are set.

    All commands that the script executes (copied from log files) were tried in shell and executed with no problems.

    The errors look like this :

    [124] =>       handler_name    : Video Media Handler
       [125] =>     Stream #8:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 160 kb/s (default)
       [126] =>     Metadata:
       [127] =>       handler_name    : Sound Media Handler
       [128] => Stream mapping:
       [129] =>   Stream #0:0 (h264) -> concat:in0:v0
       [130] =>   Stream #1:0 (h264) -> concat:in1:v0
       [131] =>   Stream #2:0 (h264) -> concat:in2:v0
       [132] =>   Stream #3:0 (h264) -> concat:in3:v0
       [133] =>   Stream #4:0 (h264) -> concat:in4:v0
       [134] =>   Stream #5:0 (h264) -> concat:in5:v0
       [135] =>   Stream #6:0 (h264) -> concat:in6:v0
       [136] =>   Stream #7:0 (h264) -> concat:in7:v0
       [137] =>   scale -> Stream #0:0 (libvpx)
       [138] => Press [q] to stop, [?] for help
       [139] => [h264 @ 0x34f1dc0] get_buffer() failed
       [140] => [h264 @ 0x34f1dc0] thread_get_buffer() failed
       [141] => [h264 @ 0x34f1dc0] decode_slice_header error
       [142] => [h264 @ 0x34f1dc0] no frame!
       [143] => [h264 @ 0x350e680] Error splitting the input into NAL units.
       [144] => [h264 @ 0x352af40] Cannot allocate memory.
       [145] => [h264 @ 0x352af40] Could not allocate memory
       [146] => [h264 @ 0x352af40] h264_slice_header_init() failedError while decoding stream #0:0: Cannot allocate memory
       [147] => [h264 @ 0x352af40] Cannot allocate memory.
       [148] => [h264 @ 0x352af40] Could not allocate memory
       [149] => [h264 @ 0x352af40] h264_slice_header_init() failedError while decoding stream #0:0: Cannot allocate memory
       [150] => [h264 @ 0x352af40] Cannot allocate memory.
       [151] => [h264 @ 0x352af40] Could not allocate memory
       [152] => [h264 @ 0x352af40] h264_slice_header_init() failedError while decoding stream #0:0: Cannot allocate memory
       [153] => [h264 @ 0x352af40] Cannot allocate memory.
       [154] => [h264 @ 0x352af40] Could not allocate memory
       [155] => [h264 @ 0x352af40] h264_slice_header_init() failedError while decoding stream #0:0: Cannot allocate memory
       [156] => [h264 @ 0x352af40] Cannot allocate memory.
       [157] => [h264 @ 0x352af40] Could not allocate memory
    ...
    ..
     [211519] => [h264 @ 0x886a3c0] h264_slice_header_init() failedToo many errors when draining, this is a bug. Stop draining and force EOF.
       [211520] => Error while decoding stream #7:0: Internal bug, should not have happened
       [211521] => Cannot allocate memory.
       [211522] => sws: initFilter failed
       [211523] => [Parsed_scale_1 @ 0x8e0be40] Failed to configure output pad on Parsed_scale_1
       [211524] => Error reinitializing filters!
       [211525] => Error while filtering: Operation not permitted
       [211526] => Finishing stream 0:0 without any data written to it.
       [211527] => [libvpx @ 0x6f4c600] v1.8.1-301-g89375f031
       [211528] => Output #0, webm, to '/home/website/public_html/media/videos/tmb/2420/video_copy.webm':
       [211529] =>   Metadata:
       [211530] =>     major_brand     : isom
       [211531] =>     minor_version   : 512
       [211532] =>     compatible_brands: isomiso2avc1mp41
       [211533] =>     title           : Aibeya The Animation
       [211534] =>     encoder         : Lavf58.35.100
       [211535] =>     Chapter #0:0: start 0.000000, end 102.102000
       [211536] =>     Metadata:
       [211537] =>       title           : Intro
       [211538] =>     Chapter #0:1: start 102.102000, end 110.369000
       [211539] =>     Metadata:
       [211540] =>       title           : Title
       [211541] =>     Chapter #0:2: start 110.369000, end 312.179000
       [211542] =>     Metadata:
       [211543] =>       title           : Part 1
       [211544] =>     Chapter #0:3: start 312.179000, end 548.415000
       [211545] =>     Metadata:
       [211546] =>       title           : Part 2
       [211547] =>     Chapter #0:4: start 548.415000, end 706.831000
       [211548] =>     Metadata:
       [211549] =>       title           : Part 3
       [211550] =>     Chapter #0:5: start 706.831000, end 1011.052000
       [211551] =>     Metadata:
       [211552] =>       title           : Part 4
       [211553] =>     Chapter #0:6: start 1011.052000, end 1198.823000
       [211554] =>     Metadata:
       [211555] =>       title           : Part 5
       [211556] =>     Chapter #0:7: start 1198.823000, end 1501.408000
       [211557] =>     Metadata:
       [211558] =>       title           : Part 6
       [211559] =>     Chapter #0:8: start 1501.408000, end 1579.945000
       [211560] =>     Metadata:
       [211561] =>       title           : Part 7
       [211562] =>     Chapter #0:9: start 1579.945000, end 1654.293000
       [211563] =>     Metadata:
       [211564] =>       title           : Ending
       [211565] =>     Stream #0:0: Video: vp8 (libvpx), yuv420p, 400x240 [SAR 837:785 DAR 279:157], q=10-42, 250 kb/s, 23.98 fps, 1k tbn, 23.98 tbc (default)
       [211566] =>     Metadata:
       [211567] =>       encoder         : Lavc58.64.101 libvpx
       [211568] =>     Side data:
       [211569] =>       cpb: bitrate max/min/avg: 0/0/0 buffer size: 600000 vbv_delay: N/A
       [211570] => frame=    0 fps=0.0 q=0.0 Lsize=       1kB time=00:00:00.00 bitrate=N/A speed=   0x
       [211571] => video:0kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
       [211572] => Output file is empty, nothing was encoded (check -ss / -t / -frames parameters if used)
       [211573] => Conversion failed!
    )

    Command example used :

    ffmpeg_command is /usr/local/bin/ffmpeg -ss 100 -t 1 -i /home/website/public_html/media/videos/iphone/2407.mp4 -ss 197 -t 2 -i /home/website/public_html/media/videos/iphone/2407.mp4 -ss 294 -t 3 -i /home/website/public_html/media/videos/iphone/2407.mp4 -ss 391 -t 3 -i /home/website/public_html/media/videos/iphone/2407.mp4 -ss 488 -t 3 -i /home/website/public_html/media/videos/iphone/2407.mp4 -ss 585 -t 3 -i /home/website/public_html/media/videos/iphone/2407.mp4 -ss 682 -t 3 -i /home/website/public_html/media/videos/iphone/2407.mp4 -ss 779 -t 3 -i /home/website/public_html/media/videos/iphone/2407.mp4 -ss 876 -t 3 -i /home/website/public_html/media/videos/iphone/2407.mp4 -filter_complex "[0][1][2][3][4][5][6][7]concat=n=8:v=1:a=0",scale=400:240 -codec:v libx264 -unsharp -b:v 250k -maxrate 250k -bufsize 600k -qmin 10 -qmax 42 -threads 4 -an -y /home/website/public_html/media/videos/tmb/2407/video_copy.mp4

    PHP Info :
    PHP 5.6
    memory_limit 2001M
    max_execution_time 7200
    upload_max_filesize 2000M
    post_max_size 2000M
    max_input_time 7200
    exec is not disabled

    Server info
    CentOS Linux 7 (Core)
    ADVANCE-4 - AMD Epyc 7351P - 128GB DDR4 ECC 2400MHz - 2x HDD SATA 4TB Datacenter Class + 2x SSD NVMe 500GB Enterprise Class Soft RAID

    All help is really appreciated ! Thanks in advance