
Recherche avancée
Autres articles (34)
-
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 -
Les formats acceptés
28 janvier 2010, parLes commandes suivantes permettent d’avoir des informations sur les formats et codecs gérés par l’installation local de ffmpeg :
ffmpeg -codecs ffmpeg -formats
Les format videos acceptés en entrée
Cette liste est non exhaustive, elle met en exergue les principaux formats utilisés : h264 : H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 m4v : raw MPEG-4 video format flv : Flash Video (FLV) / Sorenson Spark / Sorenson H.263 Theora wmv :
Les formats vidéos de sortie possibles
Dans un premier temps on (...) -
List of compatible distributions
26 avril 2011, parThe table below is the list of Linux distributions compatible with the automated installation script of MediaSPIP. Distribution nameVersion nameVersion number Debian Squeeze 6.x.x Debian Weezy 7.x.x Debian Jessie 8.x.x Ubuntu The Precise Pangolin 12.04 LTS Ubuntu The Trusty Tahr 14.04
If you want to help us improve this list, you can provide us access to a machine whose distribution is not mentioned above or send the necessary fixes to add (...)
Sur d’autres sites (3804)
-
ffmepg enque and deque files list that streams to youtube
17 janvier 2019, par andNnI have bunch of files ... commonly knows as myPlayList.txt
example : vi myPlayList.txta.mp4
b.mp4
c.mp4now when i run ffmpeg it starts streaming a.mp4, then b.mp4
while b.mp4 is still streaming if i add d.mp4 to the fileList or via any other command .. it should get enqued. also if i now want to remove a file from the list .. i should be able update the file list from command or updating the file. But while i am changing the filelist the current stream should not change/break.
My current script for single file is :
VBR="2500k" # Bitrate de la vidéo en sortie
FPS="30" # FPS de la vidéo en sortie
QUAL="medium" # Preset de qualité FFMPEG
YOUTUBE_URL="rtmp://a.rtmp.youtube.com/live2" # URL de base RTMP youtube
SOURCE="/a/b/land.mp4" # single file path
KEY="..." # Clé à récupérer sur l'event youtube
ffmpeg \
-i "$SOURCE" -deinterlace \
-vcodec libx264 -pix_fmt yuv420p -preset $QUAL -r $FPS -g $(($FPS * 2)) -b:v $VBR \
-acodec libmp3lame -ar 44100 -threads 6 -qscale 3 -b:a 712000 -bufsize 512k \
-f flv "$YOUTUBE_URL/$KEY" -
Python Youtube ffmpeg Session Has Been Invalidated
14 août 2020, par DanielI get the following error while I'm playing YouTube audio with my bot



[tls @ 0000024ef8c4d480] Error in the pull function.
[matroska,webm @ 0000024ef8c4a400] Read error
[tls @ 0000024ef8c4d480] The specified session has been invalidated for some reason.
 Last message repeated 1 times




It seems like YouTube links expire ? I don't really know but I need to fix this issue. This is my code :



