
Recherche avancée
Médias (1)
-
1 000 000 (wav version)
26 septembre 2011, par
Mis à jour : Avril 2013
Langue : English
Type : Audio
Autres articles (56)
-
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 -
Publier sur MédiaSpip
13 juin 2013Puis-je poster des contenus à partir d’une tablette Ipad ?
Oui, si votre Médiaspip installé est à la version 0.2 ou supérieure. Contacter au besoin l’administrateur de votre MédiaSpip pour le savoir -
HTML5 audio and video support
13 avril 2011, parMediaSPIP uses HTML5 video and audio tags to play multimedia files, taking advantage of the latest W3C innovations supported by modern browsers.
The MediaSPIP player used has been created specifically for MediaSPIP and can be easily adapted to fit in with a specific theme.
For older browsers the Flowplayer flash fallback is used.
MediaSPIP allows for media playback on major mobile platforms with the above (...)
Sur d’autres sites (9360)
-
youtube_dl, ffmpeg, discord.py is not playing songs even w/o streaming
27 août 2021, par BlueFire02I have tried many times to make a basic queue system, I tested the play command to see if it worked back then and it did, unfortunately during this construction I have been having a lot of problems just playing the song. I did try to implement a queueing system but all that comes out is this specific error :


[tls @ 0x7f8244705240] IO Error: -9806 [https @ 0x7f824480b000] Will reconnect at 835584 in 0 second(s), error=Input/output error.



Additional Info : I also installed ffmpeg onto my mac, I only put the 1 file called ffmpeg in my path if that helps but I am pretty sure it has to do something with youtube_dl.


Code : (Make sure to put your guild_id in the guild_id spot, another thing is when you invite the bot make sure in the 2auth section click 'bot' and 'application.commands')


import discord
from discord.ext import commands
import youtube_dl
from discord_slash import cog_ext, SlashContext
from youtube_search import YoutubeSearch
import asyncio
import os


guild_ids = [GUILD ID GOES HERE]
queue = []
global is_playing
is_playing = False
time_video = 0 

class music(commands.Cog):
 def __init__(self, client):
 self.client = client
 
 @cog_ext.cog_slash(name="ping", guild_ids=guild_ids)
 async def ping(self, ctx):
 await ctx.send(content="Pong!")
 
 @cog_ext.cog_slash(name="join", guild_ids=guild_ids)
 async def join(self, ctx):
 if ctx.author.voice is None:
 return await ctx.send ("You are not in a voice channel!")
 voice_channel = ctx.author.voice.channel
 await voice_channel.connect()
 await ctx.guild.change_voice_state(channel=ctx.author.voice.channel, self_mute=True, self_deaf=True)
 await ctx.send("I joined the party :tada:")
 
 @cog_ext.cog_slash(name="disconnect", guild_ids=guild_ids)
 async def disconnect(self, ctx):
 await ctx.voice_client.disconnect()
 
 @cog_ext.cog_slash(name="play", guild_ids=guild_ids)
 async def play(self, ctx, input):
 if 'https://www.youtube.com/watch?' in input or 'https://youtu.be/' in input:
 YTDL_OPTIONS = {'format':"bestaudio"}
 with youtube_dl.YoutubeDL(YTDL_OPTIONS) as ydl:
 info_dict = ydl.extract_info(input, download=False)
 video_title = info_dict.get('title', None)

 results = YoutubeSearch(video_title, max_results=1).to_json()
 print(results)
 url_suffix_int = results.find('url_suffix') + 14


 results2 = "".join(['https://www.youtube.com', str(results[url_suffix_int:-3])])

 title_int = results.find('title') + 9
 title_int2 = results.find('long_desc') - 4
 title_string = str(results[title_int:title_int2])

 thumbnail_int = results.find('thumbnail') + 15
 title_split = results.find('title') - 5
 splitboth = str(results[thumbnail_int:title_split])
 final_result = splitboth.split('", "', 1)[0]

 channel_int = results.find('channel') + 11
 channel_int2 = results.find('duration') - 4
 channel_string = str(results[channel_int:channel_int2])

 duration_int = results.find('duration') + 12
 duration_int2 = results.find('views') - 4
 duration_string = str(results[duration_int:duration_int2])

 views_int = results.find('views') + 9
 views_int2 = results.find('publish_time') - 4
 views_string = str(results[views_int:views_int2])

 embed = discord.Embed(title=title_string, colour=discord.Colour(0x1), url=results2)

 embed.set_thumbnail(url=final_result)
 embed.set_author(name="Added to queue", icon_url=self.client.user.avatar_url)

 embed.add_field(name="Channel", value=channel_string, inline=True)
 embed.add_field(name="Song Duration", value=duration_string, inline=True)
 embed.add_field(name="Views", value=views_string, inline=True)

 await ctx.send(embed=embed)

 queue.append(input)
 await start_queue(self, ctx)

 else:
 results = YoutubeSearch(input, max_results=1).to_json()
 print(results)
 url_suffix_int = results.find('url_suffix') + 14


 results2 = "".join(['https://www.youtube.com', str(results[url_suffix_int:-3])])

 title_int = results.find('title') + 9
 title_int2 = results.find('long_desc') - 4
 title_string = str(results[title_int:title_int2])

 thumbnail_int = results.find('thumbnail') + 15
 title_split = results.find('title') - 5
 splitboth = str(results[thumbnail_int:title_split])
 final_result = splitboth.split('", "', 1)[0]

 channel_int = results.find('channel') + 11
 channel_int2 = results.find('duration') - 4
 channel_string = str(results[channel_int:channel_int2])

 duration_int = results.find('duration') + 12
 duration_int2 = results.find('views') - 4
 duration_string = str(results[duration_int:duration_int2])

 views_int = results.find('views') + 9
 views_int2 = results.find('publish_time') - 4
 views_string = str(results[views_int:views_int2])

 embed = discord.Embed(title=title_string, colour=discord.Colour(0x1), url=results2)

 embed.set_thumbnail(url=final_result)
 embed.set_author(name="Added to queue", icon_url=self.client.user.avatar_url)

 embed.add_field(name="Channel", value=channel_string, inline=True)
 embed.add_field(name="Song Duration", value=duration_string, inline=True)
 embed.add_field(name="Views", value=views_string, inline=True)

 await ctx.send(embed=embed)

 queue.append(results2)
 await start_queue(self, ctx)
 

 @cog_ext.cog_slash(name="pause", guild_ids=guild_ids)
 async def pause(self, ctx):
 ctx.voice_client.pause()
 
 
 @cog_ext.cog_slash(name="resume", guild_ids=guild_ids)
 async def resume(self, ctx):
 ctx.voice_client.resume()

 
