
Recherche avancée
Médias (2)
-
Valkaama DVD Label
4 octobre 2011, par
Mis à jour : Février 2013
Langue : English
Type : Image
-
Podcasting Legal guide
16 mai 2011, par
Mis à jour : Mai 2011
Langue : English
Type : Texte
Autres articles (64)
-
Des sites réalisés avec MediaSPIP
2 mai 2011, parCette page présente quelques-uns des sites fonctionnant sous MediaSPIP.
Vous pouvez bien entendu ajouter le votre grâce au formulaire en bas de page. -
Support audio et vidéo HTML5
10 avril 2011MediaSPIP utilise les balises HTML5 video et audio pour la lecture de documents multimedia en profitant des dernières innovations du W3C supportées par les navigateurs modernes.
Pour les navigateurs plus anciens, le lecteur flash Flowplayer est utilisé.
Le lecteur HTML5 utilisé a été spécifiquement créé pour MediaSPIP : il est complètement modifiable graphiquement pour correspondre à un thème choisi.
Ces technologies permettent de distribuer vidéo et son à la fois sur des ordinateurs conventionnels (...) -
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 (7969)
-
FFMPEG library's some command not working on android
21 février 2014, par Saurabh PrajapatiI need following 2 commands to work on android platform. I found many article on this site where they inform these command works fine for them but it is not working at my end
For Fedding Effect :
"ffmpeg -i filename1 fade=in:5:8 output.mp4"For Concate Video Files :
"ffmpeg -i concat : filename1|filename2 -codec copy output.mp4"Error : App throws error like unknown command "concate" and "fad-in5:8".
My Goal : I need to concate 2 "mp4" video files on android platform with Fed In/Fed Out effects.
Following is my code
public class VideoTest extends Activity
public static final String LOGTAG = "MJPEG_FFMPEG";
byte[] previewCallbackBuffer;
boolean recording = false;
boolean previewRunning = false;
File jpegFile;
int fileCount = 0;
FileOutputStream fos;
BufferedOutputStream bos;
Button recordButton;
Camera.Parameters p;
NumberFormat fileCountFormatter = new DecimalFormat("00000");
String formattedFileCount;
ProcessVideo processVideo;
String[] libraryAssets = {"ffmpeg","ffmpeg.so",
"libavcodec.so", "libavcodec.so.52", "libavcodec.so.52.99.1",
"libavcore.so", "libavcore.so.0", "libavcore.so.0.16.0",
"libavdevice.so", "libavdevice.so.52", "libavdevice.so.52.2.2",
"libavfilter.so", "libavfilter.so.1", "libavfilter.so.1.69.0",
"libavformat.so", "libavformat.so.52", "libavformat.so.52.88.0",
"libavutil.so", "libavutil.so.50", "libavutil.so.50.34.0",
"libswscale.so", "libswscale.so.0", "libswscale.so.0.12.0"
};
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
for (int i = 0; i < libraryAssets.length; i++) {
try {
InputStream ffmpegInputStream = this.getAssets().open(libraryAssets[i]);
FileMover fm = new FileMover(ffmpegInputStream,"/data/data/com.mobvcasting.mjpegffmpeg/" + libraryAssets[i]);
fm.moveIt();
} catch (IOException e) {
e.printStackTrace();
}
}
Process process = null;
try {
String[] args = {"/system/bin/chmod", "755", "/data/data/com.mobvcasting.mjpegffmpeg/ffmpeg"};
process = new ProcessBuilder(args).start();
try {
process.waitFor();
} catch (InterruptedException e) {
e.printStackTrace();
}
process.destroy();
} catch (IOException e) {
e.printStackTrace();
}
File savePath = new File(Environment.getExternalStorageDirectory().getPath() + "/com.mobvcasting.mjpegffmpeg/");
savePath.mkdirs();
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.main);
processVideo = new ProcessVideo();
processVideo.execute();
}
@Override
public void onConfigurationChanged(Configuration conf)
{
super.onConfigurationChanged(conf);
}
private class ProcessVideo extends AsyncTask {
@Override
protected Void doInBackground(Void... params) {
Log.d("test", "VideoTest doInBackground Start");
/*String videofile = Environment.getExternalStorageDirectory().getPath() + "/com.mobvcasting.mjpegffmpeg/splitter.mp4";
File file = new File(videofile);
if(file.exists())
file.delete();
file=null;*/
Process ffmpegProcess = null;
try {
String filename1 = Environment.getExternalStorageDirectory().getPath()+ "/com.mobvcasting.mjpegffmpeg/test.mp4";
String filename2 = Environment.getExternalStorageDirectory().getPath()+ "/com.mobvcasting.mjpegffmpeg/splitter.mp4";
String StartPath = Environment.getExternalStorageDirectory().getPath() + "/com.mobvcasting.mjpegffmpeg/";
//String[] ffmpegCommand = {"/data/data/com.mobvcasting.mjpegffmpeg/ffmpeg", "-i", "concat:\""+ filename1+"|"+ filename2+"\"", "-codec", "copy", Environment.getExternalStorageDirectory().getPath() + "/com.mobvcasting.mjpegffmpeg/output.mp4"};
//String[] ffmpegCommand = {"/data/data/com.mobvcasting.mjpegffmpeg/ffmpeg", "-i", filename1, "fade=in:5:8", Environment.getExternalStorageDirectory().getPath() + "/com.mobvcasting.mjpegffmpeg/output.mp4"};
ffmpegProcess = new ProcessBuilder(ffmpegCommand).redirectErrorStream(true).start();
OutputStream ffmpegOutStream = ffmpegProcess.getOutputStream();
BufferedReader reader = new BufferedReader(new InputStreamReader(ffmpegProcess.getInputStream()));
String line;
Log.d("test", "***Starting FFMPEG***");
while ((line = reader.readLine()) != null)
{
Log.d("test", "***"+line+"***");
}
Log.d("test", "***Ending FFMPEG***");
} catch (IOException e) {
e.printStackTrace();
}
if (ffmpegProcess != null) {
ffmpegProcess.destroy();
}
Log.d("test", "doInBackground End");
return null;
}
protected void onPostExecute(Void... result) {
Log.d("test", "onPostExecute");
Toast toast = Toast.makeText(VideoTest.this, "Done Processing Video", Toast.LENGTH_LONG);
toast.show();
}
}Just for your information, I have copy source from following library
https://github.com/pvskalyan/Android-MJPEG-Video-Capture-FFMPEG?source=c
-
OSError : MoviePy error : failed to read the first frame of video file
1er août 2023, par SteveI am trying to extract and save a frame from an .mp4 using moviepy like so (simplified) :