class YTDLSource(discord.PCMVolumeTransformer):

 def __init__(self, source, *, data, requester):
 super().__init__(source)
 self.requester = requester

 self.title = data['title']
 self.description = data['description']
 self.uploader = data['uploader']
 self.duration = data['duration']
 self.web_url = data['webpage_url']
 self.thumbnail = data['thumbnail']

 def __getitem__(self, item: str):
 return self.__getattribute__(item)

 @classmethod
 async def create_source(cls, ctx, player, search: str, *, loop, download=True):
 async with ctx.typing():
 loop = loop or asyncio.get_event_loop()
 to_run = partial(ytdl.extract_info, url=search, download=download)
 raw_data = await loop.run_in_executor(None, to_run)

 if 'entries' in raw_data:
 # take first item from a playlist
 if len(raw_data['entries']) == 1:
 data = raw_data['entries'][0]
 else:
 data = raw_data['entries']
 #loops entries to grab each video_url
 total_duration = 0
 try:
 for i in data:
 webpage = i['webpage_url']
 title = i['title']
 description = i['description']
 uploader = i['uploader']
 duration = i['duration']
 thumbnail = i['thumbnail']
 total_duration += duration

 if download:
 source = ytdl.prepare_filename(i)
 source = cls(discord.FFmpegPCMAudio(source), data=i, requester=ctx.author)
 else:
 source = {'webpage_url': webpage, 'requester': ctx.author, 'title': title, 'uploader': uploader, 'description': description, 'duration': duration, 'thumbnail': thumbnail}

 player.queue.append(source)

 except Exception as e:
 print(e)
 return

 embed=discord.Embed(title="Playlist", description="Queued", color=0x30a4fb, timestamp=datetime.now(timezone.utc))
 embed.set_author(name=ctx.author.display_name, icon_url=ctx.author.avatar_url)
 embed.set_thumbnail(url=data[0]['thumbnail'])
 embed.add_field(name=raw_data['title'], value=f"{len(data)} videos queued.", inline=True)
 embed.set_footer(text=raw_data["uploader"] + ' - ' + '{0[0]}m {0[1]}s'.format(divmod(total_duration, 60)))
 await ctx.send(embed=embed)
 return

 embed=discord.Embed(title="Playlist", description="Queued", color=0x30a4fb, timestamp=datetime.now(timezone.utc))
 embed.set_author(name=ctx.author.display_name, icon_url=ctx.author.avatar_url)
 embed.set_thumbnail(url=data['thumbnail'])
 embed.add_field(name=data['title'], value=(data["description"][:72] + (data["description"][72:] and '...')), inline=True)
 embed.set_footer(text=data["uploader"] + ' - ' + '{0[0]}m {0[1]}s'.format(divmod(data["duration"], 60)))
 await ctx.send(embed=embed)

 if download:
 source = ytdl.prepare_filename(data)
 else:
 source = {'webpage_url': data['webpage_url'], 'requester': ctx.author, 'title': data['title'], 'uploader': data['uploader'], 'description': data['description'], 'duration': data['duration'], 'thumbnail': data['thumbnail']}
 player.queue.append(source)
 return

 source = cls(discord.FFmpegPCMAudio(source), data=data, requester=ctx.author)
 player.queue.append(source)


 @classmethod
 async def regather_stream(cls, data, *, loop):
 loop = loop or asyncio.get_event_loop()
 requester = data['requester']

 to_run = partial(ytdl.extract_info, url=data['webpage_url'], download=True)
 data = await loop.run_in_executor(None, to_run)

 return(cls(discord.FFmpegPCMAudio(data['url']), data=data, requester=requester))




I'm using the rewrite branch of discord.py for the bot.
I'm not sure if I need to provide more details ? Please let me know, I really need to get this fixed...


-
ffmpeg nvenc_h264 streaming uhd2160 rawvideo. Youtube buffering
23 janvier 2019, par Alex DerozaI use this batch file for starting my stream :
echo starting transocding from native uhd2160 to fhd format.. Host: YouTube
ffmpeg ^
-loglevel -8 ^
-f rawvideo -s:v 1920x1080 -r 60 -pix_fmt nv12 ^
-f dshow -i video="Game Capture 4K60 Pro Video 01":audio="Game Capture 4K60 Pro Audio 01" ^
-c:v h264_nvenc ^
-level:v 4.2 ^
-profile:v high ^
-preset:v hq ^
-b:v 8.8M ^
-color_range 2 ^
-colorspace bt709 ^
-bf 0 ^
-g 60 ^
-2pass 1 ^
-rc:v cbr ^
-coder cabac ^
-acodec aac ^
-ab 128k ^
-movflags +faststart ^
-f flv rtmp://a.rtmp.youtube.com/live2/xxxx-xxxx-xxxx-xxxx && pauseStream on YouTube starts fine, and plays with good quality. But stream stops after when "Buffer Health" emptied. And in this situation Youtube says that "Video output low", "YouTube is not receiving enough video to maintain smooth streaming. As such, viewers will experience buffering."
I can’t understand why it happens. Because I’ve a good ISP, and over 30 mbps inet to YT services within 90ms latency to them.
YouTube is not receiving enough video to maintain smooth streaming. As
such, viewers will experience buffering.Your encoder is sending data faster than realtime (multipleseconds of
video each second). You must rate limit your livevideo upload to
approximately 1 second of video each second.The stream’s current bitrate (5730.00 Kbps) is lower than the
recommended bitrate. We recommend that you use a stream bitrate of
4500 Kbps.