
Recherche avancée
Médias (91)
-
Corona Radiata
26 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
Lights in the Sky
26 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
Head Down
26 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
Echoplex
26 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
Discipline
26 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
Letting You
26 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
Autres articles (84)
-
MediaSPIP v0.2
21 juin 2013, parMediaSPIP 0.2 est la première version de MediaSPIP stable.
Sa date de sortie officielle est le 21 juin 2013 et est annoncée ici.
Le fichier zip ici présent contient uniquement les sources de MediaSPIP en version standalone.
Comme pour la version précédente, il est nécessaire d’installer manuellement l’ensemble des dépendances logicielles sur le serveur.
Si vous souhaitez utiliser cette archive pour une installation en mode ferme, il vous faudra également procéder à d’autres modifications (...) -
Organiser par catégorie
17 mai 2013, parDans MédiaSPIP, une rubrique a 2 noms : catégorie et rubrique.
Les différents documents stockés dans MédiaSPIP peuvent être rangés dans différentes catégories. On peut créer une catégorie en cliquant sur "publier une catégorie" dans le menu publier en haut à droite ( après authentification ). Une catégorie peut être rangée dans une autre catégorie aussi ce qui fait qu’on peut construire une arborescence de catégories.
Lors de la publication prochaine d’un document, la nouvelle catégorie créée sera proposée (...) -
MediaSPIP version 0.1 Beta
16 avril 2011, parMediaSPIP 0.1 beta est la première version de MediaSPIP décrétée comme "utilisable".
Le fichier zip ici présent contient uniquement les sources de MediaSPIP en version standalone.
Pour avoir une installation fonctionnelle, il est nécessaire d’installer manuellement l’ensemble des dépendances logicielles sur le serveur.
Si vous souhaitez utiliser cette archive pour une installation en mode ferme, il vous faudra également procéder à d’autres modifications (...)
Sur d’autres sites (11577)
-
I want to be able to view the CCTV screen on the web
12 mars 2019, par 윤성호I want to be able to view the CCTV screen on the web.
I have been working on a project that allows the ip camera to be viewed on the web.
Then I was asked to make Coaxial camera visible on the web.
So I decided to use DVR.
First, I connected the DVR to the router.
Then the input of the coaxial camera is received by the DVR and the DVR transmits the information through the router.
Through this process, i confirmed that rtsp works normally.
But it didn’t work on the web.I am currently using the nginx web server.
and use ffmpeg to send rtsp information to rtmp on my nginx web server.
The web server will then transform it into an hls (index.m3u8) file.
I think something went wrong during this process.Nginx RTMP Config
# RTMP Config
rtmp {
server {
listen 1935; # Listen on standard RTMP port
chunk_size 4000;
application live{
live on;
deny play all;
push rtmp://localhost/play;
on_publish http://localhost:3001/api/on-live-auth;
on_publish_done http://localhost:3001/api/on-live-done;
}
application play {
live on;
# Turn on HLS
hls on;
hls_nested on;
hls_fragment_naming system;
hls_path /home/banana/nginx/live;
hls_fragment 3;
hls_playlist_length 60;
# disable consuming the stream from nginx as rtmp
#deny play all;
}
}
}
# End RTMP ConfigFFMPEG command
ffmpeg -i rtsp://<cameraip> -c:v copy -rtsp_transport tcp -preset veryfast -c:a copy -fflags +igndts+genpts -f flv rtmp://localhost/live/<cameraid>
</cameraid></cameraip>Test results
IP Camera RTSP address = admin:qwerty1.@ssnet4.iptime.org:555/trackID=3
DVR RTSP address = admin:hrd-442s@hwakptz.iptime.org:4524/1
Run the above rtsp addresses in vlc player respectively
Success : IP Camera RTSP address , DVR RTSP address
IP camera HLS address = http://168.131.150.80:4567/live/5c28ae28c6cd0c6c329e1ebc/index.m3u8
DVR HLS address = http://168.131.150.80:4567/live/5c8746c9d7d74a600edf2460/index.m3u8
Run the above rtsp addresses in vlc player respectively
Sucess : IP Camera HLS address
Fail : DVR HLS address
This is the same result on the react player.
const streamUrl = `http://168.131.150.80:4567/live/<cameraid>/index.m3u8`;
<reactplayer width="{"100%"}" height="{"100%"}" url="{streamUrl}" playing="{true}" controls="{false}" muted="{true}"></reactplayer>
</cameraid>Question
- Is there a way to see rtsp directly on the web ?
- What’s the problem and what’s the other way ?
-
Decoding h.264 in node.js without ffmpeg and send it to front or save it in fs
5 mars 2019, par JT.v26I’m doing the final project of a bootcamp.
The project consists of controlling a drone (Tello) with a mobile phone. So for this project I’m using react native. In which I insert a node.js inside the application (Node.js for Mobile Apps React Native) since the drone creates a wifi and I lose internet access to connect to a remote server.
All right so far, the drone has three udp ports enabled on the sdk to receive instructions, send status and send video.
The video gives it to me in raw.I did a test on the computer, downloading ffmpeg and converting that data and I could effectively have the video retransmission.
My questions are :
Is there any way I can use the same technique on the mobile without needing ffmpeg ?
Is there any way to import ffmpeg into android and communicate with nodejs ?
Is there any other solution where I can use another node that doesn’t have to be on the phone ?
Or you may even find some other solution to address this problem.
Thank you very much in advance
-
Promise chaining and resolution
23 janvier 2019, par Shourya SharmaI am trying to convert videos one by one with the help of promises. i am using ffmpeg for conversion and multer for uploading multiple files.
multer uploads multiple files at once after which i have to chain the conversions one by one. as of now it just converts the 1st file.
i thought chaining of promises ..like in an array should work but i am confused if i can define new promises in an array as ffmpeg also returns a promise
My router :
const router = require('express').Router();
const multer = require('multer');
const ffmpeg = require('ffmpeg');
let str;
const storage = multer.diskStorage({
destination: (req, file, cb) => {
cb(null, './uploads');
},
filename: (req, file, cb) => {
str = file.originalname.replace(/\.[^/.]+$/, "");
str = str.replace(/[^a-z0-9+]+/gi, '_') + '.' + file.originalname.replace(/^.*\./, '');
cb(null, str);
}
});
const upload = multer({ storage: storage }).array('files', 12);
router.post('/upload', (req, res, next) => {
// req.files is an array of files
// req.body will contain the text fields, if there were any
function uploadFile() {
return new Promise((resolve, reject) => {
upload(req, res, (err) => {
if (err) {
res.send(err) // Pass errors to Express.
reject(`Error: Something went wrong!`);
} else if (req.files == undefined) {
res.send(`No File selected.`);
resolve();
} else if (!err && req.files.length > 0) {
res.status(201).send(`${req.files.length} File(s): ${req.files} uploaded successfully.`);
console.log('uploaded');
resolve();
}
});
});
}
uploadFile().then(() => {
try {
var process = new ffmpeg('./uploads/' + str);
process.then(function (video) {
console.log('The video is ready to be processed');
video.addCommand('-hide_banner', '');
video.addCommand('-y', '');
video.addCommand('-c:a', 'aac');
video.addCommand('-ar', '48000');
video.addCommand('-c:v', 'h264');
video.addCommand('-profile:v', 'main');
video.addCommand('-crf', '20');
video.addCommand('-sc_threshold', '0');
video.addCommand('-g', '50');
video.addCommand('-keyint_min', '50');
video.addCommand('-hls_time', '4');
video.addCommand('-hls_playlist_type', 'vod');
video.addCommand('-vf', 'scale=-2:720');
video.addCommand('-b:v', '1400k');
video.addCommand('-maxrate', '1498k');
video.addCommand('-bufsize', '2100k');
video.addCommand('-b:a', '128k');
video.save('./converted/' + str, function (error, file) {
if (!error)
console.log('Video file: ' + file);
});
}, function (err) {
console.log('Error: ' + err);
});
} catch (e) {
console.log(e.code);
console.log(e.msg);
}
}).catch((err) => {
console.log(Error, err);
});
});
module.exports = router;