Recherche avancée
Médias (91)
-
Valkaama DVD Cover Outside
4 octobre 2011, par
Mis à jour : Octobre 2011
Langue : English
Type : Image
-
Valkaama DVD Label
4 octobre 2011, par
Mis à jour : Février 2013
Langue : English
Type : Image
-
Valkaama DVD Cover Inside
4 octobre 2011, par
Mis à jour : Octobre 2011
Langue : English
Type : Image
-
1,000,000
27 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
Demon Seed
26 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
The Four of Us are Dying
26 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
Autres articles (112)
-
Websites made with MediaSPIP
2 mai 2011, parThis page lists some websites based on MediaSPIP.
-
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. -
Creating farms of unique websites
13 avril 2011, parMediaSPIP platforms can be installed as a farm, with a single "core" hosted on a dedicated server and used by multiple websites.
This allows (among other things) : implementation costs to be shared between several different projects / individuals rapid deployment of multiple unique sites creation of groups of like-minded sites, making it possible to browse media in a more controlled and selective environment than the major "open" (...)
Sur d’autres sites (7939)
-
FFMPEG save last 10 sec before a movement and next 30secs
2 novembre 2020, par Set1ishI have a surveillance camera that process frame by frame live video. In case of movement, I want to save a video containing the last 10 seconds before the movement and next 30 seconds after the movement.
I beleve (may be I'm wrong), that last 10 second + next 30seconds task, should be obtained without decoding-rencoding process.


I try to use python with fmmpeg pipes, creating a reader and a writer, but the reader seams too slow for the stream and I loose some packets (= loose on video quality for saved file).


Here my code


import ffmpeg
import numpy as np

width = 1280
height = 720


process1 = (
 ffmpeg
 .input('rtsp://.....',rtsp_transport='udp', r='10', t="00:00:30")
 .output('pipe:', format='rawvideo', pix_fmt='yuv420p')
 .run_async(pipe_stdout=True)
)

process2 = (
 ffmpeg
 .input('pipe:', format='rawvideo', pix_fmt='yuv420p', s='{}x{}'.format(width, height))
 .output("prova-02-11-2020.avi", pix_fmt='yuv420p',r='10')
 .overwrite_output()
 .run_async(pipe_stdin=True)
)
while True:
 in_bytes = process1.stdout.read(width * height * 3)
 if not in_bytes:
 break
 in_frame = (
 np
 .frombuffer(in_bytes, np.uint8)
 )

 #In future I will save in_frame in a queue
 out_frame = in_frame
 
 process2.stdin.write(
 out_frame
 .astype(np.uint8)
 .tobytes()
 )

process2.stdin.close()
process1.wait()
process2.wait()


If I run


ffmpeg -i rtsp://... -acodec copy -vcodec copy -t "00:00:30" out.avi


It look that decode-rencode process is done in quick/smart way without loosing any packet.
My dream is to make the same on python for the surveillance camera but intergrating with code that analyse the stream.


I would like that the flow for creating the file, does not requires decoding + enconding. The last 10secs frames are in a queue and, at specific event, the contenet of queue plus next 30secs frames are saved into a avi file


I have the constraints to have realtime motion detection on live streaming


Did you have any comments or suggestion ?


-
x264 Downsides of a high CRF (22) intermediary codec between conversions instead of lossless
18 décembre 2019, par bobtheencoderI have a huge collection of video files that are in the range of CRF 16-20 taking up TB’s of space. The only need I have for these originals is that I have to encode them from time to time but the CRF of these final encodes is very low (CRF 26-28).
I understand that a lossy to lossy converstion ALWAYS results in some quality loss but my question is what if the intermediate file is almost visually lossless compared to the final output.
So to sum up, what quality difference should I expect from the following routes ?
CRF 18 (original) -----> CRF 28 (final)
CRF 18 (original) -----> CRF 22 (long-term storage) -----> Lossy CRF 28 (final) -
Issue in FFmpegAndroid library when i compress video it convert video time into 1 or 2 second
25 mai 2017, par Fateh Singh SainiUsed this dependencies :
compile ’com.writingminds:FFmpegAndroid:0.3.2’I used blow code for video compress
public static final String VIDEOCODEC = "-vcodec" ;
public static final String AUDIOCODEC = "-acodec" ;public static final String VIDEOBITSTREAMFILTER = "-vbsf";
public static final String AUDIOBITSTREAMFILTER = "-absf";
public static final String VERBOSITY = "-v";
public static final String FILE_INPUT = "-i";
public static final String SIZE = "-s";
public static final String FRAMERATE = "-r";
public static final String FORMAT = "-f";
public static final String BITRATE_VIDEO = "-b:v";
public static final String BITRATE_AUDIO = "-b:a";
public static final String CHANNELS_AUDIO = "-ac";
public static final String FREQ_AUDIO = "-ar";String[] complexCommand = "-y", FILE_INPUT, yourRealPath, SIZE, "480x360", FRAMERATE, "25", VIDEOCODEC, "mpeg4", BITRATE_VIDEO, "150k", BITRATE_AUDIO, "48000", CHANNELS_AUDIO, "2", FREQ_AUDIO, "22050", filePath ;
/**
* Executing ffmpeg binary
*/
private static String execFFmpegBinary(final String[] command) {
try {
ffmpeg.execute(command, new ExecuteBinaryResponseHandler() {
@Override
public void onFailure(String s) {
Log.d(TAG, "FAILED with output : " + s);
}
@Override
public void onSuccess(String s) {
Log.d(TAG, "SUCCESS with output : " + s);
}
@Override
public void onProgress(String s) {
Log.d(TAG, "Started command : ffmpeg " + command);
Log.d(TAG, "progress : " + s);
}
@Override
public void onStart() {
Log.d(TAG, "Started command : ffmpeg " + command);
}
@Override
public void onFinish() {
Log.d(TAG, "Finished command : ffmpeg " + command);
}
});
} catch (FFmpegCommandAlreadyRunningException e) {
// do nothing for now
}
return filePath;
}