
Recherche avancée
Autres articles (67)
-
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 ;
-
Les tâches Cron régulières de la ferme
1er décembre 2010, parLa gestion de la ferme passe par l’exécution à intervalle régulier de plusieurs tâches répétitives dites Cron.
Le super Cron (gestion_mutu_super_cron)
Cette tâche, planifiée chaque minute, a pour simple effet d’appeler le Cron de l’ensemble des instances de la mutualisation régulièrement. Couplée avec un Cron système sur le site central de la mutualisation, cela permet de simplement générer des visites régulières sur les différents sites et éviter que les tâches des sites peu visités soient trop (...) -
Les autorisations surchargées par les plugins
27 avril 2010, parMediaspip core
autoriser_auteur_modifier() afin que les visiteurs soient capables de modifier leurs informations sur la page d’auteurs
Sur d’autres sites (10122)
-
AudioContext HTML5 Player
15 février 2015, par PlytoSo I’ve been playing with the Web Audio API and have the following issue.
I am making a project in which I call an external library’s API with Ajax and get audio back (arraybuffer).
- I send them the text and get audio back.
- This is not necessarily a GET request (can be POST, etc.)
- If text is too large, I split it into smaller chunks and send multiple requests
So far so good, now comes the issue of how to play the multiple audios that I got back.
Since users do not care that I have split the text and actually have multiple audio tracks, I need somehow to make it look like a single track or as a playlist.
So I have tried to :
- merge arraybuffer (apparently it does not work like that and most likely I need ffmpeg or simiar tools to do the merging, which is hard to do on client-side ? (like there is ffmpeg for browsers, but I don’t know how good is it to burden a client with it). If it’s not so, maybe you can suggest something here)
- load it as a playlist, but so far cannot find a library that accepts multiple audiobuffers/audiocontexts and/or gives a playlist with it back.
The easiest solution that I see so far is to create my own small library that accepts AudioBuffers/arraybuffers and go either with the playlist approach or play the ’chunked’ audios one by one and make scrubber that jumps between audio contexts.
Is there a library/easier approach ?
Will be thankful for any suggestions :]
-
Play video files in a row without delay
13 février 2015, par Ara DeonasI am looking for a way to play 2 video in a row without any delay (or
very tiny delay) when changing files.
I had 1 mp4 file and with ffmpeg I split it into 2 file and now I want
to add them in playlist and play them but I don’t want user feel
changing video but when I test it because of loading file there is a
delay.
I think about stream second file into memory before first file end.
How can I do this ?
I tested LibVLC and read Play a Video from MemoryStream, Using FFMpeg but still no luck.
PS : Any library in any language is good for me.EDIT : I added a demo that play second file after first one but there is a delay beetwen changing.How can I minimize this ?(for example feeding VLC from memory and load second file into memory).
EDIT : Files are small (less than 5mb).unit Unit1;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, FileUtil, PasLibVlcPlayerUnit, Forms, Controls, Graphics,LCLIntf,LCLType,
Dialogs, ExtCtrls, StdCtrls, PasLibVlcPlayer, PasLibVlcUnit, PasLibVlcClassUnit;
type
{ TForm1 }
TForm1 = class(TForm)
Button2: TButton;
Panel2: TPanel;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
function GetVlcInstance(): TPasLibVlc;
procedure WmMediaPlayerEndReached(var m: TVlcMessage); message WM_MEDIA_PLAYER_END_REACHED;
public
FVLC: TPasLibVlc;
media_t_ptr:libvlc_media_t_ptr;
media_t_ptr2:libvlc_media_t_ptr;
FVideoOutput: TVideoOutput;
FAudioOutput: TAudioOutput;
p_mi: libvlc_media_player_t_ptr;
p_instance: libvlc_instance_t_ptr;
p_mi_ev_mgr: libvlc_event_manager_t_ptr;
property VLC: TPasLibVlc read GetVlcInstance;
end;
var
Form1: TForm1;
procedure lib_vlc_player_event_hdlr(p_event: libvlc_event_t_ptr; Data: Pointer); cdecl;
implementation
procedure lib_vlc_player_event_hdlr(p_event: libvlc_event_t_ptr; Data: Pointer); cdecl;
var
Form: TForm1;
begin
if (Data = nil) then
exit;
Form := TForm1(Data);
if not Assigned(Form) then
exit;
case p_event^.event_type of
libvlc_MediaPlayerEndReached:
PostMessage(Form.Handle, WM_MEDIA_PLAYER_END_REACHED, WPARAM(0), LPARAM(0));
end;
end;
{$R *.lfm}
{ TForm1 }
procedure TForm1.Button1Click(Sender: TObject);
begin
end;
procedure TForm1.Button2Click(Sender: TObject);
var
mrl: string;
begin
mrl := 'C:\ffmpeg\bin\tmp\OUTPUT0.mp4';
media_t_ptr:=libvlc_media_new_path(VLC.Handle, PAnsiChar(UTF8Encode(mrl)));
p_instance := VLC.Handle;
p_mi := libvlc_media_player_new(p_instance);
p_mi_ev_mgr := libvlc_media_player_event_manager(p_mi);
libvlc_event_attach(p_mi_ev_mgr, libvlc_MediaPlayerEndReached, @lib_vlc_player_event_hdlr, SELF);
libvlc_media_player_set_media(p_mi, media_t_ptr);
libvlc_media_release(media_t_ptr);
libvlc_media_player_set_display_window(p_mi, Panel2.Handle);
libvlc_media_player_play(p_mi);
mrl := 'C:\ffmpeg\bin\tmp\OUTPUT1.mp4';
media_t_ptr2:=libvlc_media_new_path(VLC.Handle, PAnsiChar(UTF8Encode(mrl)));
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
Button2.Click;
end;
function TForm1.GetVlcInstance: TPasLibVlc;
begin
if not Assigned(FVLC) then
begin
FVLC := TPasLibVlc.Create;
end;
Result := FVLC;
end;
procedure TForm1.WmMediaPlayerEndReached(var m: TVlcMessage);
begin
libvlc_media_player_set_media(p_mi, media_t_ptr2);
libvlc_media_player_play(p_mi);
end;
end. -
FFmpeg : Continuously download X minutes video from livestream ?
16 février 2017, par Dorin PleavaI want to download X minutes from a livestream continuously and overwrite the same file, meaning the file will always have the latest X minutes from the livestream.
Is there a way without calling the following command over and over again in a batch file ? Something that runs continuously from FFMPEG ?
-i http://iphone-streaming.ustream.tv/uhls/17074538/streams/live/iphone/playlist.m3u8 -t 60 -y -c:a copy MyVideo.mp4