
Recherche avancée
Médias (1)
-
SWFUpload Process
6 septembre 2011, par
Mis à jour : Septembre 2011
Langue : français
Type : Texte
Autres articles (27)
-
Publier sur MédiaSpip
13 juin 2013Puis-je poster des contenus à partir d’une tablette Ipad ?
Oui, si votre Médiaspip installé est à la version 0.2 ou supérieure. Contacter au besoin l’administrateur de votre MédiaSpip pour le savoir -
D’autres logiciels intéressants
12 avril 2011, parOn ne revendique pas d’être les seuls à faire ce que l’on fait ... et on ne revendique surtout pas d’être les meilleurs non plus ... Ce que l’on fait, on essaie juste de le faire bien, et de mieux en mieux...
La liste suivante correspond à des logiciels qui tendent peu ou prou à faire comme MediaSPIP ou que MediaSPIP tente peu ou prou à faire pareil, peu importe ...
On ne les connais pas, on ne les a pas essayé, mais vous pouvez peut être y jeter un coup d’oeil.
Videopress
Site Internet : (...) -
Contribute to translation
13 avril 2011You can help us to improve the language used in the software interface to make MediaSPIP more accessible and user-friendly. You can also translate the interface into any language that allows it to spread to new linguistic communities.
To do this, we use the translation interface of SPIP where the all the language modules of MediaSPIP are available. Just subscribe to the mailing list and request further informantion on translation.
MediaSPIP is currently available in French and English (...)
Sur d’autres sites (9117)
-
Place two videos side by side using ffmpeg ?and download it as one file
5 août 2019, par marceloo1223I have two video files, which I want to play side by side and download them later. I used FFMPEG to merge them as one :
protected void combinetwovideo()
{
string strParam;
string Path_FFMPEG = Path.Combine(HttpContext.Current.Server.MapPath(ConfigurationManager.AppSettings["FFMpegPath"]));
string apppath=HttpRuntime.AppDomainAppPath;
//Merging two videos
String video1=apppath+"\\recordings\\client2019-08-03 02_23_59";
String video2 =apppath+"\\userrecord\\User2019-08-03 02_24_00";
String strResult =apppath+"\\RESULT\\";
strParam = string.Format("-i ('" + video1 + "') -i ('" + video2 + "') -filter_complex \'[0:v]pad=iw*2:ih[int];[int][1:v]overlay=W/2:0[vid]' /-map [vid] -c:v libx264 -crf 23 -preset veryfast output.mp4");
process(Path_FFMPEG, strParam);
}public void process(string Path_FFMPEG, string strParam)
{
try
{
Process ffmpeg = new Process();
ProcessStartInfo ffmpeg_StartInfo = new ProcessStartInfo(Path_FFMPEG, strParam);
ffmpeg_StartInfo.UseShellExecute = false;
ffmpeg_StartInfo.RedirectStandardError = true;
ffmpeg_StartInfo.RedirectStandardOutput = true;
ffmpeg.StartInfo = ffmpeg_StartInfo;
ffmpeg_StartInfo.CreateNoWindow = true;
ffmpeg.EnableRaisingEvents = true;
ffmpeg.Start();
ffmpeg.WaitForExit();
ffmpeg.Close();
ffmpeg.Dispose();
ffmpeg = null;
}
catch (Exception ex)
{
}
}But this method outputs nothing and does not throw any errors. I’m confused about the
strParam
query. Did I write it wrong or am I missing something. Any help would be apreciated. -
FFMPEG M3U8 Download Is Shortened When Processed
19 décembre 2022, par Devin DixonI am downloading an m3u8 stream with FFMPEG as such :


timeout 60m ffmpeg -i [feed_url] -movflags isml+frag_keyframe+faststart -bsf:a aac_adtstoasc -vcodec copy -c copy [save_file].mp4



- 

- The timeout will automatically end the stream after 60. minutes
- The
-movflags isml+frag_keyframe+faststart
makes sure the moov atom is present for partial downloads and if the stream is cut off.






This works fine when I play it in Quicktime or Safari.The stream is then uploaded to another server and it gets processed with this ffmpeg command :


ffmpeg -i [input_file] -y -f mp4 -pix_fmt yuv420p -c:v libx264 -c:a aac -filter_complex "scale='if(gt(iw,1920),1920,-1)':'if(gt(ih,1080),1080,-1)':force_original_aspect_ratio=decrease" -crf 20 -movflags faststart -max_muxing_queue_size 9999 -attempt_recovery 1 -max_recovery_attempts 3 -f mp4 [output_file]



When the above command is run, sometimes this error occurs :


