Recherche avancée

Médias (29)

Mot : - Tags -/Musique

Autres articles (32)

  • Menus personnalisés

    14 novembre 2010, par

    MediaSPIP utilise le plugin Menus pour gérer plusieurs menus configurables pour la navigation.
    Cela permet de laisser aux administrateurs de canaux la possibilité de configurer finement ces menus.
    Menus créés à l’initialisation du site
    Par défaut trois menus sont créés automatiquement à l’initialisation du site : Le menu principal ; Identifiant : barrenav ; Ce menu s’insère en général en haut de la page après le bloc d’entête, son identifiant le rend compatible avec les squelettes basés sur Zpip ; (...)

  • Use, discuss, criticize

    13 avril 2011, par

    Talk to people directly involved in MediaSPIP’s development, or to people around you who could use MediaSPIP to share, enhance or develop their creative projects.
    The bigger the community, the more MediaSPIP’s potential will be explored and the faster the software will evolve.
    A discussion list is available for all exchanges between users.

  • Encoding and processing into web-friendly formats

    13 avril 2011, par

    MediaSPIP automatically converts uploaded files to internet-compatible formats.
    Video files are encoded in MP4, Ogv and WebM (supported by HTML5) and MP4 (supported by Flash).
    Audio files are encoded in MP3 and Ogg (supported by HTML5) and MP3 (supported by Flash).
    Where possible, text is analyzed in order to retrieve the data needed for search engine detection, and then exported as a series of image files.
    All uploaded files are stored online in their original format, so you can (...)

