
Recherche avancée
Autres articles (44)
-
Websites made with MediaSPIP
2 mai 2011, parThis page lists some websites based on MediaSPIP.
-
Creating farms of unique websites
13 avril 2011, parMediaSPIP platforms can be installed as a farm, with a single "core" hosted on a dedicated server and used by multiple websites.
This allows (among other things) : implementation costs to be shared between several different projects / individuals rapid deployment of multiple unique sites creation of groups of like-minded sites, making it possible to browse media in a more controlled and selective environment than the major "open" (...) -
Contribute to a better visual interface
13 avril 2011MediaSPIP is based on a system of themes and templates. Templates define the placement of information on the page, and can be adapted to a wide range of uses. Themes define the overall graphic appearance of the site.
Anyone can submit a new graphic theme or template and make it available to the MediaSPIP community.
Sur d’autres sites (6640)
-
ffmpeg creates an mp4 stream which results error in Firefox
23 janvier 2020, par DanielI’m about to play an fmp4 in HTML5 video element.
I was successfully created a websocket to pass ffmpeg’s output into MSE.
However when I try to open the page in Firefox (72.0.1, 64bit, under Ubuntu 18.04LTS), it always results an error :
Media resource blob:http://localhost/XXXX could not be decoded, error: Error Code: NS_ERROR_FAILURE (0x80004005)
Details: virtual mozilla::MediaResult mozilla::MP4ContainerParser::IsInitSegmentPresent(const mozilla::MediaSpan &): Invalid Top-Level Box:f"This is my FFMPEG’s line :
ffmpeg -r 5 -i rtsp://IPCAMERA -c:v copy -an -movflags +frag_keyframe+empty_moov+default_base_moof -f mp4 pipe:1
This is how the server side Java (with Tomcat engine) parses the output of this command (this might be inefficient but for now is ok) :
ProcessBuilder b = new ProcessBuilder(FFMPEGCOMMAND.split("\\s+"));
try {
p = b.start();
} catch (IOException e) {
e.printStackTrace();
}
InputStream input = p.getInputStream();
int bytes_read = 0;
byte buffer[] = new byte[512];
try {
while (0 < (bytes_read = input.read(buffer, 0, 512))) {
System.out.println("Bytes read:" + bytes_read);
this.session.getBasicRemote().sendBinary(ByteBuffer.wrap(buffer));
}
} catch (IOException e) {
e.printStackTrace();
}Then the client side is a websocket-MSE like in this repo.
Results :
-
When I debug the server side, and there is a breakpoint before the sendBinary call, and I wait for some seconds before letting run the server side, then a first picture is shown in the browser, but then immediately goes onto the error above.
-
If I run the server side (without any breakpoints), the browser does not show any picture, it immediately goes onto the error.
Invalid Top-Level box error message is always followed by (a) random garbage character(s).
The proof that this should be working is in the point 1. If I wait some time before letting roll the data to the client, it can decode 1 (or maybe more frames) before reaching that error.
This might be an error with my ffmpeg command-line.
However I could not really find any good resources on this topic (only found those ones which related to older releases of Firefox).
Update1
Here is the FFMPEG log when the same command creates an mp4 file instead of the pipe : https://pastebin.com/Gjq2vxeT
Here is the detailed Firefox log with the wrong box :
Details: virtual mozilla::MediaResult mozilla::MP4ContainerParser::IsInitSegmentPresent(const mozilla::MediaSpan &): Invalid Top-Level Box:f
Please note, Top-Level Box is always ’f’ when I’m doing the scenario marked in point 2 (running without breakpoints).
Update2 :
Here are the ffmpeg’s current output (with numeric and alphanumeric representation, for the first 128 items) : https://pastebin.com/DeJMfNYs
The interesting thing is that the first 4 bytes seems invalid for me. However starting from byte4 (5th byte), it seems OK ("ftyp").
Could you please confirm this ?
-
-
I am trying to develop On demand and live streaming video analysis using java.?
2 avril 2020, par PATEL UJASHAfter a lot of R&D I got something for video analysis.I am gonna use Kafka, spark and openCV. But i am suck in how to deliver streaming on demand and live streaming video. I got FFMPEG help to capture video from different devices or you can stream any Video File too. FFMPEG also help in Video encoding and decoding also. But after encode the video we need to send that data Into any streaming engine like wowza streaming engine, Red5 or AWS media elemental services. I watch some video they have used OBS software for stream.



What if i want to stream it using FFMPEG and publish the video streaming on RTMP link. That link are generated by wowza streaming engine or aws media elemental service like
rtsp://[wowza-ip-address]:1935/[application]/[stream-name]
?


How to deliver different video frames resolution according to bandwidth ?.


-
Converting multiple RTP Streams into gRPC Stream
20 janvier 2020, par GJ.I am receiving multiple RTP streams(g711 ulaw/alaw) which may be coming on TCP or UDP, I want to terminate the RTP and get the raw media from the RTP stream and stream it to a different destination by using Google gRPC protocol.
Currently I have a RTP processing engine which does this and give me the raw stream from RTP stack which i further stream to gRPC destination, but this solution does not scale beyond 1000 streams on one host and is difficult to maintain.
I want to replace this with some highly scalable solution where i can scale to several thousand of streams and does not need to be maintained.
I am exploring option to Use ffmpeg / gstreamer for getting raw packets from RTP stream. Not sure how scalable it would be and how do i get hold of the stream so that i can stream it over gRPC.
I have following questions :
- Is this good option to use ffmpeg / gstreamer for this purpose.
- How do i work with multiple streams any suggestions or sample.
- Any details about the scalability of ffmpeg / gstreamer.
- I plan to use Java for my application, which java wrapper would be good e.g. Xuggle / ffmpeg-cli-wrapper for ffmpeg.