[mov,mp4,m4a,3gp,3g2,mj2 @ 0xaaaafcd63b70] Packet corrupt (stream = 0, dts = 53801910).= 64x 
[NULL @ 0xaaaafcd649b0] Invalid NAL unit size (1186 > 532).
[NULL @ 0xaaaafcd649b0] missing picture in access unit with size 542
/code/partners/tmp/video_634d29a2e1f6e.mp4: corrupt input packet in stream 0
[h264 @ 0xaaaafd1211f0] Invalid NAL unit size (1186 > 532).
[h264 @ 0xaaaafd1211f0] Error splitting the input into NAL units.
[mov,mp4,m4a,3gp,3g2,mj2 @ 0xaaaafcd63b70] stream 0, offset 0x3802b2: partial file
[mov,mp4,m4a,3gp,3g2,mj2 @ 0xaaaafcd63b70] stream 0, offset 0x380791: partial file
[mov,mp4,m4a,3gp,3g2,mj2 @ 0xaaaafcd63b70] stream 0, offset 0x380c38: partial file
[mov,mp4,m4a,3gp,3g2,mj2 @ 0xaaaafcd63b70] stream 0, offset 0x380f8d: partial file
[mov,mp4,m4a,3gp,3g2,mj2 @ 0xaaaafcd63b70] stream 0, offset 0x38137a: partial file
Error while decoding stream #0:0: Invalid data found when processing input
[mov,mp4,m4a,3gp,3g2,mj2 @ 0xaaaafcd63b70] stream 0, offset 0x381750: partial file
[mp4 @ 0xaaaafcd743d0] Starting second pass: moving the moov atom to the beginning of the file
frame= 8967 fps=923 q=-1.0 Lsize= 5683kB time=00:09:57.60 bitrate= 77.9kbits/s speed=61.5x 
video:5580kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 1.843884%



When this error occurs, the video is cut short. If the full video is 60 minutes that error occurs at the 10 minute mark, the converted video will only be 10 minutes. What is that error and how can I get ffmpeg to stop cutting the output video short ?


-
FFMPEG unable to stream videos frame by frame to RTMP Youtube Live stream using Python
1er octobre 2024, par YadneshDI need to open a locally stored video, process it frame by frame and send it to YouTube live RTMP stream. I am able to do it using FFMPEG in command line terminal but unable to do it using Python. In Python on console, it shows stream is properly sent but on YouTube Live control room it shows no data. I tried all other tools like Vidgear, Gstreamer etc. But most of them use FFMPEG backend and it does not work.


Here is my command to directly send video from .mp4 source file that works properly on terminal and video is streamed on YouTube Live control room -


ffmpeg -re -i "video.mp4" -c:v libx264 -preset veryfast -maxrate 3000k -bufsize 6000k -pix_fmt yuv420p -c:a aac -b:a 128k -f flv rtmp://a.rtmp.youtube.com/live2/youtube-key


My Python program which reads and send video frame by frame shows everything is fine on console but YouTube shows No Data -


import cv2
import subprocess

# Path to your video file
video_path = "video.mp4"

# FFmpeg command to stream to YouTube
rtmp_url = "rtmp://a.rtmp.youtube.com/live2/youtube-key"
ffmpeg_command = [
 'ffmpeg',
 '-y', # Overwrite output files without asking
 '-f', 'rawvideo',
 '-pixel_format', 'bgr24',
 '-video_size', '1280x720', # Change according to your video resolution
 '-framerate', '30', # Frame rate
 '-i', '-', # Input from stdin
 '-c:v', 'libx264',
 '-preset', 'veryfast',
 '-maxrate', '3000k',
 '-bufsize', '6000k',
 '-pix_fmt', 'yuv420p',
 '-f', 'flv',
 rtmp_url
]

# Start FFmpeg process
ffmpeg_process = subprocess.Popen(ffmpeg_command, stdin=subprocess.PIPE)

# Open video with OpenCV
cap = cv2.VideoCapture(video_path)

if not cap.isOpened():
 print("Error: Could not open video.")
 exit()

while True:
 ret, frame = cap.read()
 if not ret:
 break # End of video

 # Write the frame to FFmpeg's stdin
 ffmpeg_process.stdin.write(frame.tobytes())

# Cleanup
cap.release()
ffmpeg_process.stdin.close()
ffmpeg_process.wait()



Console output -




FFMPEG Build info -




I tried in Linux and Windows both and got same results. In the python program, I am not processing frames now but in future I will do it. I just want to stream video frame by frame as of now so that I can do the processing in future. Please help !!!