
Recherche avancée
Médias (1)
-
Sintel MP4 Surround 5.1 Full
13 mai 2011, par
Mis à jour : Février 2012
Langue : English
Type : Video
Autres articles (31)
-
Submit bugs and patches
13 avril 2011Unfortunately 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, parMediaspip core
autoriser_auteur_modifier() afin que les visiteurs soient capables de modifier leurs informations sur la page d’auteurs -
Contribute to translation
13 avril 2011You 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 ElijaCan I create and use C++ smart pointers for different pointer types from FFmpeg ?


- 

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




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),
[](AVCodecContext* _context)
{
 if (_context) avcodec_free_context(&_context);
});
avcodec_open2(av_codec_context.get(), av_codec, NULL)
</avcodeccontext>


Is this correct ?


- 

- "AVDictionary **" which is used in all functions only as a pointer to a pointer.




Alloc and use :


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



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.


Free :


void av_dict_free(AVDictionary **m);



Then a smart pointer :


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



Is this correct ?


- 

- "AVFormatContext *" which is used both as a pointer and as a pointer to a pointer.




Alloc :


AVFormatContext *avformat_alloc_context(void);



Free :


void avformat_free_context(AVFormatContext *s);



Use :


int avformat_find_stream_info(AVFormatContext *ic, AVDictionary **options);



or


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



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.


Then a smart pointer :


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


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 ?


-
Still getting FFMPEG "Segmentation fault" with network stream source with the AmazonLinux 2023 distro [closed]
28 décembre 2023, par Matthew DrookerAfter referencing https://docs.yucca.app/en/troubleshooting/Segmentation_fault_core_dumped


And using


FFMPEG "Segmentation fault" with network stream source


I thought I had this solved.
But still having the same issue as documented as fixed.


Im using AmazonLinux 2023 distro in a Lambda custom image.


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


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

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

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


-
2023-04-18 18:25:05 INFO discord.player ffmpeg process ##### successfully terminated with return code of 0
19 avril 2023, par I_am_thingI am making a discord music bot with discord.py and ctx, it uses Spotify


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


client_id = ''
client_secret = ''
client_credentials_manager = SpotifyClientCredentials(client_id=client_id, client_secret=client_secret)
sp = spotipy.Spotify(client_credentials_manager=client_credentials_manager)

bot.volume = 0.5 # initial volume of the bot (can be changed)

@bot.command()
async def play(ctx, *, track_query):
 # check if the query is a valid Spotify link
 if 'open.spotify.com/track/' in track_query:
 track_id = track_query.split('/')[-1] # extract the track ID from the link
 else:
 # search for tracks with the given name
 track_results = sp.search(q=track_query, type='track', limit=1)
 if len(track_results['tracks']['items']) == 0:
 await ctx.send(f'Sorry, I could not find any track with the name "{track_query}".')
 return
 track_id = track_results['tracks']['items'][0]['id'] # get the track ID for the first search result
 track_info = sp.track(track_id) # get the track information for the given ID
 track_name = track_info['name']
 track_artist = track_info['artists'][0]['name']
 track_duration = time.strftime('%M:%S', time.gmtime(track_info['duration_ms']//1000))
 track_preview_url = track_info['preview_url'] # get the preview URL for the track
 if track_preview_url is None:
 await ctx.send(f'Sorry, the track "{track_name}" by {track_artist} cannot be played.')
 return
 voice_channel = ctx.author.voice.channel
 if voice_channel is None:
 await ctx.send('Please join a voice channel first.')
 return
 voice_client = await voice_channel.connect()
 audio_source = discord.FFmpegPCMAudio(track_preview_url, options="-b:a 128k -bufsize 512k")
 voice_client.play(audio_source, after=lambda e: print('Player error: %s' % e) if e else None)
 voice_client.source = discord.PCMVolumeTransformer(voice_client.source)
 voice_client.source.volume = bot.volume

 # format the embed message
 embed = discord.Embed(title=track_name, description=track_artist, color=0xff8c00)
 embed.add_field(name='Duration', value=track_duration, inline=True)
 embed.set_thumbnail(url=track_info['album']['images'][0]['url'])
 embed.set_footer(text='This music is from https://www.spotify.com/')
 await ctx.send(embed=embed)

 while voice_client.is_playing():
 await asyncio.sleep(1)
 await voice_client.disconnect()



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