Recherche avancée

Médias (1)

Mot : - Tags -/publicité

Autres articles (39)

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

  • Installation en mode ferme

    4 février 2011, par

    Le mode ferme permet d’héberger plusieurs sites de type MediaSPIP en n’installant qu’une seule fois son noyau fonctionnel.
    C’est la méthode que nous utilisons sur cette même plateforme.
    L’utilisation en mode ferme nécessite de connaïtre un peu le mécanisme de SPIP contrairement à la version standalone qui ne nécessite pas réellement de connaissances spécifique puisque l’espace privé habituel de SPIP n’est plus utilisé.
    Dans un premier temps, vous devez avoir installé les mêmes fichiers que l’installation (...)

  • De l’upload à la vidéo finale [version standalone]

    31 janvier 2010, par

    Le chemin d’un document audio ou vidéo dans SPIPMotion est divisé en trois étapes distinctes.
    Upload et récupération d’informations de la vidéo source
    Dans un premier temps, il est nécessaire de créer un article SPIP et de lui joindre le document vidéo "source".
    Au moment où ce document est joint à l’article, deux actions supplémentaires au comportement normal sont exécutées : La récupération des informations techniques des flux audio et video du fichier ; La génération d’une vignette : extraction d’une (...)

Sur d’autres sites (4966)

  • dts to m4a (aac) ffmpeg to qaac output issue

    10 avril 2014, par user8979

    Looking to encode 2 dts 5.1 audio sources (Sonic Landscape and The Digital Experience) to m4a (aac) 5.1 with qaac 2.35. Input piped to qaac using :

    ffmpeg -report -loglevel verbose -i "input.file" -vn -f wav -codec:a pcm_f32le - | qaac --cvbr 160 --quality 2 --rate=keep --ignorelength --no-delay - -o "output.m4a"

    • Sonic Landscape duration : 18.848s, qaac output duration : 18.859s

      • output .m4a duration mismatch
      • mediainfo reports output is 2ch while mediatab and ffmpeg report output is 5.1ch (lfe)

    • The Digital Experience duration : 32.875s, qaac output duration : 32.875s

      • mediainfo reports output is 2ch while mediatab and ffmpeg report output is 5.1ch (lfe)

    1. what caused the duration mismatch in the first one ? how can it be fixed ?
    2. is the output 2ch or 5.1ch ?
      • if it is 2ch, what qaac option(s) leave the channels in output same as input ?
      • if the output is 5.1ch, does qaac then always preserve channels unless explicitly told otherwise ?
  • pyInstaller : Pack binary executable inside project's executable to run

    18 décembre 2023, par zur

    TLDR ;

    


    I would like to pack the ffmpeg executable inside my own executable. Currently I am getting

    


    FileNotFoundError: [Errno 2] No such file or directory: 'ffmpeg'
Skipping ./testFile202312061352.mp4 due to FileNotFoundError: [Errno 2] No such file or directory: 'ffmpeg'


    


    Details :

    


    I am creating executable file using following command :

    


    pyinstaller cli.py \&#xA;  --onefile \&#xA;  --add-binary /Users/<machineuser>/anaconda3/envs/my_env/bin/ffmpeg:bin&#xA;</machineuser>

    &#xA;

    The code that uses ffmpeg is not authored by me. And I would like to keep that part the same.

    &#xA;

    When I run from command line while conda environment is active I can successfully run it as python (or perhaps anaconda) knows where the binaries are. I have a pretty empty cli.py. That seems to be the entry point and I hope if it is possible I can set the bin directory's path there ...

    &#xA;

    I am able to successfully run the application like following :

    &#xA;

    (my_env) machineUser folder % "dist/cli_mac_001202312051431" ./testFile202312061352.mp4&#xA;

    &#xA;

    I would like to run like following :

    &#xA;

    (base) machineUser folder % "dist/cli_mac_001202312051431" ./testFile202312061352.mp4&#xA;

    &#xA;

    I would like to keep the world out side my executable's tmp folder the same. I would not want to change something that will be "left behind" after the exec is terminated.

    &#xA;

    Question :

    &#xA;

    Can some one please mention how to modify the pyinstaller command or what to change in cli.py to achieve it successfully ?

    &#xA;

  • How to write a text in a frame using ffmpeg

    21 février 2024, par Jorge Augusto Wilchen

    I need to write a text in every frame before write in the video file, this text will be passed as a argument (std::string or char, whatever you want to best solution). For example, write "Hello World" 24px, color yellow, position 30x30.

    &#xA;

    How can i do this ?

    &#xA;

    This is my function that read frames to a AVPacket and write in the video file :

    &#xA;

    bool VideoRecorder::record_video()&#xA;{&#xA;    if (recording) {&#xA;        AVPacket packet;&#xA;&#xA;        while (recording &amp;&amp; av_read_frame(inputFormatContext, &amp;packet) >= 0) {&#xA;            AVStream* in_stream = inputFormatContext->streams[packet.stream_index];&#xA;            AVStream* out_stream = outputFormatContext->streams[0];&#xA;&#xA;            // Adjustment of DTS and PTS to ensure increasing monoticity&#xA;            if (packet.pts != AV_NOPTS_VALUE) {&#xA;                packet.pts = av_rescale_q_rnd(packet.pts, in_stream->time_base, out_stream->time_base, AVRounding(AV_ROUND_NEAR_INF | AV_ROUND_PASS_MINMAX));&#xA;            }&#xA;&#xA;            if (packet.dts != AV_NOPTS_VALUE) {&#xA;                packet.dts = av_rescale_q_rnd(packet.dts, in_stream->time_base, out_stream->time_base, AVRounding(AV_ROUND_NEAR_INF | AV_ROUND_PASS_MINMAX));&#xA;            }&#xA;&#xA;            packet.duration = av_rescale_q(packet.duration, in_stream->time_base, out_stream->time_base);&#xA;&#xA;            packet.stream_index = 0;&#xA;&#xA;            av_interleaved_write_frame(outputFormatContext, &amp;packet);&#xA;&#xA;            av_packet_unref(&amp;packet);&#xA;        }&#xA;&#xA;&#xA;        return true;&#xA;    }&#xA;&#xA;    std::cerr &lt;&lt; "Error recording video. Recording not started or already stopped." &lt;&lt; std::endl;&#xA;    return false;&#xA;}&#xA;

    &#xA;