
Recherche avancée
Médias (1)
-
1 000 000 (wav version)
26 septembre 2011, par
Mis à jour : Avril 2013
Langue : English
Type : Audio
Autres articles (70)
-
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 (9029)
-
Overlaying a large image onto a small video like snapchat
22 mai 2019, par Tabassum LatifI want to add full screen overlay image on different size of video,
I used ffmpeg it work fine if overlay and video has same scale ratio (same width and height).
Overlay image squeezed if video height and width size is smaller than overlay image but i want to apply like snap chat video they add black view on top and bottomFfmpeg command is
String[]{"-y", "-i", filePath, "-i",
overlayPath,
"-preset", "ultrafast",
"-filter_complex",
"[1][0]scale2ref[i][m];[m][i]overlay[v]", "-map",
"[v]", "-map", "0:a?", "-ac", "2", output};I want following output link is mention below.
-
error after upgrading to ffmpeg n4.3.1 version
19 avril 2021, par al pacinoI upgraded to ffmpeg n4.3.1 version using tar file. and then used
./configure
and then usedmake
andsudo install make
to install files.

but after the installation, I am getting the following error -


ffmpeg -i 'https://player.vimeo.com/external/202414841.sd.mp4?s=4f9ef25c7c52a64a5788afb5181a51d0f31f2f43&profile_id=164' -vf scale=480:360 -c:v libvpx-vp9 -crf 30 -b:v 0 -b:a 128k -c:a libopus sample_created_video.webm
 ffmpeg version 8b3f71b4 Copyright (c) 2000-2020 the FFmpeg developers
 built with gcc 9 (Ubuntu 9.3.0-17ubuntu1~20.04)
 configuration: 
 libavutil 56. 51.100 / 56. 51.100
 libavcodec 58. 91.100 / 58. 91.100
 libavformat 58. 45.100 / 58. 45.100
 libavdevice 58. 10.100 / 58. 10.100
 libavfilter 7. 85.100 / 7. 85.100
 libswscale 5. 7.100 / 5. 7.100
 libswresample 3. 7.100 / 3. 7.100
 Unrecognized option 'crf'.
 Error splitting the argument list: Option not found



I also tried to use
sudo snap install fmmpeg
but I was getting error-

[Errno 2] No such file or directory: 
 and also permission denied for sample_created_video.webm



I don't know what is causing the problem. Is there any way to fix this issue or to upgrade to 4.3.1 using a different method ?


-
How to retrieve, process and display frames from a capture device with minimal latency
14 mars 2024, par valleI'm currently working on a project where I need to retrieve frames from a capture device, process them, and display them with minimal latency and compression. Initially, my goal is to maintain the video stream as close to the source signal as possible, ensuring no noticeable compression or latency. However, as the project progresses, I also want to adjust framerate and apply image compression.


I have experimented using FFmpeg, since that was the first thing that came to my mind when thinking about capturing video(frames) and processing them.


However I am not satisfied yet, since I am experiencing delay in the stream. (No huge delay but definately noticable)
The command that worked best so far for me :


ffmpeg -rtbufsize 512M -f dshow -i video="Blackmagic WDM Capture (4)" -vf format=yuv420p -c:v libx264 -preset ultrafast -qp 0 -an -tune zerolatency -f h264 - | ffplay -fflags nobuffer -flags low_delay -probesize 32 -sync ext -


I also used OBS to capture the video stream from the capture device and when looking into the preview there was no noticable delay. I then tried to simulate the exact same settings using ffmpeg :


ffmpeg -rtbufsize 512M -f dshow -i video="Blackmagic WDM Capture (4)" -vf format=yuv420p -r 60 -c:v libx264 -preset veryfast -b:v 2500K -an -tune zerolatency -f h264 - | ffplay -fflags nobuffer -flags low_delay -probesize 32 -sync ext -


But the delay was kind of similar to the one of the command above.
I know that OBS probably has a lot complexer stuff going on (Hardware optimization etc.) but atleast I know this way that it´s somehow possible to display the stream from the capture device without any noticable latency (On my setup).


The approach that so far worked best for me (In terms of delay) was to use Python and OpenCV to read frames of the capture device and display them. I also implemented my own framerate (Not perfect I know) but when it comes to compression I am rather limited compared to FFmpeg and the frame processing is also too slow when reaching framerates about 20 fps and more.


import cv2
import time

# Set desired parameters
FRAME_RATE = 15 # Framerate in frames per second
COMPRESSION_QUALITY = 25 # Compression quality for JPEG format (0-100)
COMPRESSION_FLAG = True # Enable / Disable compression

# Set capture device index (replace 0 with the index of your capture card)
cap = cv2.VideoCapture(4, cv2.CAP_DSHOW)

# Check if the capture device is opened successfully
if not cap.isOpened():
 print("Error: Could not open capture device")
 exit()

# Create an OpenCV window
# TODO: The window is scaled to fullscreen here (The source video is 1920x1080, the display is 1920x1200)
# I don´t know the scaling algorithm behind this, but it seems to be a simple stretch / nearest neighbor
cv2.namedWindow('Frame', cv2.WINDOW_NORMAL)
cv2.setWindowProperty('Frame', cv2.WND_PROP_FULLSCREEN, cv2.WINDOW_FULLSCREEN)

# Loop to capture and display frames
while True:
 # Start timer for each frame processing cycle
 start_time = time.time()

 # Capture frame-by-frame
 ret, frame = cap.read()

 # If frame is read correctly, proceed
 if ret:
 if COMPRESSION_FLAG:
 # Perform compression
 _, compressed_frame = cv2.imencode('.jpg', frame, [int(cv2.IMWRITE_JPEG_QUALITY), COMPRESSION_QUALITY])
 # Decode the compressed frame
 frame = cv2.imdecode(compressed_frame, cv2.IMREAD_COLOR)

 # Display the frame
 cv2.imshow('Frame', frame)

 # Calculate elapsed time since the start of this frame processing cycle
 elapsed_time = time.time() - start_time

 # Calculate available time for next frame
 available_time = 1.0 / FRAME_RATE

 # Check if processing time exceeds available time
 if elapsed_time > available_time:
 print("Warning: Frame processing time exceeds available time.")

 # Calculate time to sleep to achieve desired frame rate -> maintain a consistent frame rate
 sleep_time = 1.0 / FRAME_RATE - elapsed_time

 # If sleep time is positive, sleep to control frame rate
 if sleep_time > 0:
 time.sleep(sleep_time)

 # Break the loop if 'q' is pressed
 if cv2.waitKey(1) & 0xFF == ord('q'):
 break

# Release the capture object and close the display window
cap.release()
cv2.destroyAllWindows()



I also thought about getting the SDK of the capture device in order to upgrade the my performance.
But Since I am not used to low level programming but rather to scripting languages, I thought I would reach out to the StackOverflow community at first, and see if anybody has some hints to better approaches or any tips how I could increase my performance.


Any Help is appreciated !