Sur d’autres sites (4770)

  • Registration free (sxs) COM DirectShow filter

    21 septembre 2015, par caesay

    There are questions asking on how to get Registration free COM working, and this is not one of those. I have a DirectShow video source filter (catagory 860BB310-5D01-11d0-BD3B-00A0C911CE86) implemented in .Net with the help of an edited version of the code available here : Pure .Net DirectShow Filters by Maxim Kartavenkov.

    I need to get ffmpeg to recognize my .Net DirectShow filter as a video source using Registration Free COM (Side by Side / sxs). Built into the .Net framework is support for COM component servers, so theoretically as long as the manifests are correct, ffmpeg should detect the filters.

    Here is a snippet of the relevant sections of my manifest files currently.

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <assembly manifestversion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1">
    <assemblyidentity version="1.0.0.0" type="win32" processorarchitecture="*"></assemblyidentity>
    <dependency>
    <dependentassembly>
     <assemblyidentity version="1.0.0.0" publickeytoken="26A05D7C90FBA3E8"></assemblyidentity>
    </dependentassembly>
    </dependency>
    </assembly>
    &lt;?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestversion="1.0">
      <assemblyidentity version="1.0.0.0" publickeytoken="26A05D7C90FBA3E8"></assemblyidentity>
      <clrclass clsid="{65722BE6-3449-4628-ABD3-74B6864F9739}" progid="DShowVideoFilter.VideoCaptureFilter" threadingmodel="Both" runtimeversion="v2.0.50727"></clrclass>
      <file>
      </file>
      <file>
        <typelib tlbid="{B618E67B-64C8-48E9-9F94-F13214B76808}" version="1.0" helpdir="" flags="hasdiskimage"></typelib>
      </file>
    </assembly>

    So, I get no errors when running ffmpeg (like you would if there was a manifest error) - and I am confident that everything that is configured correctly (related to traditional sxs com loading), the problem I think (unconfirmed) is that ffmpeg loads DShow filters via DirectShow’s intelligent connect system, which requires the filter and pins to be registered. Here are some documents that talk about how filters need to be registered that I’ve found :

    Now, in Maxim Kartavenkov’s DShow base classes, he takes care of #2 automatically. Here is a significantly shortened version of the method that registers the filters implementing BaseFilter.

    [ComRegisterFunction]
    public static void RegisterFunction(Type _type)
    {
       AMovieSetup _setup = (AMovieSetup)Attribute.GetCustomAttribute(_type, typeof(AMovieSetup));
       BaseFilter _filter = (BaseFilter)Activator.CreateInstance(_type);
       string _name = _filter.Name;
       DsGuid _category = new DsGuid(_setup.Category);
       IFilterMapper2 _mapper2 = (IFilterMapper2)new FilterMapper2();

       RegFilter2 _reg2 = new RegFilter2();
       _reg2.dwVersion = (int)_setup.Version;
       _reg2.dwMerit = _setup.FilterMerit;
       _reg2.rgPins = IntPtr.Zero;
       _reg2.cPins = 0;

       IntPtr _register = Marshal.AllocCoTaskMem(Marshal.SizeOf(_reg2));
       Marshal.StructureToPtr(_reg2, _register, true);

       hr = _mapper2.RegisterFilter(_type.GUID, _name, IntPtr.Zero, _category, _instance, _register);

       Marshal.FreeCoTaskMem(_register);
    }

    That is the method (particularly mapper2.RegisterFilter) that allows ffmpeg to find the DShow filter when it is registered traditionally (with RegAsm) into the registry, which creates registry keys for the filter and pins as described by #2 link.

    tldr ;
    So the question is, how to emulate the function of RegisterFilter or the intelligent connect registry entries this within a manifest file as to allow the sxs context to find my DirectShow filter when ffmpeg searches for it.

  • Some Java Process objects finish and close, but some finish and stall

    28 mars 2020, par brendanw36

    My program uses ProcessBuilder to make various calls to ffmpeg. My problem is that with certain commands I can create a Process, have it run, and when it is done it will terminate/exit/close itself and the program will end whereas other commands will run and create a finished output (in my case it will finish encoding a file with no corruption or anything at the end of the video), but won’t close at which point I need to force terminate the program. I have tested the ffmpeg commands that I am running in Windows Command Prompt and they all run fine without need for user input or anything. I will show some examples of commands that do and don’t work, but ultimately what I need is a way to tell why certain Processes do and don’t work. You probably don’t even need to read the rest of this post if you know the inner workings of the Process class better than I do.

    How I create my processes :

    ProcessBuilder pb = new ProcessBuilder(commandGoesHere);
    Process p = pb.start();
    p.waitFor();

    Works :
    ffmpeg -i test.y4m -f segment -segment_times timecodeList .temp/sgmnt_%d.y4m

    This command takes a y4m(raw video format/large file size/1.7 GB for 53s of 720p video) and cuts it in to chunks.

    Doesn’t work (sometimes) :
    ffmpeg -i chunkname.y4m outputName.mkv

    This command takes the chunked video and encodes it as h.264/AVC video. When I create a process with this command it only works if the chunk is small in which case the Process will start, do its work, and close.

    Doesn’t work ever :
    ffmpeg -i test.mkv -c:v copy -f segment -segment_times timecodeList .temp/sgmnt_%d.mkv

    This command takes and h.264/AVC input video and cut it in to chunks, but this one doesn’t terminate/exit/close when it’s done. I’m forced to terminate the program which I do after seeing the Process’s CPU utilization drop to 0% in Task Manager. When I force terminate the program and check the output folder, all the chunks are there and not corrupted so I know it finished running successfully.

  • FFMPEG show audio frequency waves with border

    13 juillet 2020, par Nikhil Solanki

    I am trying to generate sine waves or audio frequency like this using this command :

    &#xA;

    ffmpeg -i combine2.mp4 -i image1.png -i song.mp3 -t 20 -filter_complex "[0]split=2[color][alpha]; [color]crop=iw/2:ih:0:0[color]; [alpha]crop=iw/2:ih:iw/2:ih[alpha]; [color][alpha]alphamerge[v1];&#xA;[1]scale=540:960, setsar=1[v2];&#xA;[2]showfreqs=s=540x100:mode=line:ascale=sqrt:colors=white|red[v3];&#xA;[v2][v3] overlay=main_w-overlay_w:main_h-overlay_h-10[v4];&#xA;[v4][v1] overlay=1" output_video2.mp4 -y&#xA;

    &#xA;

    This command shows frequency of audio with white colour only and also its not smooth as above image. So, how can I generate waves like above image smooth and bordered ?

    &#xA;

    Output video :&#xA;screenshot

    &#xA;