Recherche avancée

Médias (0)

Mot : - Tags -/presse-papier

Aucun média correspondant à vos critères n’est disponible sur le site.

Autres articles (18)

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

  • Demande de création d’un canal

    12 mars 2010, par

    En fonction de la configuration de la plateforme, l’utilisateur peu avoir à sa disposition deux méthodes différentes de demande de création de canal. La première est au moment de son inscription, la seconde, après son inscription en remplissant un formulaire de demande.
    Les deux manières demandent les mêmes choses fonctionnent à peu près de la même manière, le futur utilisateur doit remplir une série de champ de formulaire permettant tout d’abord aux administrateurs d’avoir des informations quant à (...)

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

Sur d’autres sites (4489)

  • fate/mov : force the native av1 decoder for the avif tests

    9 janvier 2024, par James Almer
    fate/mov : force the native av1 decoder for the avif tests
    

    Signed-off-by : James Almer <jamrial@gmail.com>

    • [DH] tests/fate/mov.mak
    • [DH] tests/ref/fate/mov-avif-demux-still-image-1-item
    • [DH] tests/ref/fate/mov-avif-demux-still-image-multiple-items
  • how to fix Error 'FFmpegPCMAudio' object has no attribute '_process'

    30 novembre 2023, par Ma Me
    from ast import alias&#xA;import discord&#xA;from discord.ext import commands&#xA;from youtubesearchpython import VideosSearch&#xA;from yt_dlp import YoutubeDL&#xA;import asyncio&#xA;&#xA;class music_cog(commands.Cog):&#xA;    def __init__(self, bot):&#xA;        self.bot = bot&#xA;    &#xA;        #all the music related stuff&#xA;        self.is_playing = False&#xA;        self.is_paused = False&#xA;&#xA;        # 2d array containing [song, channel]&#xA;        self.music_queue = []&#xA;        self.YDL_OPTIONS = {&#x27;format&#x27;: &#x27;bestaudio/best&#x27;}&#xA;        self.FFMPEG_OPTIONS = {&#x27;options&#x27;: &#x27;-vn&#x27;}&#xA;&#xA;        self.vc = None&#xA;        self.ytdl = YoutubeDL(self.YDL_OPTIONS)&#xA;&#xA;     #searching the item on youtube&#xA;    def search_yt(self, item):&#xA;        if item.startswith("https://"):&#xA;            title = self.ytdl.extract_info(item, download=False)["title"]&#xA;            return{&#x27;source&#x27;:item, &#x27;title&#x27;:title}&#xA;        search = VideosSearch(item, limit=1)&#xA;        return{&#x27;source&#x27;:search.result()["result"][0]["link"], &#x27;title&#x27;:search.result()["result"][0]["title"]}&#xA;&#xA;    async def play_next(self):&#xA;        if len(self.music_queue) > 0:&#xA;            self.is_playing = True&#xA;&#xA;            #get the first url&#xA;            m_url = self.music_queue[0][0][&#x27;source&#x27;]&#xA;&#xA;            #remove the first element as you are currently playing it&#xA;            self.music_queue.pop(0)&#xA;            loop = asyncio.get_event_loop()&#xA;            data = await loop.run_in_executor(None, lambda: self.ytdl.extract_info(m_url, download=False))&#xA;            song = data[&#x27;url&#x27;]&#xA;            self.vc.play(discord.FFmpegPCMAudio(song, executable= "ffmpeg.exe", **self.FFMPEG_OPTIONS), after=lambda e: asyncio.run_coroutine_threadsafe(self.play_next(), self.bot.loop))&#xA;            &#xA;        else:&#xA;            self.is_playing = False&#xA;&#xA;    # infinite loop checking &#xA;    async def play_music(self, ctx):&#xA;        if len(self.music_queue) > 0:&#xA;            self.is_playing = True&#xA;&#xA;            m_url = self.music_queue[0][0][&#x27;source&#x27;]&#xA;            #try to connect to voice channel if you are not already connected&#xA;            if self.vc == None or not self.vc.is_connected():&#xA;                self.vc = await self.music_queue[0][1].connect()&#xA;&#xA;                #in case we fail to connect&#xA;                if self.vc == None:&#xA;                    await ctx.send("```Could not connect to the voice channel```")&#xA;                    return&#xA;            else:&#xA;                await self.vc.move_to(self.music_queue[0][1])&#xA;            #remove the first element as you are currently playing it&#xA;            self.music_queue.pop(0)&#xA;            loop = asyncio.get_event_loop()&#xA;            data = await loop.run_in_executor(None, lambda: self.ytdl.extract_info(m_url, download=False))&#xA;            song = data[&#x27;url&#x27;]&#xA;            self.vc.play(discord.FFmpegPCMAudio(song, executable= "ffmpeg.exe", **self.FFMPEG_OPTIONS), after=lambda e: asyncio.run_coroutine_threadsafe(self.play_next(), self.bot.loop,))&#xA;        else:&#xA;            self.is_playing = False&#xA;&#xA;    @commands.command(name="play", aliases=["p","playing"], help="Plays a selected song from youtube")&#xA;    async def play(self, ctx, *args):&#xA;        query = " ".join(args)&#xA;        try:&#xA;            voice_channel = ctx.author.voice.channel&#xA;        except:&#xA;            await ctx.send("```You need to connect to a voice channel first!```")&#xA;            return&#xA;        if self.is_paused:&#xA;            self.vc.resume()&#xA;        else:&#xA;            song = self.search_yt(query)&#xA;            if type(song) == type(True):&#xA;                await ctx.send("```Could not download the song. Incorrect format try another keyword. This could be due to playlist or a livestream format.```")&#xA;            else:&#xA;                if self.is_playing:&#xA;                    await ctx.send(f"**#{len(self.music_queue)&#x2B;2} -&#x27;{song[&#x27;title&#x27;]}&#x27;** added to the queue") &#xA;                else:&#xA;                    await ctx.send(f"**&#x27;{song[&#x27;title&#x27;]}&#x27;** added to the queue")  &#xA;                self.music_queue.append([song, voice_channel])&#xA;                if self.is_playing == False:&#xA;                    await self.play_music(ctx)&#xA;&#xA;&#xA;    @commands.command(name="pause", help="Pauses the current song being played")&#xA;    async def pause(self, ctx, *args):&#xA;        if self.is_playing:&#xA;            self.is_playing = False&#xA;            self.is_paused = True&#xA;            self.vc.pause()&#xA;        if self.is_paused:&#xA;            self.vc.resume()&#xA;            self.is_playing = True&#xA;            self.is_paused = False&#xA;&#xA;    @commands.command(name = "resume", aliases=["r"], help="Resumes playing with the discord bot")&#xA;    async def resume(self, ctx, *args):&#xA;        if self.is_paused:&#xA;            self.is_paused = False&#xA;            self.is_playing = True&#xA;            self.vc.resume()&#xA;&#xA;    @commands.command(name="skip", aliases=["s"], help="Skips the current song being played")&#xA;    async def skip(self, ctx):&#xA;        if self.vc != None and self.vc:&#xA;            self.vc.stop()&#xA;            #try to play next in the queue if it exists&#xA;            await self.play_music(ctx)&#xA;&#xA;&#xA;    @commands.command(name="queue", aliases=["q"], help="Displays the current songs in queue")&#xA;    async def queue(self, ctx):&#xA;        retval = ""&#xA;        for i in range(0, len(self.music_queue)):&#xA;            retval &#x2B;= f"#{i&#x2B;1} -" &#x2B; self.music_queue[i][0][&#x27;title&#x27;] &#x2B; "\n"&#xA;&#xA;        if retval != "":&#xA;            await ctx.send(f"```queue:\n{retval}```")&#xA;        else:&#xA;            await ctx.send("```No music in queue```")&#xA;&#xA;    @commands.command(name="clear", aliases=["c", "bin"], help="Stops the music and clears the queue")&#xA;    async def clear(self, ctx):&#xA;        if self.vc != None and self.is_playing:&#xA;            self.vc.stop()&#xA;        self.music_queue = []&#xA;        await ctx.send("```Music queue cleared```")&#xA;&#xA;    @commands.command(name="stop", aliases=["disconnect", "l", "d"], help="Kick the bot from VC")&#xA;    async def dc(self, ctx):&#xA;        self.is_playing = False&#xA;        self.is_paused = False&#xA;        await self.vc.disconnect()&#xA;    &#xA;    @commands.command(name="remove", help="Removes last song added to queue")&#xA;    async def re(self, ctx):&#xA;        self.music_queue.pop()&#xA;        await ctx.send("```last song removed```")&#xA;

    &#xA;

    I think everything is good but there is no sound Can you give me some advice ?
    &#xA;it python code

    &#xA;

  • avformat/mov : Add support for demuxing still HEIC images

    4 octobre 2023, par Vignesh Venkatasubramanian via ffmpeg-devel
    avformat/mov : Add support for demuxing still HEIC images
    

    They are similar to AVIF images (both use the HEIF container).
    The only additional work needed is to parse the hvcC box and put
    it in the extradata.

    With this patch applied, ffmpeg (when built with an HEVC decoder)
    is able to decode the files in
    https://github.com/nokiatech/heif/tree/gh-pages/content/images

    Also add a couple of fate tests with samples from
    https://github.com/nokiatech/heif_conformance/tree/master/conformance_files

    Partially fixes trac ticket #6521.

    Signed-off-by : Vignesh Venkatasubramanian <vigneshv@google.com>
    Signed-off-by : James Almer <jamrial@gmail.com>

    • [DH] libavformat/isom.h
    • [DH] libavformat/mov.c
    • [DH] tests/fate/mov.mak
    • [DH] tests/ref/fate/mov-heic-demux-still-image-1-item
    • [DH] tests/ref/fate/mov-heic-demux-still-image-multiple-items