
Recherche avancée
Médias (91)
-
GetID3 - Boutons supplémentaires
9 avril 2013, par
Mis à jour : Avril 2013
Langue : français
Type : Image
-
Core Media Video
4 avril 2013, par
Mis à jour : Juin 2013
Langue : français
Type : Video
-
The pirate bay depuis la Belgique
1er avril 2013, par
Mis à jour : Avril 2013
Langue : français
Type : Image
-
Bug de détection d’ogg
22 mars 2013, par
Mis à jour : Avril 2013
Langue : français
Type : Video
-
Exemple de boutons d’action pour une collection collaborative
27 février 2013, par
Mis à jour : Mars 2013
Langue : français
Type : Image
-
Exemple de boutons d’action pour une collection personnelle
27 février 2013, par
Mis à jour : Février 2013
Langue : English
Type : Image
Autres articles (31)
-
Librairies et binaires spécifiques au traitement vidéo et sonore
31 janvier 2010, parLes logiciels et librairies suivantes sont utilisées par SPIPmotion d’une manière ou d’une autre.
Binaires obligatoires FFMpeg : encodeur principal, permet de transcoder presque tous les types de fichiers vidéo et sonores dans les formats lisibles sur Internet. CF ce tutoriel pour son installation ; Oggz-tools : outils d’inspection de fichiers ogg ; Mediainfo : récupération d’informations depuis la plupart des formats vidéos et sonores ;
Binaires complémentaires et facultatifs flvtool2 : (...) -
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 (...) -
De l’upload à la vidéo finale [version standalone]
31 janvier 2010, parLe chemin d’un document audio ou vidéo dans SPIPMotion est divisé en trois étapes distinctes.
Upload et récupération d’informations de la vidéo source
Dans un premier temps, il est nécessaire de créer un article SPIP et de lui joindre le document vidéo "source".
Au moment où ce document est joint à l’article, deux actions supplémentaires au comportement normal sont exécutées : La récupération des informations techniques des flux audio et video du fichier ; La génération d’une vignette : extraction d’une (...)
Sur d’autres sites (4664)
-
Grabbing a single image from a MS VS .NET 6.0 C# WPF process always returns the same image
12 mai 2023, par Wolfgang KurzI am trying to develop a MS VS .NET 6.0 C# WPF application to digitize my Super 8 cine films. To grab the frames of the film I want to use FFMPEG because Accord.NET6.0 DirectShow does not work under MS VS 2022 .
I use
FFmpeg 64-bit static Windows build from www.gyan.dev
Version : 2022-09-29-git-8089fe072e-full_build-www.gyan.dev


FFMPEG is invoked from a Process in ma application whicch sets the process FFMPEG start parameters. The webcam parameter is "USB Webcam" ( digital Celestron handheld microscope connected via USB - is DirectShow compatible )
The video resolution parameter "camRes" is "1280x960"


public void UpdateImage(string aString)
 {
 string startPath = "C:" + MainWindow.bSl + "ffmpeg" + MainWindow.bSl + "bin" + MainWindow.bSl + "ffmpeg.exe ";

 MainWindow.aResult = "";
 System.Drawing.Bitmap result;
 ProcessStartInfo psi;
 psi = new ProcessStartInfo();
 psi.FileName = startPath;
 string targPath;
 psi.Arguments = "-f dshow -video_size" + MainWindow.dQuote + webCam + MainWindow.dQuote +
 " -framerate 10 -i video=" + MainWindow.dQuote + camRes + MainWindow.dQuote +
 " -frames:v 1 test%3d.bmp -update 1";
 string errors = "";
 string results = "";
 psi.CreateNoWindow = false;
 psi.RedirectStandardOutput = true;
 psi.RedirectStandardError = true;
 psi.WindowStyle = ProcessWindowStyle.Normal;
 psi.WorkingDirectory = "C:" + MainWindow.bSl + "ffmpeg" + MainWindow.bSl + "bin" + MainWindow.bSl;

 using (Process theProcess = new Process())
 {
 theProcess.StartInfo = psi;
 theProcess.Start();

 theProcess.WaitForExit();
 while (theProcess.HasExited == false)
 {
 Thread.Sleep(50);
 }
 Thread.Sleep(50);

 try
 {
 if (File.Exists(pathCI) == true)
 {
 DefineImage.ffmpegRes = new Bitmap(pathCI);
 MainWindow.actMWInstance.UpdateMessage(DateTime.Now +
 "- Old image disposed, new image grabbed");
 File.Delete(pathCI);
 }
 }
 catch (System.Exception ex)
 {
 MainWindow.actMWInstance.UpdateMessage(DateTime.Now + "Image grabbing failed");
 }
 theProcess.Close();
 theProcess.Dispose();
 }

 if (aString.Length == 0)
 {
 File.Delete(pathCI);
 MainWindow.actMWInstance.DoMove("200", "0", true);
 }
 if (ffmpegRes != null)
 {
 BitmapSource aBMPSrc = BitmapConversion.ToWpfBitmap(ffmpegRes);
 IMGFrame.Source = aBMPSrc;
 }
 Show();
 }



