
Recherche avancée
Médias (1)
-
Bug de détection d’ogg
22 mars 2013, par
Mis à jour : Avril 2013
Langue : français
Type : Video
Autres articles (81)
-
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 (...) -
Selection of projects using MediaSPIP
2 mai 2011, parThe examples below are representative elements of MediaSPIP specific uses for specific projects.
MediaSPIP farm @ Infini
The non profit organizationInfini develops hospitality activities, internet access point, training, realizing innovative projects in the field of information and communication technologies and Communication, and hosting of websites. It plays a unique and prominent role in the Brest (France) area, at the national level, among the half-dozen such association. Its members (...) -
Automated installation script of MediaSPIP
25 avril 2011, parTo overcome the difficulties mainly due to the installation of server side software dependencies, an "all-in-one" installation script written in bash was created to facilitate this step on a server with a compatible Linux distribution.
You must have access to your server via SSH and a root account to use it, which will install the dependencies. Contact your provider if you do not have that.
The documentation of the use of this installation script is available here.
The code of this (...)
Sur d’autres sites (9848)
-
Révision 23509 : Ticket #3608 : lorsqu’un prefixe de table utilise lui-même ’spip’ en prefixe, tel...
4 mai 2017, par marcimat@rezo.netOn se crée une fonction pour ce petit truc. Et on l’utilise aux endroits qui le nécessitent.
-
Anomalie #845 (Fermé) : spip-loader parle d’"installation" même lorsqu’il s’agit d’une "mise à jour"
20 juillet 2014, par 毎日 erational -corrigé par http://zone.spip.org/trac/spip-zone/changeset/83756.
on affiche la version et on précise si on lance une installation ou mise à jour.
-
Video streaming FFMPEG - VLC video starts black
7 novembre 2020, par xKedarI am trying to stream my webcam when an event occurs to another machine.
Giving the fact that FFMPEG needs around 2 seconds since I call it to when it starts streaming I'm running it in background sending everything to a local socket that consumes it until the event happens and then I reverse the data to the other machine


Here I capture the camera


class ffmpegThread (Thread):
 def __init__(self):
 Thread.__init__(self)
 
 def run(self):
 cam, mic = detect_devices()
 command = 'ffmpeg -f dshow -i video='+cam+':audio='+mic+' -profile:v high -pix_fmt yuvj420p -level:v 4.1 -preset ultrafast -tune zerolatency -vcodec libx264 -r 14 -b:v 512k -s 240x160 -acodec aac -ac 2 -ab 32k -ar 44100 -f mpegts -flush_packets 0 udp://127.0.0.1:'+str(config.ffmpeg_port)+'?pkt_size=1316'
 p = Popen(command , stderr=PIPE)
 for line in iter(p.stderr.readline,''):
 if config.end: break
 p.terminate()
 return 0



This is where I receive and forward the video



class sendVideoThread (Thread):
 def __init__(self, UDPsenderSocket):
 Thread.__init__(self)
 self.UDPsenderSocket = UDPsenderSocket
 
 def run(self):
 sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
 sock.bind(("127.0.0.1", config.ffmpeg_port))
 bufferSize = 1348
 firstData = sock.recvfrom(bufferSize)
 while True:
 data = sock.recvfrom(bufferSize)
 if config.event == True:
 startTime = time.time()
 self.UDPsenderSocket.sendto(firstData[0], config.address)
 while time.time() - startTime < 14:
 self.UDPsenderSocket.sendto(data[0], config.address) 
 data = sock.recvfrom(bufferSize) 
 config.event= False
 if config.end: sys.exit()




And those are the vlc options on the other machine(not the whole code)


def play(self):
 self.player = vlc.Instance(["--file-caching=0 --network-caching=0"]).media_player_new()
 self.player.set_mrl('udp://@0.0.0.0:'+str(config.vlcPlayer_port))
 self.player.set_hwnd(self.frame.winfo_id())
 self.player.audio_set_mute(False)
 self.player.play()




The video reaches the other machine but it starts black with audio-only for some seconds then it starts working fine. I guess that by sending the video from a random moment(frame) when the event happens it may happen that vlc will miss some information about the video and needs the next frame with information to come in order to show the video, I was looking to something in order to have more frames with that info but I was not able to find it.