Recherche avancée

Médias (1)

Mot : - Tags -/3GS

Autres articles (16)

  • Les formats acceptés

    28 janvier 2010, par

    Les 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 (...)

  • Ajouter notes et légendes aux images

    7 février 2011, par

    Pour pouvoir ajouter notes et légendes aux images, la première étape est d’installer le plugin "Légendes".
    Une fois le plugin activé, vous pouvez le configurer dans l’espace de configuration afin de modifier les droits de création / modification et de suppression des notes. Par défaut seuls les administrateurs du site peuvent ajouter des notes aux images.
    Modification lors de l’ajout d’un média
    Lors de l’ajout d’un média de type "image" un nouveau bouton apparait au dessus de la prévisualisation (...)

  • Gestion générale des documents

    13 mai 2011, par

    MédiaSPIP ne modifie jamais le document original mis en ligne.
    Pour chaque document mis en ligne il effectue deux opérations successives : la création d’une version supplémentaire qui peut être facilement consultée en ligne tout en laissant l’original téléchargeable dans le cas où le document original ne peut être lu dans un navigateur Internet ; la récupération des métadonnées du document original pour illustrer textuellement le fichier ;
    Les tableaux ci-dessous expliquent ce que peut faire MédiaSPIP (...)

Sur d’autres sites (4942)

  • doc/muxers/image2 : drop unmatched quote in example

    11 mai 2023, par Andriy Utkin
    doc/muxers/image2 : drop unmatched quote in example
    

    Percent sign is not a special character in popular shells, so the
    quoting isn't necessary.

    • [DH] doc/muxers.texi
  • How to add Qt to an existing C program and compile ?

    26 juin 2015, par El Sampsa

    I have a small Qt program I have compiled with qmake and make. When I launch make, I get the following commands for compilation :

    g++ -c -m64 -pipe -O2 -Wall -W -D_REENTRANT -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++-64 -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui -I/usr/include/qt4 -I. -I/usr/lib/x86_64-linux-gnu -I/usr/include/SDL -I. -o simpleqt.o simpleqt.cpp

    (.. lets call that (**)) and

    g++ -m64 -Wl,-O1 -o qt simpleqt.o -L/usr/lib/x86_64-linux-gnu -lSDL -lX11 -lQtGui -lQtCore -lpthread

    .. and the program is compiled without problems.

    On the other hand, I have the ffmpeg library which has the "ffplay" program. I want to put some Qt things into ffplay. In the ffmpeg config files I tell to the make process (using "common.mak") that it should be verbose and when issuing "make ffplay", it gives me the following monster :

    gcc -I. -I./ -D_ISOC99_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600 -DZLIB_CONST -I/home/sampsa/ffmpeg/build/include -std=c99 -fomit-frame-pointer -pthread -I/usr/include/freetype2 -I/usr/include/fribidi -I/usr/include/freetype2 -D_GNU_SOURCE=1 -D_REENTRANT -I/usr/include/SDL -g -Wdeclaration-after-statement -Wall -Wdisabled-optimization -Wpointer-arith -Wredundant-decls -Wwrite-strings -Wtype-limits -Wundef -Wmissing-prototypes -Wno-pointer-to-int-cast -Wstrict-prototypes -Wempty-body -Wno-parentheses -Wno-switch -Wno-format-zero-length -Wno-pointer-sign -O3 -fno-math-errno -fno-signed-zeros -fno-tree-vectorize -Werror=format-security -Werror=implicit-function-declaration -Werror=missing-prototypes -Werror=return-type -Werror=vla -Wformat -Wno-maybe-uninitialized -D_GNU_SOURCE=1 -D_REENTRANT -I/usr/include/SDL -MMD -MF ffplay.d -MT ffplay.o -c -o ffplay.o ffplay.c

    (lets call that monster (++)).

    So far, so good, I have two commands, one (**) for compiling Qt programs and another one (++) for another project (in this case, ffmpeg’s ffplay)

    How do I combine these two ?

    I have tried merging the flags in (**) into command (++). It compiles OK, but the moment I am adding

    #include <qtgui>
    </qtgui>

    into "ffplay.c", all hell breaks loose and the compiler tells me (among many other things) :

    In file included from /usr/include/qt4/QtCore/qobjectdefs.h:45:0,
    from /usr/include/qt4/QtCore/qobject.h:47,
    from /usr/include/qt4/QtCore/qabstracteventdispatcher.h:45,
    from /usr/include/qt4/QtCore/QtCore:3,
    from /usr/include/qt4/QtGui/QtGui:3,
    from ffplay2.c:61 :
    /usr/include/qt4/QtCore/qnamespace.h:51:1 : warning : return type defaults to ‘int’ [enabled by default]
    QT_MODULE(Core)
    ^
    /usr/include/qt4/QtCore/qnamespace.h:51:1 : warning : function declaration isn’t a prototype [-Wstrict-prototypes]
    /usr/include/qt4/QtCore/qnamespace.h : In function ‘QT_MODULE’ :
    /usr/include/qt4/QtCore/qnamespace.h:54:1 : error : unknown type name ‘namespace’
    namespace
    ^
    ...
    ...

    If I combine flags in (**) to (++) and change the compiler from "gcc" to "g++", I get all kinds of errors, this time related to the "ffplay.c" source code.

    What is going on ?

  • Nodejs youtube-dl ffmpeg audio stream

    19 septembre 2015, par Majster

    I have an issue with streaming video from YouTube. I have a http server which attempts to grab the raw video url, pull out the audio, convert it to mp3 and stream it to clients. The issue is that I’m not getting any audio on my client. Code is below (it’s all work in progress so there’s a lot of hardcoded stuff in there).

    // The obvious stuff
    var exec = require('child_process').exec;
    var spawn = require('child_process').spawn;
    var request = require('request');
    var http = require('http');

    //Listen for requests
    var server = http.createServer(function(req, response) {
      //This command runs youtube-dl and gets the video url
      var command = './node_modules/youtube-dl/bin/youtube-dl --simulate --get-url http://www.youtube.com/watch?v=5qF_qbaWt3Q';
      var exc = exec(command, function(error, stdout, stderr) {
         var downloadUrl = stdout.toString(); //Convert the buffer to string
         downloadUrl = downloadUrl.substring(0, downloadUrl.length - 1); //And strip the '\n' sign at the end
         console.log("This thing is: '" + downloadUrl + "'");
         response.writeHead(200, {
            'Content-Type': 'audio/mpeg'
         }); //When this is mpeg3 browser will download a blank .mp3 file now it tries to stream it

         //Spawn the ffmpeg child process
         var child = spawn('ffmpeg', ['-i', 'pipe:0', '-acodec', 'libmp3lame','-f', 'mp3', '-']);
         child.stdout.pipe(response); //Pipe it so it writes to our response

         // fs.createReadStream(filePath).pipe(child.stdin); - this is a testing thing ---> fs is filesystem and filePath is a link to a file - works
         request({url: downloadUrl, headers: {'Youtubedl-no-compression': 'True'}}).pipe(child.stdin); //Request the data and pipe it to ffmpeg for processing
      });
    });

    I can provide any additional info if needed. But the thing works if I try to use a file instead of request call so there is no problem with ffmpeg and other settings. Is it possible that YouTube has a protection against downloading videos this way ? I tried to paste the URL of console.log into my browser and nothing happens - no video. How can I fix this ?