
Recherche avancée
Médias (91)
-
Spoon - Revenge !
15 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
My Morning Jacket - One Big Holiday
15 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
Zap Mama - Wadidyusay ?
15 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
David Byrne - My Fair Lady
15 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
Beastie Boys - Now Get Busy
15 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
Granite de l’Aber Ildut
9 septembre 2011, par
Mis à jour : Septembre 2011
Langue : français
Type : Texte
Autres articles (106)
-
Publier sur MédiaSpip
13 juin 2013Puis-je poster des contenus à partir d’une tablette Ipad ?
Oui, si votre Médiaspip installé est à la version 0.2 ou supérieure. Contacter au besoin l’administrateur de votre MédiaSpip pour le savoir -
Encoding and processing into web-friendly formats
13 avril 2011, parMediaSPIP automatically converts uploaded files to internet-compatible formats.
Video files are encoded in MP4, Ogv and WebM (supported by HTML5) and MP4 (supported by Flash).
Audio files are encoded in MP3 and Ogg (supported by HTML5) and MP3 (supported by Flash).
Where possible, text is analyzed in order to retrieve the data needed for search engine detection, and then exported as a series of image files.
All uploaded files are stored online in their original format, so you can (...) -
Qu’est ce qu’un masque de formulaire
13 juin 2013, parUn masque de formulaire consiste en la personnalisation du formulaire de mise en ligne des médias, rubriques, actualités, éditoriaux et liens vers des sites.
Chaque formulaire de publication d’objet peut donc être personnalisé.
Pour accéder à la personnalisation des champs de formulaires, il est nécessaire d’aller dans l’administration de votre MediaSPIP puis de sélectionner "Configuration des masques de formulaires".
Sélectionnez ensuite le formulaire à modifier en cliquant sur sont type d’objet. (...)
Sur d’autres sites (11709)
-
Pass camera input to ffmpeg
30 mai 2017, par Sachin SononeI am trying to develop an delphi app which will show a preview of the camera in the delphi form and then send the frames of video as images to the ffmpeg in the stdin of ffmpeg. ffmpeg then broadcast the video to wowza server over rtmp. but fmpeg gives an error ’pipe:0 Bad file descriptor’
FFMPEG command:
ffmpeg -f image2pipe -i pipe:0 -c:v libx264 -y -report -f flv wowza_urlI followed this https://msdn.microsoft.com/en-us/library/ms682499(VS.85).aspx article to build the parent app which will open ffmpeg as a child and use FFmpeg’s stdin to pass input
// Create a pipe for the child process's STDOUT.
Createpipe(STDOut_ReadPipe, STDOut_WritePipe, @Security,0);
// Ensure the read handle to the pipe for STDOUT is not inherited.
SetHandleInformation(STDOut_ReadPipe,HANDLE_FLAG_INHERIT,0);
// Create a pipe for the child process's STDIN.
if ( CreatePipe(STDIn_ReadPipe , STDIn_WritePipe, @Security, 0) = true) then
// Ensure the write handle to the pipe for STDIN is not inherited.
SetHandleInformation(STDIn_WritePipe, HANDLE_FLAG_INHERIT, 0) ;This the code to start ffmpeg process
FillChar(StartupInfo,Sizeof(StartupInfo),0);
StartupInfo.cb := Sizeof(StartupInfo);
StartupInfo.dwFlags := STARTF_USESTDHANDLES;
StartupInfo.wShowWindow := 1;
S := args;
UniqueString(S);
StartupInfo.hStdError := STDOut_WritePipe;
StartupInfo.hStdOutput := STDOut_WritePipe;
StartupInfo.hStdInput := STDIn_ReadPipe;but as soon as program start ffmpeg exits with the error.
This is the full console log of the ffmpeg
ffmpeg started on 2017-05-30 at 18:45:36
Report written to "ffmpeg-20170530-184536.log"
Command line:
"ffmpeg.exe" -f image2pipe -i pipe:0 -report -movflags +faststart -tune
zerolatency -an -pix_fmt yuv420p -preset ultrafast -vcodec libx264 -b:v 250k
-y -f flv test.flv
ffmpeg version N-85750-ga75ef15 Copyright (c) 2000-2017 the FFmpeg
developers
built with gcc 6.3.0 (GCC)
configuration: --enable-gpl --enable-version3 --enable-cuda --enable-cuvid
--enable-d3d11va --enable-dxva2 --enable-libmfx --enable-nvenc --enable-
avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls
--enable-iconv --enable-libass --enable-libbluray --enable-libbs2b --enable-
libcaca --enable-libfreetype --enable-libgme --enable-libgsm --enable-
libilbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb
--enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg --
enable-libopus --enable-librtmp --enable-libsnappy --enable-libsoxr --
enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab
--enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-
libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-
libxavs --enable-libxvid --enable-libzimg --enable-lzma --enable-zlib
libavutil 55. 61.100 / 55. 61.100
libavcodec 57. 93.100 / 57. 93.100
libavformat 57. 72.101 / 57. 72.101
libavdevice 57. 7.100 / 57. 7.100
libavfilter 6. 88.100 / 6. 88.100
libswscale 4. 7.101 / 4. 7.101
libswresample 2. 8.100 / 2. 8.100
libpostproc 54. 6.100 / 54. 6.100
Splitting the commandline.
Reading option '-f' ... matched as option 'f' (force format) with
argument 'image2pipe'.
Reading option '-i' ... matched as input url with argument 'pipe:0'.
Reading option '-report' ... matched as option 'report' (generate a
report) with argument '1'.
Reading option '-movflags' ... matched as AVOption 'movflags' with
argument '+faststart'.
Reading option '-tune' ... matched as AVOption 'tune' with argument
'zerolatency'.
Reading option '-an' ... matched as option 'an' (disable audio) with
argument '1'.
Reading option '-pix_fmt' ... matched as option 'pix_fmt' (set pixel
format)
with argument 'yuv420p'.
Reading option '-preset' ... matched as AVOption 'preset' with argument
'ultrafast'.
Reading option '-vcodec' ... matched as option 'vcodec' (force video codec
('copy' to copy stream)) with argument 'libx264'.
Reading option '-b:v' ... matched as option 'b' (video bitrate (please use -
b:v)) with argument '250k'.
Reading option '-y' ... matched as option 'y' (overwrite output files)
with
argument '1'.
Reading option '-f' ... matched as option 'f' (force format) with argument
'flv'.
Reading option 'test.flv' ... matched as output url.
Finished splitting the commandline.
Parsing a group of options: global .
Applying option report (generate a report) with argument 1.
Applying option y (overwrite output files) with argument 1.
Successfully parsed a group of options.
Parsing a group of options: input url pipe:0.
Applying option f (force format) with argument image2pipe.
Successfully parsed a group of options.
Opening an input file: pipe:0.
[pipe @ 003bdea0] Setting default whitelist 'crypto'
[AVIOContext @ 03115e60] Statistics: 0 bytes read, 0 seeks
pipe:0: Bad file descriptor' -
Podcast Producer 2 REST api
11 septembre 2009I’ve been working on documenting the REST api that PCP2 uses for client server communication as part of a new project. I thought it might be useful to other folks. Consider this a work in progress - I’ve only documented the workflow for doing a multisource recording so far. Follow the job for the info.
Each section gives a sample command and a sample response.
All pages are behind basic HTTP auth.
General sequence of events
* get workflow list
* get cameras
* request status for camera (including thumbnail)
* start cameras
* create recording enclosure
* stop cameras, provide submission_UUID returned by above step, include title
*URL : https://pcpserver:8170/podcastproducer/info
*Type : GET
*Content : version=2
*Response :
<pre>
<podcast_producer_result>
<action>index</action>
<status>success</status>
<plist version="1.0">
<dict>
<key>server_version</key>
<string>2.0</string>
<key>http_auth_type</key>
<array>
<string>basic</string>
<string>digest</string>
<string>kerberos</string>
</array>
<key>krb_service_principals</key>
<array>
<string>pcast/x101-186-103-dhcp.cla.umn.edu@X101-186-103-DHCP.CLA.UMN.EDU</string>
</array>
<key>server_uuid</key>
<string>DB31DA49-10AE-472C-B3B9-86A8F8112399</string>
<key>cluster_members</key>
<dict>
<key>F1021B98-7E7E-44FB-8EB1-E0DA1885D5BA</key>
<dict>
<key>date_added</key>
<string>Tue Sep 01 10:23:49 -0500 2009</string>
<key>last_update</key>
<string>Tue Sep 08 10:35:17 -0500 2009</string>
<key>server_host</key>
<string>x101-186-103-dhcp.cla.umn.edu</string>
<key>server_port</key>
<string>8170</string>
<key>tunnel_agent_host</key>
<string>x101-186-103-dhcp.cla.umn.edu</string>
<key>tunnel_agent_port</key>
<string>8175</string>
<key>network_addrs</key>
<array>
<string>128.101.186.103</string>
</array>
</dict>
</dict>
</dict>
</plist>
</podcast_producer_result>
</pre>
* URL : https://pcpserver:8170/podcastproducer/workflows
* Type : GET
* Content : version=2&language=en
* Response :
<pre>
<podcast_producer_result>
<action>index</action>
<status>success</status>
<results>OK</results>
<plist version="1.0">
<dict>
<key>user_fullname</key>
<string>podcast</string>
<key>user_shortname</key>
<string>podcast</string>
<key>workflows</key>
<array>
<dict>
<key>name</key>
<string>Montage</string>
<key>title</key>
<string>Montage</string>
<key>description</key>
<string>Montage workflow</string>
<key>uuid</key>
<string>F797D54D-1539-42AA-B6AC-3CB3A4C15EF5</string>
<key>version</key>
<string>2.0</string>
<key>editor</key>
<string>Podcast Composer</string>
<key>sources</key>
<array>
<dict>
<key>contentTypes</key>
<array>
<string>com.apple.quicktime-movie</string>
<string>com.adobe.pdf</string>
<string>com.apple.iwork.keynote.key</string>
<string>com.apple.iwork.pages.pages</string>
<string>org.openxmlformats.wordprocessingml.document</string>
<string>com.microsoft.word.doc</string>
<string>org.openxmlformats.presentationml.presentation</string>
<string>com.microsoft.powerpoint.ppt</string>
<string>com.microsoft.bmp</string>
<string>com.compuserve.gif</string>
<string>public.jpeg-2000</string>
<string>public.jpeg</string>
<string>com.adobe.pdf</string>
<string>com.apple.pict</string>
<string>public.png</string>
<string>com.adobe.photoshop-image</string>
<string>com.sgi.sgi-image</string>
<string>com.truevision.tga-image</string>
<string>public.tiff</string>
</array>
<key>description</key>
<string>Any Document</string>
<key>isFolder</key>
<true/>
<key>isOptional</key>
<false/>
<key>sourceTypes</key>
<array>
<string>File</string>
</array>
</dict>
</array>
<key>user_requirements</key>
<array>
<string>Title</string>
<string>Description</string>
</array>
<key>access_control_entries</key>
<array>
</array>
</dict>
<dict>
<key>name</key>
<string>Single Source</string>
<key>title</key>
<string>Single Source</string>
<key>description</key>
<string>Single Source workflow</string>
<key>uuid</key>
<string>DEFA1587-A650-426E-92DA-01C5EB811705</string>
<key>version</key>
<string>2.0</string>
<key>editor</key>
<string>Podcast Composer</string>
<key>sources</key>
<array>
<dict>
<key>contentTypes</key>
<array>
<string>com.apple.quicktime-movie</string>
</array>
<key>description</key>
<string>Any Video</string>
<key>isFolder</key>
<false/>
<key>isOptional</key>
<false/>
<key>sourceTypes</key>
<array>
<string>Video</string>
<string>Screen</string>
<string>Audio</string>
<string>File</string>
</array>
</dict>
</array>
<key>user_requirements</key>
<array>
<string>Title</string>
<string>Description</string>
</array>
<key>access_control_entries</key>
<array>
</array>
</dict>
</array>
</dict>
</plist>
</podcast_producer_result>
</pre>
----* URL : https://pcpserver:8170/podcastproducer/cameras
* Type : GET
* Content : version=2
* Response :
<pre>
<podcast_producer_result>
<action>index</action>
<status>success</status>
<plist version="1.0">
<dict>
<key>cameras</key>
<array>
<dict>
<key>name</key>
<string>150-A Camera</string>
<key>uuid</key>
<string>307682A5-B552-4AFA-B7E2-3811D772C9A1</string>
<key>connected_to_member_uuid</key>
<string>F1021B98-7E7E-44FB-8EB1-E0DA1885D5BA</string>
<key>in_use</key>
<string>false</string>
<key>recording_status</key>
<string>online</string>
<key>preview_url</key>
<string>https://x101-186-103-dhcp.cla.umn.edu:8170/podcastproducer/previews/307682A5-B552-4AFA-B7E2-3811D772C9A1.jpg</string> ;
<key>access_control_entries</key>
<array>
</array>
</dict>
<dict>
<key>name</key>
<string>150-A Epiphan</string>
<key>uuid</key>
<string>CE610AB0-CA50-49EB-8FFE-78E57CDCA550</string>
<key>connected_to_member_uuid</key>
<string>F1021B98-7E7E-44FB-8EB1-E0DA1885D5BA</string>
<key>in_use</key>
<string>false</string>
<key>recording_status</key>
<string>online</string>
<key>preview_url</key>
<string>https://x101-186-103-dhcp.cla.umn.edu:8170/podcastproducer/previews/CE610AB0-CA50-49EB-8FFE-78E57CDCA550.jpg</string> ;
<key>access_control_entries</key>
<array>
</array>
</dict>
</array>
</dict>
</plist>
</podcast_producer_result>
</pre>
* URL : https://pcpserver:8170/podcastproducer/cameras/start
* Type : POST
* Content : action=pause&version=2&camera_name=150-A%20Camera&controller=cameras
* Response :
<pre>
<podcast_producer_result>
<action>start</action>
<status>success</status>
<results>OK</results>
</podcast_producer_result>
</pre>
* URL : https://pcpserver:8170/podcastproducer/cameras/status
* Type : POST
* Content : delay=0&action=start&version=2&camera_name=150-A%20Epiphan&controller=cameras
* Response :
<pre><podcast_producer_result>
<action>status</action>
<status>success</status>
<results>OK</results>
<plist version="1.0">
<dict>
<key>preview</key>
<string>https://x101-186-103-dhcp.cla.umn.edu:8170/podcastproducer/previews/307682A5-B552-4AFA-B7E2-3811D772C9A1.jpg</string> ;
<key>preview_image_data</key>
<string>RAW JPEG DATA RAW JPEG DATA RAW JPEG DATA RAW JPEG DATA RAW JPEG DATA</string>
<key>recording_status</key>
<string>online</string>
<key>started_at</key>
<string>Tue Sep 08 09:31:40 -0500 2009</string>
<key>stopped_at</key>
<string>Tue Sep 08 09:32:10 -0500 2009</string>
<key>elapsed</key>
<string>41</string>
<key>last_error</key>
<string>805306368</string>
</dict>
</plist>
</podcast_producer_result>
</pre>
* URL : https://pcpserver:8170/podcastproducer/cameras/pause
* Type : POST
* Content : action=pause&version=2&camera_name=150-A%20Camera&controller=cameras
* Response :
<pre><podcast_producer_result>
<action>status</action>
<status>success</status>
<results>OK</results>
<plist version="1.0">
<dict>
<key>preview</key>
<string>https://x101-186-103-dhcp.cla.umn.edu:8170/podcastproducer/previews/307682A5-B552-4AFA-B7E2-3811D772C9A1.jpg</string> ;
<key>recording_status</key>
<string>online</string>
<key>started_at</key>
<string>Tue Sep 08 09:31:40 -0500 2009</string>
<key>stopped_at</key>
<string>Tue Sep 08 09:32:10 -0500 2009</string>
<key>elapsed</key>
<string>41</string>
<key>last_error</key>
<string>805306368</string>
</dict>
</plist>
</podcast_producer_result></pre>
* URL : https://pcpserver:8170/podcastproducer/cameras/stop
* Type : POST
* Content : workflow_name=&UserMetadata_Description=&submission_uuid=7497E3AC-0A75-4C7C-8C66-26294C9274FE&action=stop&version=2&camera_name=150-A%20Epiphan&controller=cameras&UserMetadata_Title=Test123
* Response :
<pre><podcast_producer_result>
<action>stop</action>
<status>success</status>
<results>OK</results>
</podcast_producer_result>
</pre>
* URL : https://pcpserver:8170/podcastproducer/recordings/create
* Type : POST
* Content : version=2&workflow_uuid=C6EF52A7-04E3-477D-9F38-6B61F108D7B9
* Response :
<pre>
<podcast_producer_result>
<action>create</action>
<status>success</status>
<results>OK</results>
<plist version="1.0">
<dict>
<key>workflow_uuid</key>
<string>C6EF52A7-04E3-477D-9F38-6B61F108D7B9</string>
<key>recording_uuid</key>
<string>FD5A1459-F7CE-41FA-8155-049DF774298B</string>
<key>submission_uuids</key>
<array>
<string>A626D8E4-E439-4E57-9982-DB4BD035CB41</string>
<string>CFBCCB74-A41F-42D3-BEAA-58165B1116C6</string>
</array>
</dict>
</plist>
</podcast_producer_result>
</pre> -
using ffmpeg in Azure function to cut files using c#
24 mars 2017, par abhishekmoondra1989I have written an Azure function in C# which will cut a big mp4 files into some small duration. I have copied everything that is required (ffmpeg executeable, video file) in home directory via KUDU console. But when I run the the function it runs for more than 5 minutes and it doesn’t give any files in the home directory.
Function :
using System;
using System.Diagnostics;
public static void Run(string input, TraceWriter log)
{
log.Info("Executing");
using (var process = new Process())
{
process.StartInfo.FileName = @"D:\home\ffmpeg.exe";
process.StartInfo.Arguments = @"-i D:\home\AmnestyInternational.mp4 -ss 00:00:03 -t 00:00:08 -async 1 D:\home\cut.mp4";
process.StartInfo.UseShellExecute = false;
process.StartInfo.RedirectStandardOutput = true;
process.StartInfo.RedirectStandardError = true;
log.Info(Directory.GetCurrentDirectory());
log.Info("Cutting starts:"+DateTime.Now.ToString("h:mm:ss tt"));
process.Start();
string output = process.StandardOutput.ReadToEnd();
process.WaitForExit();
log.Info("Cutting ends :"+DateTime.Now.ToString("h:mm:ss tt"));
log.Info(output);
}
}Output seen on Azure function Console :
2017-03-24T11:06:00.705 Function started (Id=df082f54-719a-415f-b7f1-b10548a213be)
2017-03-24T11:06:00.721 Executing
2017-03-24T11:06:00.721 D:\Windows\system32
2017-03-24T11:06:00.721 Cutting start :11:06:00 AM
2017-03-24T11:07:14 No new trace in the past 1 min(s).
2017-03-24T11:08:14 No new trace in the past 2 min(s).
2017-03-24T11:09:14 No new trace in the past 3 min(s).
2017-03-24T11:10:14 No new trace in the past 4 min(s).
2017-03-24T11:11:00.758 Microsoft.Azure.WebJobs.Host: Timeout value of 00:05:00 was exceeded by function: Functions.ManualTriggerCSharp1.When I try to execute this same command on KUDU console or my own PC it only take 1.5 mins and I get a file of the desired duration
Could anyone please help me with this ? What I might be missing ?