
Recherche avancée
Médias (1)
-
Revolution of Open-source and film making towards open film making
6 octobre 2011, par
Mis à jour : Juillet 2013
Langue : English
Type : Texte
Autres articles (105)
-
Mise à jour de la version 0.1 vers 0.2
24 juin 2013, parExplications des différents changements notables lors du passage de la version 0.1 de MediaSPIP à la version 0.3. Quelles sont les nouveautés
Au niveau des dépendances logicielles Utilisation des dernières versions de FFMpeg (>= v1.2.1) ; Installation des dépendances pour Smush ; Installation de MediaInfo et FFprobe pour la récupération des métadonnées ; On n’utilise plus ffmpeg2theora ; On n’installe plus flvtool2 au profit de flvtool++ ; On n’installe plus ffmpeg-php qui n’est plus maintenu au (...) -
Personnaliser en ajoutant son logo, sa bannière ou son image de fond
5 septembre 2013, parCertains thèmes prennent en compte trois éléments de personnalisation : l’ajout d’un logo ; l’ajout d’une bannière l’ajout d’une image de fond ;
-
Websites made with MediaSPIP
2 mai 2011, parThis page lists some websites based on MediaSPIP.
Sur d’autres sites (15343)
-
Socket code Python code at the end influences code in the beginning
21 décembre 2019, par Samy SmartSo basically i am trying to do the following things : Client sends project file, Server receives Project file, Server generates Video file, Server sends video File, Client receives Video File. Everything works up until sending the Video back. The Thing is when i include my code for sending the Video, not even the Things that worked before work anymore.
The commented code in the code is the code that should send the Video backClient :
import socket
s = socket.socket()
ip = socket.gethostname()
file = "testae.aep"
s.connect((ip, 1234))
f = open(file, "rb")
txt = f.read(1024)
while txt:
s.send(txt)
print(f"Sending... {txt}")
txt = f.read(1024)
f.close()
#f2 = open("final_output.mp4", "wb")
#txt2 = s.recv(1024)
#while txt2:
# f2.write(txt2)
# txt2 = s.recv(1024)
#f2.close()
print("received final output")
s.close()Server :
import os
import socket
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind((socket.gethostname(), 1234))
counter = 0
s.listen(5)
aerpath = "C:/aerender.lnk"
ffmpegpath = '"C:/Program Files/ffmpeg/bin/ffmpeg.exe"'
while True:
c, addr = s.accept()
print("Client Connected")
print(addr)
f = open(f"ae_render_file{counter}.aep", "wb")
txt = c.recv(1024)
while txt:
f.write(txt)
print(f"Receiving... {txt}")
txt = c.recv(1024)
print("Out of WHILE")
f.close()
print("received file")
os.system(aerpath + " -project " + f"C:/Users/weilu/PycharmProjects/localAERF/ae_render_file{counter}.aep "
+ '-comp "Comp 1" ' + f"-output C:/Users/weilu/PycharmProjects/localAERF/output/output{counter}")
os.system(ffmpegpath + " -i " + f"output/output{counter}.avi -f mp4 -vcodec libx264 -preset slow -profile:v main "
f"-pix_fmt yuv420p -acodec aac -hide_banner output/outputr{counter}.mp4")
#f2 = open(f"output/outputr{counter}.mp4","rb")
#txt2 = f2.read(1024)
#while txt2:
# c.send(txt2)
# print("Sending...")
# txt2 = f.read(1024)
#f2.close()
c.close()
counter += 1 -
Possible bug in latest google chrome (v62) ?
21 novembre 2017, par Jalal El-ShaerThe following demo was working perfectly :
http://jsfiddle.net/r6wz0nz6/2/
The following is a sample of ’video-preview’ class in action :
<a href="https://www.youtube.com/watch?v=v1uyQZNg2vE" target="_blank" class="video-preview" data-frames="100" data-source="http://i.imgur.com/BX0pV4J.jpg">
</a>Now, if you use your mouse to scroll from left-to-right, somehow it is not working (shows thumbnail instead of current image position). This was working perfectly before v62. While, from right-to-left, it works normally.
Updated Please watch how this looks here : https://www.youtube.com/watch?v=HvDP-YXJgOk
Question : How can I overcome this bug/issue ?
P.S. the demo is based on this blog post (https://www.binpress.com/tutorial/how-to-generate-video-previews-with-ffmpeg/138)
Update 2
Interesting, in the following part :elm.mousemove(function(e) {
var left = e.clientX - elm.position().left;
slider.show().css('left', left -1); // <<---------------------- this line
img.css('left', -Math.floor((left / width) * frames) * width);if I remove the ’-1’ like so :
slider.show().css('left', left);
It works from Left-To-Right, but now from Right-To-Left is showing same bug !!Proposed Workaround by @A. Wollf
Change the "mouseout" to "mouseleave" and it seems to fix it : http://jsfiddle.net/r6wz0nz6/388 -
Google Speech - Streaming Request Returns EOF Error
16 octobre 2017, par JoshUsing Go, I’m taking a RTMP stream, transcoding it to FLAC (using ffmpeg) and attempting to stream to Google’s Speech API to transcribe the audio. However, I keep getting
EOF
errors when sending the data. I can’t find any information on this error in the docs so I’m not exactly sure what’s causing it.I’m chunking the received data into 3s clips (length isn’t relevant as long as it’s less than the maximum length of a streaming recognition request).
Here is the core of my code :
func main() {
done := make(chan os.Signal)
received := make(chan []byte)
go receive(received)
go transcribe(received)
signal.Notify(done, os.Interrupt, syscall.SIGTERM)
select {
case <-done:
os.Exit(0)
}
}
func receive(received chan<- []byte) {
var b bytes.Buffer
stdout := bufio.NewWriter(&b)
cmd := exec.Command("ffmpeg", "-i", "rtmp://127.0.0.1:1935/live/key", "-f", "flac", "-ar", "16000", "-")
cmd.Stdout = stdout
if err := cmd.Start(); err != nil {
log.Fatal(err)
}
duration, _ := time.ParseDuration("3s")
ticker := time.NewTicker(duration)
for {
select {
case <-ticker.C:
stdout.Flush()
log.Printf("Received %d bytes", b.Len())
received <- b.Bytes()
b.Reset()
}
}
}
func transcribe(received <-chan []byte) {
ctx := context.TODO()
client, err := speech.NewClient(ctx)
if err != nil {
log.Fatal(err)
}
stream, err := client.StreamingRecognize(ctx)
if err != nil {
log.Fatal(err)
}
// Send the initial configuration message.
if err = stream.Send(&speechpb.StreamingRecognizeRequest{
StreamingRequest: &speechpb.StreamingRecognizeRequest_StreamingConfig{
StreamingConfig: &speechpb.StreamingRecognitionConfig{
Config: &speechpb.RecognitionConfig{
Encoding: speechpb.RecognitionConfig_FLAC,
LanguageCode: "en-GB",
SampleRateHertz: 16000,
},
},
},
}); err != nil {
log.Fatal(err)
}
for {
select {
case data := <-received:
if len(data) > 0 {
log.Printf("Sending %d bytes", len(data))
if err := stream.Send(&speechpb.StreamingRecognizeRequest{
StreamingRequest: &speechpb.StreamingRecognizeRequest_AudioContent{
AudioContent: data,
},
}); err != nil {
log.Printf("Could not send audio: %v", err)
}
}
}
}
}Running this code gives this output :
2017/10/09 16:05:00 Received 191704 bytes
2017/10/09 16:05:00 Saving 191704 bytes
2017/10/09 16:05:00 Sending 191704 bytes
2017/10/09 16:05:00 Could not send audio: EOF
2017/10/09 16:05:03 Received 193192 bytes
2017/10/09 16:05:03 Saving 193192 bytes
2017/10/09 16:05:03 Sending 193192 bytes
2017/10/09 16:05:03 Could not send audio: EOF
2017/10/09 16:05:06 Received 193188 bytes
2017/10/09 16:05:06 Saving 193188 bytes
2017/10/09 16:05:06 Sending 193188 bytes // Notice that this doesn't error
2017/10/09 16:05:09 Received 191704 bytes
2017/10/09 16:05:09 Saving 191704 bytes
2017/10/09 16:05:09 Sending 191704 bytes
2017/10/09 16:05:09 Could not send audio: EOFNotice that not all of the
Send
s fail.Could anyone point me in the right direction here ? Is it something to do with the FLAC headers or something ? I also wonder if maybe resetting the buffer causes some of the data to be dropped (i.e. it’s a non-trivial operation that actually takes some time to complete) and it doesn’t like this missing information ?
Any help would be really appreciated.