
Recherche avancée
Médias (91)
-
999,999
26 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
The Slip - Artworks
26 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Texte
-
Demon seed (wav version)
26 septembre 2011, par
Mis à jour : Avril 2013
Langue : English
Type : Audio
-
The four of us are dying (wav version)
26 septembre 2011, par
Mis à jour : Avril 2013
Langue : English
Type : Audio
-
Corona radiata (wav version)
26 septembre 2011, par
Mis à jour : Avril 2013
Langue : English
Type : Audio
-
Lights in the sky (wav version)
26 septembre 2011, par
Mis à jour : Avril 2013
Langue : English
Type : Audio
Autres articles (24)
-
(Dés)Activation de fonctionnalités (plugins)
18 février 2011, parPour gérer l’ajout et la suppression de fonctionnalités supplémentaires (ou plugins), MediaSPIP utilise à partir de la version 0.2 SVP.
SVP permet l’activation facile de plugins depuis l’espace de configuration de MediaSPIP.
Pour y accéder, il suffit de se rendre dans l’espace de configuration puis de se rendre sur la page "Gestion des plugins".
MediaSPIP est fourni par défaut avec l’ensemble des plugins dits "compatibles", ils ont été testés et intégrés afin de fonctionner parfaitement avec chaque (...) -
Le plugin : Podcasts.
14 juillet 2010, parLe problème du podcasting est à nouveau un problème révélateur de la normalisation des transports de données sur Internet.
Deux formats intéressants existent : Celui développé par Apple, très axé sur l’utilisation d’iTunes dont la SPEC est ici ; Le format "Media RSS Module" qui est plus "libre" notamment soutenu par Yahoo et le logiciel Miro ;
Types de fichiers supportés dans les flux
Le format d’Apple n’autorise que les formats suivants dans ses flux : .mp3 audio/mpeg .m4a audio/x-m4a .mp4 (...) -
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 (7626)
-
FFMPEG set -ss and -to with string
12 mai 2017, par NewUserI know I can set the start with -ss and end with -to but can someone please help me to format the following so that I can enter the
-ss
and-to
with a string ?I want
-ss
to come fromString start = editStart.getText().toString();
and
-to
to come fromString end = editEnd.getText().toString();
Here is my ffmpeg string I want to edit, I have entered
-ss
and-to
to show where I want the above strings to be.String s = "-i" + " " + mVideoUri.toString().replace("file:///", "") + " -i " + newBackgroundBitmap.getPath() + " -filter_complex [1:v][0:v]scale2ref=iw:ih[ovr][base];[ovr]colorchannelmixer=aa=0.7[ovrl];[base][ovrl]overlay[v] -ss -to -map [v] -c:v libx264 -preset ultrafast " + directoryToStore + "/" + FileName + mp4;
String[] arguments = s.split(" ");
ExecuteFFMPEG(arguments);EDIT
Here is the full ffmpeg
//Button onclick
public void onButtonClicked(View view) {
switch (view.getId()) {
//WHEN THE EXPORT BUTTON IS CLICKED
case Export:
String s = "-i" + " " + mVideoUri.toString() + " -i " + newBackgroundBitmap.getPath() + " -filter_complex [1:v][0:v]scale2ref=iw:ih[ovr][base];[ovr]colorchannelmixer=aa=0.7[ovrl];[base][ovrl]overlay[v] -map [v] -c:v libx264 -preset ultrafast " + directoryToStore + "/" + lastSaved + mp;
String[] arguments = s.split(" ");
ExecuteFFMPEG(arguments);
}
}
//Added onLoad FFMPEG
public void LoadFFMPEG() {
FFmpeg ffmpeg = FFmpeg.getInstance(getBaseContext());
try {
ffmpeg.loadBinary(new LoadBinaryResponseHandler() {
@Override
public void onStart() {
super.onStart();
}
@Override
public void onFailure() {
super.onFailure();
}
@Override
public void onSuccess() {
super.onSuccess();
}
@Override
public void onFinish() {
super.onFinish();
}
});
} catch (FFmpegNotSupportedException e1) {
e1.printStackTrace();
Log.d("[FFMPEGMain Exception]-", e1.toString());
}
}
//Added Exceute FFMPEG
public void ExecuteFFMPEG(String[] command) {
FFmpeg ffmpeg = FFmpeg.getInstance(getBaseContext());
try {
ffmpeg.execute(command, new ExecuteBinaryResponseHandler() {
@Override
public void onStart() {
super.onStart();
Log.d("[Start]", "start");
}
@Override
public void onProgress(String message) {
Log.d("[Progress]", message);
}
@Override
public void onFailure(String message) {
Log.d("[fail]", message);
}
@Override
public void onSuccess(String message) {
Log.d("[Success]", message);
}
@Override
public void onFinish() {
super.onFinish();
Log.d("[Finish]", "file output done");
}
});
} catch (FFmpegCommandAlreadyRunningException e) {
// Handle if FFmpeg is already running
Log.d("[FFMPEG Exception]-", e.toString());
}
}The above works perfectly as I was hoping. Now I want to set the start and end of the video (depending on the position the user selected). I get the start and end of the video back as a string, like this :
String valueRight = formatter.format(getValueRight);
String valueLeft = formatter.format(getValueLeft);
//this strings will return 00:00:00.000 DEPENDING on the position from the user
//just like when you would normally call -ss 00:00:50.849 -to 00:02:05.100As I mentioned above that I know it should be set as -ss and -to but I am looking for a wat to format my string to enter -ss and -to with a string, somthing like this :
-ss valueLeft -to valueRight
-
java.io.IOException : Error running exec() Working Directory : null Environment : null FFmpeg Android merging mp3 and mp4
23 avril 2017, par 1234567java.io.IOException : Error running exec() Working Directory : null Environment : null FFmpeg Android merging mp3 and mp4
I am trying following code
public class Minact1 extends Activity{
String videoFilePath,audioFilePath,outputFilePath;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.mainact);
videoFilePath = Environment.getExternalStorageDirectory()
.getAbsolutePath() + "/sample2.mp4";
audioFilePath = Environment.getExternalStorageDirectory()
.getAbsolutePath() + "/abc.mp3";
outputFilePath = Environment.getExternalStorageDirectory()
.getAbsolutePath() + "/output.mp4";
try {
FFmpeg ffmpeg = FFmpeg.getInstance(this);
String[] cmd =
{"-i " + videoFilePath + " -i " + audioFilePath +
" -shortest -threads 0 -preset ultrafast -strict -2 " + outputFilePath};
ffmpeg.execute(cmd, mergeListener);
} catch (FFmpegCommandAlreadyRunningException e) {
e.printStackTrace();
Toast.makeText(Minact1.this, "" + e, Toast.LENGTH_SHORT).show();
}
}
ExecuteBinaryResponseHandler mergeListener = new ExecuteBinaryResponseHandler() {
@Override
public void onStart() {
//started
Toast.makeText(Minact1.this, "started", Toast.LENGTH_SHORT).show();
}
@Override
public void onFailure(String message) {
//failed
Toast.makeText(Minact1.this, "failed", Toast.LENGTH_SHORT).show();
}
@Override
public void onFinish() {
File output = new File(outputFilePath);
//Do whatever with your muxed file
Toast.makeText(Minact1.this, "onFinish", Toast.LENGTH_SHORT).show();
}
};
}I have used following library for FFmpeg
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.1.1'
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
compile 'com.android.support:design:23.1.1'
compile 'com.writingminds:FFmpegAndroid:0.3.2'
compile 'org.florescu.android.rangeseekbar:rangeseekbar-library:0.3.0'
compile 'com.android.support:cardview-v7:23.1.1'
compile 'commons-io:commons-io:2.5'
}and added following permission in manifest
the files are present at the path used , but
output.mp4
is not createdthe log says
04-23 10:43:39.278 27191-27216/com.ffmpegtryer E/FFmpeg: Exception while trying to run: [Ljava.lang.String;@3fe418b2
04-23 10:43:39.278 27191-27216/com.ffmpegtryer E/FFmpeg: java.io.IOException: Error running exec(). Command: [/data/data/com.ffmpegtryer/files/ffmpeg, -i /storage/sdcard0/sample2.mp4 -i /storage/sdcard0/abc.mp3 -shortest -threads 0 -preset ultrafast -strict -2 /storage/sdcard0/output.mp4] Working Directory: null Environment: null
04-23 10:43:39.278 27191-27216/com.ffmpegtryer E/FFmpeg: at java.lang.ProcessManager.exec(ProcessManager.java:211)
04-23 10:43:39.278 27191-27216/com.ffmpegtryer E/FFmpeg: at java.lang.Runtime.exec(Runtime.java:173)
04-23 10:43:39.278 27191-27216/com.ffmpegtryer E/FFmpeg: at java.lang.Runtime.exec(Runtime.java:128)
04-23 10:43:39.278 27191-27216/com.ffmpegtryer E/FFmpeg: at com.github.hiteshsondhi88.libffmpeg.ShellCommand.run(ShellCommand.java:10)
04-23 10:43:39.278 27191-27216/com.ffmpegtryer E/FFmpeg: at com.github.hiteshsondhi88.libffmpeg.FFmpegExecuteAsyncTask.doInBackground(FFmpegExecuteAsyncTask.java:38)
04-23 10:43:39.278 27191-27216/com.ffmpegtryer E/FFmpeg: at com.github.hiteshsondhi88.libffmpeg.FFmpegExecuteAsyncTask.doInBackground(FFmpegExecuteAsyncTask.java:10)
04-23 10:43:39.278 27191-27216/com.ffmpegtryer E/FFmpeg: at android.os.AsyncTask$2.call(AsyncTask.java:288)
04-23 10:43:39.278 27191-27216/com.ffmpegtryer E/FFmpeg: at java.util.concurrent.FutureTask.run(FutureTask.java:237)
04-23 10:43:39.278 27191-27216/com.ffmpegtryer E/FFmpeg: at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231)
04-23 10:43:39.278 27191-27216/com.ffmpegtryer E/FFmpeg: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
04-23 10:43:39.278 27191-27216/com.ffmpegtryer E/FFmpeg: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
04-23 10:43:39.278 27191-27216/com.ffmpegtryer E/FFmpeg: at java.lang.Thread.run(Thread.java:818)
04-23 10:43:39.278 27191-27216/com.ffmpegtryer E/FFmpeg: Caused by: java.io.IOException: No such file or directory
04-23 10:43:39.278 27191-27216/com.ffmpegtryer E/FFmpeg: at java.lang.ProcessManager.exec(Native Method)
04-23 10:43:39.278 27191-27216/com.ffmpegtryer E/FFmpeg: at java.lang.ProcessManager.exec(ProcessManager.java:209)any help would be useful
-
FFmpeg Video Streaming on android app
18 avril 2017, par Johnny RogerI’m trying to do a streaming of my laptop webcam to my android smartphone.
So I set an ffserver in this wayHTTPPort 1234
RTSPPort 1235
<feed>
File /tmp/feed2.ffm
FileMaxSize 2M
ACL allow 127.0.0.1
</feed>
<stream>
Feed feed2.ffm
Format rtp
Noaudio
VideoCodec libx264
AVOptionVideo flags +global_header
AVOptionVideo me_range 16
AVOptionVideo qdiff 4
AVOptionVideo qmin 10
AVOptionVideo qmax 51
ACL allow 192.168.0.0 192.168.255.255
</stream>and I used the following ffmpeg instruction
ffmpeg -i /dev/video0 -vcodec libx264 -tune zerolatency -crf 18 http://localhost:1234/feed2.ffm
in my android studio project i set in the manifest file
That is my MainActivity.java
package com.example.johnny.ffmpeg;
import android.app.ProgressDialog;
import android.content.Context;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.app.Activity;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;
import android.view.SurfaceView;
import android.view.View;
import android.net.Uri;
import android.widget.Button;
import android.widget.ImageButton;
import android.widget.ImageView;
import android.widget.MediaController;
import android.widget.Toast;
import android.widget.VideoView;
public class MainActivity extends AppCompatActivity implements VideoView.OnClickListener
{
ProgressDialog mDialog;
VideoView videoView;
ImageView btnPlayPause;
MediaController mediaController;
String videoURL ="rtsp://192.168.1.100:1235/test1.sdp";
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
videoView =(VideoView)findViewById(R.id.videoView);
mediaController= new MediaController(this);
mediaController.setAnchorView(videoView);
btnPlayPause = (ImageButton)findViewById(R.id.btn_play_pause);
btnPlayPause.setOnClickListener(this);
}
@Override
public void onClick(View v) {
mDialog = new ProgressDialog(MainActivity.this);
mDialog.setMessage("Please wait...");
mDialog.setCanceledOnTouchOutside(false);
mDialog.show();
Uri uri = Uri.parse(videoURL);
videoView.setVideoURI(uri);
try{
if(!videoView.isPlaying()) {
videoView.setMediaController(mediaController);
videoView.requestFocus();
videoView.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp) {
btnPlayPause.setImageResource(R.drawable.ic_aplay);
}
});
}
else
{
videoView.pause();
btnPlayPause.setImageResource(R.drawable.ic_pause);
}
}
catch(Exception ex)
{
Context context = getApplicationContext();
String text = ex.toString();
int duration = Toast.LENGTH_SHORT;
Toast toast = Toast.makeText(context, text, duration);
toast.show();
}
videoView.requestFocus();
videoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener(){
@Override
public void onPrepared(MediaPlayer mp){
mDialog.dismiss();
mp.setLooping(true);
videoView.start();
btnPlayPause.setImageResource(R.drawable.ic_pause);
}
});
videoView.setOnErrorListener(new MediaPlayer.OnErrorListener() {
@Override
public boolean onError(MediaPlayer mp, int what, int extra) {
Log.d("video", "setOnErrorListener ");
return true;
}
});
}
}and that is the relative activity_main.xml file :
<relativelayout>
<videoview></videoview>
<textview></textview>
<textview></textview>
</relativelayout>I tested the streaming on vlc and it work well (even if with dealy, it’s not in real time).
The app instead give me the message "can’t play this video" and the following error :V/MediaPlayer: message received msg=100, ext1=1, ext2=-38
E/MediaPlayer: Error (1,-38)
D/VideoView: Error: 1,-38
D/video: setOnErrorListener
E/MediaPlayer: error (1, -38)
V/MediaPlayer: callback application
V/MediaPlayer: back from callback
E/MediaPlayer: Error (1,-38)
D/VideoView: Error: 1,-38
D/video: setOnErrorListener
E/ViewRootImpl: sendUserActionEvent() mView == nullI saw that the problem could be the format of the video, but i tried also with an mp4 file
ffmpeg -i test.mp4 -vcodec libx264 -tune zerolatency -crf 18 http://localhost:1234/feed2.ffm
and the result was the same. How Can I fix it and let my app work well ?