def setup(client):
 client.add_cog(music(client))

async def start_queue(self, ctx):
 print(is_playing)
 if len(queue) <= 0:
 await ctx.voice_client.disconnect()
 while(len(queue) > 0):
 if(is_playing == False):
 await start(self, ctx, queue[0])

 

async def start(self, ctx, link_yt):
 global is_playing
 is_playing = True
 FFMPEG_OPTIONS = {'before_options': '-reconnect 1 -reconnect_streamed 1 -reconnect_delay_max 5', 'options': '-vn'}
 YTDL_OPTIONS = {'format':"bestaudio"}
 vc = ctx.voice_client
 with youtube_dl.YoutubeDL(YTDL_OPTIONS) as ydl:
 info = ydl.extract_info(link_yt, download=False)
 url2 = info['formats'][0]['url']
 source = await discord.FFmpegOpusAudio.from_probe(url2, **FFMPEG_OPTIONS)
 vc.play(source)
 await asyncio.sleep(info['duration'] + 1)
 print("Done")
 del queue[0]
 is_playing = False



Final Note : I did try to download and play the song but in the end it gave me the following error :


Options reconnect not found.



-
FFMPEG command works in shell ! but not in my node.js
29 juillet 2021, par Kuno KimWhen my ffmpeg command is built by my node.js application it does not run.



error



Unrecognized option 'ss 3.2 -t 1.9 -i videoplayback.mp4 -vf fps=15,scale=240:-1:flags=lanczos,palettegen palette.png'.




command



ffmpeg -ss 3.2 -t 1.9 -i videoplayback.mp4 -vf \ fps=15,scale=240:-1:flags=lanczos,palettegen palette.png




this is my code



var child_process = require('child_process')

function recordVideo() {

var spawn = child_process.spawn;

var args = [
 '-y', 
 '-ss', '3.2',
 '-t', '1.9', 
 '-i', '../getback/bin/videos/videoplayback.mp4', 
 '-vf', ' \\ ', 
 'fps=', '15', 
 'scale=', '320:-1', 
 'flags=','lanczos,palettegen palette.png', 
];



var ffmpeg = spawn('ffmpeg', args);

ffmpeg.stdout.on('data', function (data) {
 console.log(data);
});

ffmpeg.stderr.on('data', function (data) {
 console.log('grep stderr: ' + data);
});

ffmpeg.on('close', (code) => {
 console.log('child process exited with code ' + code);
}); 
};
recordVideo();




what is this error ?
I think.. 'fps=', '15', In the following code 
 '=' options a problem.



I am still learning English.
I'm sorry if it was hard to understand.


-
cbs_h265 : read/write HEVC PREFIX SEI
10 mai 2018, par Haihao Xiangcbs_h265 : read/write HEVC PREFIX SEI
Similar to H264, cbs_h265_read, write_nal_unit() can handle HEVC
prefix SEI NAL units. Currently mastering display colour volume SEI
message is added only, we may add more SEI message if needed laterSigned-off-by : Haihao Xiang <haihao.xiang@intel.com>