The attached screenshot shows the expected GUI content.
https://www.wkurz.com/wkurz/images/FFMPEGTEST.jpg


My problem now is, when I try to refresh the image in the
DefineDialog
window, I always get the same image although the film has been moved by one frame.

Is the first image cached by FFMPEG and always used again with the provided parameters.


How to force FFMPEG to replace the image with a new one.



-----------------------------------------------------------------------+this is additional information to the question.
I have managed to grab the film frame but still get always the same image during a session :*




It is obvious that the cine film frame has been successfully grabbbed.
The next step should be to work at the image ( correct brightness contrast, gama and colors) and then store the evaluated correction values that have later to be applied to the frames during a batch process, which automatically transports the film, grabs the frames and corrects the colors and then stores the frames as consecutively numbered images which than can be used to generate a video with FFMPEG :


Now the problem I cannot overcome :


In the definition dialog there are 2 buttons ( Refresh and New Image). The intension is to reread / regrab a frame, if the current frame is not optimal to evaluate the correction values.


Whenever I click one of the buttons FFMPEG seems to grab an image, but FFMPEG provides always the same (identcial to the first already available image) to the caller ( a .NET C# Process in my proggram).


The output stream is a single jpg image ( test%04d.jpg ) in a specified target library . Here follows the generated output which seem to be OK according to my knowledge.


I want to ask all interested persons to look over this provided information - may be someone has an idea, what causes the fact, that FFMPEG 6.0 van Neumann always delivers the first image grabbed. in a session.
It seems that there is something cached and reused over and over again.


DefImg 147: UpdateImage started ( Lines starting with DefImg or DefineImage are test output statements provided by the C# program)



DefineImage 155 11.05.2023 17:53:20 C :\ffmpeg\bin\ffmpeg.exe -y -nostdin -f dshow -an -video_size 1280x960 -framerate 10 -i video="USB Microscope" -filter:v "smartblur=luma_radius=0.9:luma_strength=0.7:luma_threshold=0" -frames:v 1 C :\FilmProjList\TEST\TEST%%04d.jpg -update 1
DefineImage 180 ffmpeg version 6.0-full_build-www.gyan.dev Copyright (c) 2000-2023 the FFmpeg developers
built with gcc 12.2.0 (Rev10, Built by MSYS2 project)
configuration : —enable-gpl —enable-version3 —enable-static —disable-w32threads —disable-autodetect —enable-fontconfig —enable-iconv —enable-gnutls —enable-libxml2 —enable-gmp —enable-bzlib —enable-lzma —enable-libsnappy —enable-zlib —enable-librist —enable-libsrt —enable-libssh —enable-libzmq —enable-avisynth —enable-libbluray —enable-libcaca —enable-sdl2 —enable-libaribb24 —enable-libdav1d —enable-libdavs2 —enable-libuavs3d —enable-libzvbi —enable-librav1e —enable-libsvtav1 —enable-libwebp —enable-libx264 —enable-libx265 —enable-libxavs2 —enable-libxvid —enable-libaom —enable-libjxl —enable-libopenjpeg —enable-libvpx —enable-mediafoundation —enable-libass —enable-frei0r —enable-libfreetype —enable-libfribidi —enable-liblensfun —enable-libvidstab —enable-libvmaf —enable-libzimg —enable-amf —enable-cuda-llvm —enable-cuvid —enable-ffnvcodec —enable-nvdec —enable-nvenc —enable-d3d11va —enable-dxva2 —enable-libvpl —enable-libshaderc —enable-vulkan —enable-libplacebo —enable-opencl —enable-libcdio —enable-libgme —enable-libmodplug —enable-libopenmpt —enable-libopencore-amrwb —enable-libmp3lame —enable-libshine —enable-libtheora —enable-libtwolame —enable-libvo-amrwbenc —enable-libilbc —enable-libgsm —enable-libopencore-amrnb —enable-libopus —enable-libspeex —enable-libvorbis —enable-ladspa —enable-libbs2b —enable-libflite —enable-libmysofa —enable-librubberband —enable-libsoxr —enable-chromaprint
libavutil 58. 2.100 / 58. 2.100
libavcodec 60. 3.100 / 60. 3.100
libavformat 60. 3.100 / 60. 3.100
libavdevice 60. 1.100 / 60. 1.100
libavfilter 9. 3.100 / 9. 3.100
libswscale 7. 1.100 / 7. 1.100
libswresample 4. 10.100 / 4. 10.100
libpostproc 57. 1.100 / 57. 1.100
Trailing option(s) found in the command : may be ignored.
Input #0, dshow, from 'video=USB Microscope' :
Duration : N/A, start : 5368.514437, bitrate : N/A
Stream #0:0 : Video : rawvideo (YUY2 / 0x32595559), yuyv422(tv, bt470bg/bt709/unknown), 1280x960, 10 fps, 10 tbr, 10000k tbn
Stream mapping :
Stream #0:0 -> #0:0 (rawvideo (native) -> mjpeg (native))
[swscaler @ 000001442fdcebc0] deprecated pixel format used, make sure you did set range correctly ( that I do not understand )
Last message repeated 3 times
[mjpeg @ 00000144278b0d80] removing common factors from framerate
Output #0, image2, to 'C :\FilmProjList\TEST\TEST%04d.jpg' :
Metadata :
encoder : Lavf60.3.100
Stream #0:0 : Video : mjpeg, yuvj422p(pc, bt470bg/bt709/unknown, progressive), 1280x960, q=2-31, 200 kb/s, 10 fps, 10 tbn
Metadata :
encoder : Lavc60.3.100 mjpeg
Side data :
cpb : bitrate max/min/avg : 0/0/200000 buffer size : 0 vbv_delay : N/A
frame= 0 fps=0.0 q=3.6 size= 0kB time=00:00:00.00 bitrate=N/A speed=N/A

frame= 1 fps=0.0 q=3.6 Lsize=N/A time=00:00:00.00 bitrate=N/A speed= 0x

video:45kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead : unknown

DefineImage 248 11.05.2023 17:53:23 ( test output from, the C# program)
Das Programm "[11724] Cine2Video.exe" wurde mit Code 0 (0x0) beendet.




—


Mit freundlichen Grüßen / Best regards
Ute & Wolfgang Kurz
Domaine : https://uwkurz.de ; Homepage : https://www.uwkurz.de/home
Location : 9° 11' 27,75" East, 48° 43' 32,80" North
E-Mail : wolfgang@uwkurz.de , ute@uwkurz.de
Gesendet über Glasfaser von HOMENET.de




-
Pydub : How to ave audio after convert it to aac ?
4 août 2023, par suvodipMondalI am using django admin form to recieve a audio input, and I am trying to convert it into
aac
format withpydub
.
I have installedffmpeg
in my system and also addedpydub
andffmpeg-python
as dependencies.

Here is the django ModelAdmin :


class AudioAdmin(admin.ModelAdmin):
 fields = ('file', 'bit_rate', 'format')
 list_display = ('id', 'file', 'bit_rate', 'format', 'content_type')

 def save_model(self, request, obj, form, change):
 audio_file = form.cleaned_data['file']
 _, file_extension = os.path.splitext(audio_file.name)
 curr_audio = AudioSegment.from_file(file=audio_file, format=file_extension.replace('.', ''))
 new_audio = curr_audio.export(out_f=audio_file.name, format="aac")
 obj.file = new_audio
 obj.save()




I am still getting this error while converting an mp3 file in
aac
format.

raise CouldntEncodeError(
pydub.exceptions.CouldntEncodeError: Encoding failed. ffmpeg/avlib returned error code: 1
Command:['ffmpeg', '-y', '-f', 'wav', '-i', '/var/folders/8g/230x9vx55p7c0bdwx0cmzx9r0000gq/T/tmpxaetjjk0', '-f', 'aac', '/var/folders/8g/230x9vx55p7c0bdwx0cmzx9r0000gq/T/tmpa3ae8nn1']
Output from ffmpeg/avlib:
ffmpeg version 6.0 Copyright (c) 2000-2023 the FFmpeg developers
 built with Apple clang version 14.0.0 (clang-1400.0.29.202)
 configuration: --prefix=/usr/local/Cellar/ffmpeg/6.0 --enable-shared --enable-pthreads --enable-version3 --cc=clang --host-cflags= --host-ldflags= --enable-ffplay --enable-gnutls --enable-gpl --enable-libaom --enable-libaribb24 --enable-libbluray --enable-libdav1d --enable-libmp3lame --enable-libopus --enable-librav1e --enable-librist --enable-librubberband --enable-libsnappy --enable-libsrt --enable-libsvtav1 --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libxvid --enable-lzma --enable-libfontconfig --enable-libfreetype --enable-frei0r --enable-libass --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libspeex --enable-libsoxr --enable-libzmq --enable-libzimg --disable-libjack --disable-indev=jack --enable-videotoolbox --enable-audiotoolbox
 libavutil 58. 2.100 / 58. 2.100
 libavcodec 60. 3.100 / 60. 3.100
 libavformat 60. 3.100 / 60. 3.100
 libavdevice 60. 1.100 / 60. 1.100
 libavfilter 9. 3.100 / 9. 3.100
 libswscale 7. 1.100 / 7. 1.100
 libswresample 4. 10.100 / 4. 10.100
 libpostproc 57. 1.100 / 57. 1.100
Guessed Channel Layout for Input Stream #0.0 : stereo
Input #0, wav, from '/var/folders/8g/230x9vx55p7c0bdwx0cmzx9r0000gq/T/tmpxaetjjk0':
 Duration: 00:03:14.72, bitrate: 1411 kb/s
 Stream #0:0: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 44100 Hz, 2 channels, s16, 1411 kb/s
[NULL @ 0x7fe40da072c0] Requested output format 'aac' is not a suitable output format
/var/folders/8g/230x9vx55p7c0bdwx0cmzx9r0000gq/T/tmpa3ae8nn1: Invalid argument



-
How can I resolve the FileNotFoundError when attempting to convert an MP3 to WAV using ffmpeg in Python ?
3 juin 2023, par avocado123123I have an MP3 file that I want to convert into a WAV file, but no matter how I try writing the code, it keeps raising FileNotFoundError on the MP3 file and warns me about the installation of FFmpeg.


my code :


from pydub import AudioSegment

# Specify the path to the FFmpeg executable
ffmpeg_path = r"C:\Users\תמרה\AppData\Local\ffmpegio\ffmpeg-downloader\ffmpeg\bin\ffmpeg.exe"
AudioSegment.ffmpeg = ffmpeg_path
AudioSegment.ffprobe = ffmpeg_path

# Load the MP3 file
mp3_file = r"C:\Users\תמרה\Tea Time - Ofshane.mp3"
audio = AudioSegment.from_file(mp3_file, format="mp3")

# Export as WAV
wav_file = r"C:\Users\תמרה\Tea Time - Ofshane.wav"
audio.export(wav_file, format="wav")



when running :


C:\Users\תמרה\PycharmProjects\spotify\venv\Scripts\python.exe "C:\Users\תמרה\PycharmProjects\spotify\file stuff.py" C:\ffmpeg-2023-05-29-git-45fa85a777-full_build\bin\ffmpeg.exe 
C:\Users\תמרה\PycharmProjects\spotify\venv\lib\site-packages\pydub\utils.py:170: RuntimeWarning: Couldn't find ffmpeg or avconv - defaulting to ffmpeg, but may not work
 warn("Couldn't find ffmpeg or avconv - defaulting to ffmpeg, but may not work", RuntimeWarning)
C:\Users\תמרה\PycharmProjects\spotify\venv\lib\site-packages\pydub\utils.py:198: RuntimeWarning: Couldn't find ffprobe or avprobe - defaulting to ffprobe, but may not work
 warn("Couldn't find ffprobe or avprobe - defaulting to ffprobe, but may not work", RuntimeWarning)
Traceback (most recent call last):
 File "C:\Users\תמרה\PycharmProjects\spotify\file stuff.py", line 12, in <module>
 audio = AudioSegment.from_file(mp3_file, format="mp3")
 File "C:\Users\תמרה\PycharmProjects\spotify\venv\lib\site-packages\pydub\audio_segment.py", line 728, in from_file
 info = mediainfo_json(orig_file, read_ahead_limit=read_ahead_limit)
 File "C:\Users\תמרה\PycharmProjects\spotify\venv\lib\site-packages\pydub\utils.py", line 274, in mediainfo_json
 res = Popen(command, stdin=stdin_parameter, stdout=PIPE, stderr=PIPE)
 File "C:\Users\תמרה\AppData\Local\Programs\Python\Python310\lib\subprocess.py", line 971, in __init__
True
 self._execute_child(args, executable, preexec_fn, close_fds,
 File "C:\Users\תמרה\AppData\Local\Programs\Python\Python310\lib\subprocess.py", line 1440, in _execute_child
 hp, ht, pid, tid = _winapi.CreateProcess(executable, args,
FileNotFoundError: [WinError 2] The system cannot find the file specified

Process finished with exit code 1

</module>


What should I do to make this work ?