Recherche avancée

Médias (1)

Mot : - Tags -/sintel

Autres articles (31)

  • Submit bugs and patches

    13 avril 2011

    Unfortunately a software is never perfect.
    If you think you have found a bug, report it using our ticket system. Please to help us to fix it by providing the following information : the browser you are using, including the exact version as precise an explanation as possible of the problem if possible, the steps taken resulting in the problem a link to the site / page in question
    If you think you have solved the bug, fill in a ticket and attach to it a corrective patch.
    You may also (...)

  • Les autorisations surchargées par les plugins

    27 avril 2010, par

    Mediaspip core
    autoriser_auteur_modifier() afin que les visiteurs soient capables de modifier leurs informations sur la page d’auteurs

  • Contribute to translation

    13 avril 2011

    You can help us to improve the language used in the software interface to make MediaSPIP more accessible and user-friendly. You can also translate the interface into any language that allows it to spread to new linguistic communities.
    To do this, we use the translation interface of SPIP where the all the language modules of MediaSPIP are available. Just subscribe to the mailing list and request further informantion on translation.
    MediaSPIP is currently available in French and English (...)

Sur d’autres sites (5834)

  • C++ smart pointers to FFmpeg objects

    15 octobre 2024, par Elija

    Can I create and use C++ smart pointers for different pointer types from FFmpeg ?

    


      

    1. "AVCodecContext *" which is used only as a pointer in all functions except deallocation.
    2. 


    


    Alloc :

    


    AVCodecContext *avcodec_alloc_context3(const AVCodec *codec);


    


    Free :

    


    void avcodec_free_context(AVCodecContext **avctx);


    


    Use :

    


    int avcodec_open2(AVCodecContext *avctx, const AVCodec *codec, AVDictionary **options);


    


    Then the smart pointer :

    


    std::shared_ptr<avcodeccontext> av_codec_context(avcodec_alloc_context3(av_codec),&#xA;[](AVCodecContext* _context)&#xA;{&#xA;  if (_context) avcodec_free_context(&amp;_context);&#xA;});&#xA;avcodec_open2(av_codec_context.get(), av_codec, NULL)&#xA;</avcodeccontext>

    &#xA;

    Is this correct ?

    &#xA;

      &#xA;
    1. "AVDictionary **" which is used in all functions only as a pointer to a pointer.
    2. &#xA;

    &#xA;

    Alloc and use :

    &#xA;

    int av_dict_set(AVDictionary **pm, const char *key, const char *value, int flags);&#xA;

    &#xA;

    where pm is a Pointer to a pointer to a dictionary struct. If *pm is NULL a dictionary struct is allocated and put in *pm.

    &#xA;

    Free :

    &#xA;

    void av_dict_free(AVDictionary **m);&#xA;

    &#xA;

    Then a smart pointer :

    &#xA;

    std::shared_ptr av_dict(new (AVDictionary*),&#xA;[](AVDictionary** _dict)&#xA;{&#xA;  if (_dict)&#xA;  {&#xA;    if(*_dict)&#xA;      av_dict_free(_dict);&#xA;    delete _dict;&#xA;  }&#xA;});&#xA;av_dict_set(av_dict.get(), "key", "value", 0);&#xA;

    &#xA;

    Is this correct ?

    &#xA;

      &#xA;
    1. "AVFormatContext *" which is used both as a pointer and as a pointer to a pointer.
    2. &#xA;

    &#xA;

    Alloc :

    &#xA;

    AVFormatContext *avformat_alloc_context(void);&#xA;

    &#xA;

    Free :

    &#xA;

    void avformat_free_context(AVFormatContext *s);&#xA;

    &#xA;

    Use :

    &#xA;

    int avformat_find_stream_info(AVFormatContext *ic, AVDictionary **options);&#xA;

    &#xA;

    or

    &#xA;

    int avformat_open_input(AVFormatContext **ps, const char *url, const AVInputFormat *fmt, AVDictionary **options);&#xA;

    &#xA;

    where ps is a Pointer to user-supplied AVFormatContext (allocated by avformat_alloc_context). May be a pointer to NULL, in which case an AVFormatContext is allocated by this function and written into ps.

    &#xA;

    Then a smart pointer :

    &#xA;

    std::shared_ptr<avformatcontext> av_format_context(avformat_alloc_context(),&#xA;[](AVFormatContext* _context)&#xA;{&#xA;  if(_context)&#xA;    avformat_free_context(_context);&#xA;});&#xA;avformat_find_stream_info(av_format_context.get(), NULL);&#xA;</avformatcontext>

    &#xA;

    Is this correct ? But how can I use it with the avformat_open_input() function, which needs a pointer to a pointer and may want to create an object by this pointer ?

    &#xA;

  • Still getting FFMPEG "Segmentation fault" with network stream source with the AmazonLinux 2023 distro [closed]

    28 décembre 2023, par Matthew Drooker

    After referencing https://docs.yucca.app/en/troubleshooting/Segmentation_fault_core_dumped

    &#xA;

    And using

    &#xA;

    FFMPEG "Segmentation fault" with network stream source

    &#xA;

    I thought I had this solved.&#xA;But still having the same issue as documented as fixed.

    &#xA;

    Im using AmazonLinux 2023 distro in a Lambda custom image.

    &#xA;

    Im trying to use baseImage from FROM --platform=linux/amd64 public.ecr.aws/lambda/nodejs:20

    &#xA;

    Then doing- RUN dnf install nscd  -y in my Dockerfile allowing the nscd service to be installed per the answer.

    &#xA;

    But, Im still getting the ffprobe was killed with signal SIGSEGV error with the new AmazonLinux Distro.

    &#xA;

    Has anyone else faced this with the 2023 Distro ? Or have an answer to this question ?

    &#xA;

  • 2023-04-18 18:25:05 INFO discord.player ffmpeg process ##### successfully terminated with return code of 0

    19 avril 2023, par I_am_thing

    I am making a discord music bot with discord.py and ctx, it uses Spotify

    &#xA;

    I am using FFmpeg for my music feature. This is my !play code

    &#xA;

    client_id = &#x27;&#x27;&#xA;client_secret = &#x27;&#x27;&#xA;client_credentials_manager = SpotifyClientCredentials(client_id=client_id, client_secret=client_secret)&#xA;sp = spotipy.Spotify(client_credentials_manager=client_credentials_manager)&#xA;&#xA;bot.volume = 0.5 # initial volume of the bot (can be changed)&#xA;&#xA;@bot.command()&#xA;async def play(ctx, *, track_query):&#xA;    # check if the query is a valid Spotify link&#xA;    if &#x27;open.spotify.com/track/&#x27; in track_query:&#xA;        track_id = track_query.split(&#x27;/&#x27;)[-1] # extract the track ID from the link&#xA;    else:&#xA;        # search for tracks with the given name&#xA;        track_results = sp.search(q=track_query, type=&#x27;track&#x27;, limit=1)&#xA;        if len(track_results[&#x27;tracks&#x27;][&#x27;items&#x27;]) == 0:&#xA;            await ctx.send(f&#x27;Sorry, I could not find any track with the name "{track_query}".&#x27;)&#xA;            return&#xA;        track_id = track_results[&#x27;tracks&#x27;][&#x27;items&#x27;][0][&#x27;id&#x27;] # get the track ID for the first search result&#xA;    track_info = sp.track(track_id) # get the track information for the given ID&#xA;    track_name = track_info[&#x27;name&#x27;]&#xA;    track_artist = track_info[&#x27;artists&#x27;][0][&#x27;name&#x27;]&#xA;    track_duration = time.strftime(&#x27;%M:%S&#x27;, time.gmtime(track_info[&#x27;duration_ms&#x27;]//1000))&#xA;    track_preview_url = track_info[&#x27;preview_url&#x27;] # get the preview URL for the track&#xA;    if track_preview_url is None:&#xA;        await ctx.send(f&#x27;Sorry, the track "{track_name}" by {track_artist} cannot be played.&#x27;)&#xA;        return&#xA;    voice_channel = ctx.author.voice.channel&#xA;    if voice_channel is None:&#xA;        await ctx.send(&#x27;Please join a voice channel first.&#x27;)&#xA;        return&#xA;    voice_client = await voice_channel.connect()&#xA;    audio_source = discord.FFmpegPCMAudio(track_preview_url, options="-b:a 128k -bufsize 512k")&#xA;    voice_client.play(audio_source, after=lambda e: print(&#x27;Player error: %s&#x27; % e) if e else None)&#xA;    voice_client.source = discord.PCMVolumeTransformer(voice_client.source)&#xA;    voice_client.source.volume = bot.volume&#xA;&#xA;    # format the embed message&#xA;    embed = discord.Embed(title=track_name, description=track_artist, color=0xff8c00)&#xA;    embed.add_field(name=&#x27;Duration&#x27;, value=track_duration, inline=True)&#xA;    embed.set_thumbnail(url=track_info[&#x27;album&#x27;][&#x27;images&#x27;][0][&#x27;url&#x27;])&#xA;    embed.set_footer(text=&#x27;This music is from https://www.spotify.com/&#x27;)&#xA;    await ctx.send(embed=embed)&#xA;&#xA;    while voice_client.is_playing():&#xA;        await asyncio.sleep(1)&#xA;    await voice_client.disconnect()&#xA;

    &#xA;

    I joined the unofficial ffmpeg discord server no one could find a fix I searched for ages and I couldn't fix it

    &#xA;