
Recherche avancée
Médias (1)
-
SPIP - plugins - embed code - Exemple
2 septembre 2013, par
Mis à jour : Septembre 2013
Langue : français
Type : Image
Autres articles (96)
-
MediaSPIP 0.1 Beta version
25 avril 2011, parMediaSPIP 0.1 beta is the first version of MediaSPIP proclaimed as "usable".
The zip file provided here only contains the sources of MediaSPIP in its standalone version.
To get a working installation, you must manually install all-software dependencies on the server.
If you want to use this archive for an installation in "farm mode", you will also need to proceed to other manual (...) -
Multilang : améliorer l’interface pour les blocs multilingues
18 février 2011, parMultilang est un plugin supplémentaire qui n’est pas activé par défaut lors de l’initialisation de MediaSPIP.
Après son activation, une préconfiguration est mise en place automatiquement par MediaSPIP init permettant à la nouvelle fonctionnalité d’être automatiquement opérationnelle. Il n’est donc pas obligatoire de passer par une étape de configuration pour cela. -
HTML5 audio and video support
13 avril 2011, parMediaSPIP uses HTML5 video and audio tags to play multimedia files, taking advantage of the latest W3C innovations supported by modern browsers.
The MediaSPIP player used has been created specifically for MediaSPIP and can be easily adapted to fit in with a specific theme.
For older browsers the Flowplayer flash fallback is used.
MediaSPIP allows for media playback on major mobile platforms with the above (...)
Sur d’autres sites (7665)
-
i have problem in python with Muxing video and audio
2 février 2021, par Mahmoud AhmedI want to merge files video and audio but I don't know how I did try many times to fix it with ffmpeg,subprocess and moviepy with a deferent ways so this my problem and I stop work on it here if someone can help me to edit it and send to me back please .


This is my code with a window .


from pytube import YouTube
from tkinter import *
from tqdm import tqdm
from os import startfile
import subprocess
import shutil
import pytube
import ffmpeg
import time
import sys
import os
#Functions
def download():
 video_url = url.get()
 try:
 youtube = pytube.YouTube(video_url)
 video = youtube.streams.filter(adaptive=True,file_extension='mp4').order_by('resolution').desc().first()
 video.download(filename='Dvideo')
 audio = youtube.streams.get_by_itag(251).download(filename='Daudio') #webm 
 notif.config(fg="green",text="Download is Completed")



 except Exception as e:
 print(e)
 notif.config(fg="red",text="There is an Error in the Downloading Check Your url")

def Merge():
 try:
 os.system("ffmpeg -i Dvideo.mp4 -i Daudio.webm -c:v copy -c:a aac output.mp4")
 #video = ffmpeg.input('Dvideo.mp4')
 #audio = ffmpeg.input('Daudio.webm')
 #out = ffmpeg.output(video, audio, r'final.mp4', vcodec='"avc1.640028')
 #out.run()

 except Exception as w:
 print(w)
 notif.config(fg="red",text="There is an Error in the Merge")

#Main Screen
Window = Tk()
Window.title("Youtube Video Downloader ")
#The Labels of Texts 
Label(Window, text="Youtube Video Converter \n By: Mahmoud Ahmed", fg="blue", font=("Calibri",15)).grid(sticky=N,padx=15,row=0)
Label(Window, text="Please enter the url of the Video u want to download it : ", font=("Calibri",12)).grid(sticky=N,row=1,pady=15)
Label(Window, text="Notice Any Downloading will be in the same file with this tool.", fg="orange", font=("Calibri",10)).grid(sticky=N,padx=15,row=8)

#my_progress = ttk.Progressbar(Window,length=130, mode='determinate').grid(row= 9, pady=20)


notif = Label(Window,font=("Calibri",12))
notif.grid(sticky=N,pady=1,row=6)
#Variables
url = StringVar()
#The empty label for URL
Entry(Window,width=50,textvariable=url).grid(sticky=N,row=2)
#The Button
Button(Window,width=20,text="Download",font=("Calibri",12),command=download).grid(sticky=N,row=4,pady=15)
Button(Window,width=20,text="Merge",font=("Calibri",12),command=Merge).grid(sticky=N,row=5,pady=15)
#Button(Window,width=20,text="Info",font=("Calibri",12),command=download).grid(sticky=N,row=4,pady=15)

Window.mainloop()




-
nginx rtmp ubuntu18.04 ffmpeg transcode problem
26 septembre 2020, par Muhammet Halit ParlakI installed nginx rtmp on ubuntu 20.04, but somehow I could not run ffmpeg. Previously it was working in ubuntu 12.04.


exec ffmpeg -i http://iptvle-platinum.dyndns-server.com:80/live/YQbNcng9Iu/HzZ15vbJzN/57835.ts -codec copy -bsf:v h264_mp4toannexb -f mpegts udp ://51.77.148.186:2555 ;


-
I have a problem with node js rtsp streaming server
11 décembre 2022, par sangeun joI made rtsp cctv streaming server with nodjs.


But it is not stable.


Some cctvs works well but others are not.


First I thought rtsp url has its own problem, but it may not.
Because the url worked well in vlc player.


I don't know what I'm missing.


below is my whole code related cctv streaming.




var express = require('express');
var router = express.Router();
var kill = require('tree-kill');
var fs = require('fs');
var path = require('path');

var ffmpeg = require('fluent-ffmpeg');
var ffmpegInstaller = require('@ffmpeg-installer/ffmpeg');
ffmpeg.setFfmpegPath(ffmpegInstaller.path)

var streams = {};

//start cctv
router.post('/', (req, res) => {

 var cname = req.body.cname;
 var url = req.body.url;

 //if there is same cctv name
 if(streams[cname] != null) {
 res.status(409).send("duplicate name");
 return;
 };

 //create dir as given cctv name;
 mkdir(cname);

 stream = ffmpeg(url).addOptions([
 '-hls_time 5', 
 '-hls_list_size 10',
 '-hls_flags delete_segments',
 '-f hls' 
 ]).output('./public/video/' + cname + '/' + cname + '.m3u8'); //save path

 console.log("Start cctv streaming");
 stream.on('error', function(err, stdout, stderr) {
 console.log("cctv has been stoped");
 console.log(err);
 });

 stream.run(); 

 streams[cname] = stream;
 res.status(201).send("OK");
});

//bring cctv pid by cctv name
router.get('/:cname', (req, res) => {
 var cname = req.params.cname;

 if(streams[cname] == null) {
 res.status(404).send("not found such a cctv");
 return;
 };

 var pid = streams[cname].ffmpegProc.pid;
 res.send({"pid": pid});
});


//stop cctv by pid 
router.delete('/:cname', async (req, res) => {
 var cname = req.params.cname;
 
 //no cctv
 if(streams[cname] == null) {
 res.status(404).send("not found such a cctv");
 return;
 };


 //del dir
 var filePath = './public/video/' + cname;
 fs.rmdir(filePath, { recursive: true }, (err) => {
 if (err) {
 console.log(err)
 } else {
 console.log('dir is deleted.');
 }
 });

 //var pid = streams[cname].ffmpegProc.pid;
 streams[cname].kill();
 res.status(204).send("OK");
});

const mkdir = (name) => {
 var root = './public/video/';
 if(!fs.existsSync(root + name)){
 fs.mkdirSync(root + name);
 }
}







And this is ts file save folder.
cctv1 dosen't work well but cctv2 works well.
(cctv1 started first but created less ts file than cctv2.)