from moviepy.editor import *
clip = VideoFileClip('conditiontest1.mpg')
clip.save_frame('frame1.png', 20)



When I run this I get :




Traceback (most recent call last) :

File"C :\Users\boss\Documents\DVDFab\Video Enhancer AI\join.py", line 23, > in 
clip = VideoFileClip(d + f + '.mp4')
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "C :\Python311\Lib\site-packages\moviepy\video\io\VideoFileClip.py", > line 88, in init_
self.reader = FFMPEG_VideoReader(filename, pix_fmt=pix_fmt,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "C :\Python311\Lib\site-packages\moviepy\video\io\ffmpeg_reader.py", > line 73, in init_
self.lastread = self.read_frame()
^^^^^^^^^^^^^^^^^

File "C :\Python311\Lib\site-packages\moviepy\video\io\ffmpeg_reader.py", > line 133, in read_frame
raise IOError(("MoviePy error : failed to read the first frame of "
OSError : MoviePy error : failed to read the first frame of video file > conditiontest1.mp4. That might mean that the file is corrupted. That may also mean that you are using a deprecated version of FFMPEG. On Ubuntu/Debian for instance the version in the repos is deprecated. Please update to a recent version from the website.



Quite a few people have reported this error. The file is not corrupted, at least it plays fine in VLC. I have the latest FFMPEG. I have tried the other recommended fix, i.e. giving the full path. No help.


One interesting thing is that this only seems to happen to me when I'm processing clips I've produced with moviepy, as in :


from moviepy.editor import *
clip = VideoFileClip('conditiontest.mpg4')
clip1 = clip.subclip(10,60)
clip1.write_videofile('conditiontest1.mpg4',codec='libx264')



That runs fine. Anyone have ideas how I can fix this ?


-
Python Send FFMPEG stdout and stderr to Multiple files using for loop
17 avril 2021, par D0nHere is my scripts


csv_location = '/home/scripts/streams.csv'
ffmpeg_location = '/usr/bin/ffmpeg'
ffmpeglogs = '/home/scripts/ffmpeglog/'

# Open the streams list csv file
with open(csv_location) as csv_file:
 csv_reader = csv.reader(csv_file, delimiter=',')
 for row in csv_reader:
 ffmpeg_log = (ffmpeglogs + row[0]) # set the ffmpeg log to be named the stream name
 # Open log file for writing
 with open(ffmpeg_log, 'wb') as ffmpeg_output: 
 # Iterate through streams list
 for row in csv_reader:
 print(row)
 stream_output = (row[0] + ".mpeg") # stream output variable
 # Subprocess record 1 stream at a time & send the output t0 stdout & stdeer
 ffmpeg_instance = subprocess.Popen([ffmpeg_location, '-t', '10', '-i', row[1], stream_output], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
 # sent output to ffmpeg log
 ffmpeg_output.write(ffmpeg_instance.communicate()[1])



Here is my CSV File


Name,RTSP_URL
stream1,rtsp://wowzaec2demo.streamlock.net/vod/mp4:BigBuckBunny_115k.mov
stream3,rtsp://wowz.streamlock.net/vod/mp4:BigBuckBunny_115k.mov
stream4,rtsp://wowzaec2demo.streamlock.net/vod/mp4:BigBuckBunny_115k.mov



So I have a script that reads a CSV file and ffmpeg records the video for 10 seconds. Then spits the output of the FFMPEG to a file. I need each camera to have its own file. Really just to log FFMPEG output for each camera. But my issue is that the FFMPEG output for multiple cameras get written to 1 file.


Here is what I want to see in /home/scripts/ffmpeglog/


stream1 stream3 stream4



Here's what I'm actually what I see in /home/scripts/ffmpeglog/


name stream1