
Recherche avancée
Autres articles (5)
-
Keeping control of your media in your hands
13 avril 2011, parThe vocabulary used on this site and around MediaSPIP in general, aims to avoid reference to Web 2.0 and the companies that profit from media-sharing.
While using MediaSPIP, you are invited to avoid using words like "Brand", "Cloud" and "Market".
MediaSPIP is designed to facilitate the sharing of creative media online, while allowing authors to retain complete control of their work.
MediaSPIP aims to be accessible to as many people as possible and development is based on expanding the (...) -
Other interesting software
13 avril 2011, parWe don’t claim to be the only ones doing what we do ... and especially not to assert claims to be the best either ... What we do, we just try to do it well and getting better ...
The following list represents softwares that tend to be more or less as MediaSPIP or that MediaSPIP tries more or less to do the same, whatever ...
We don’t know them, we didn’t try them, but you can take a peek.
Videopress
Website : http://videopress.com/
License : GNU/GPL v2
Source code : (...) -
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 : (...)
Sur d’autres sites (2791)
-
What is the most efficient way to broadcast a live stream ? [closed]
3 août 2020, par HarshI want to build a live streaming system for a classroom. The amount on information on this subject is so confusing. These are the features/requirements that I want to have in my app :


- 

- Room type system.
- One teacher - N students (N<200).
- Broadcast video/audio. This needs to be only 1 way. (1T ---> 200S)
- Audio chat should be possible if a teacher allows a student to speak.
- Need not to record the session, though it would be a great feature to have.












Now, from my research I have established there are many ways to go about it. The best one to me seems using WebRTC. In that case I do not have to worry about the platform that much.
WebRTC needs a STUN/TURN server, that can be easily set-up using the coturn project.
I'll also need a SFU which forwards my stream to the client, like Janus or Mediasoup.
But that's where I'm getting confused.


Can I not directly use a live stream, send it to the server, transcode it in real time using ffmpeg to HLS/DASH and publish it to a S3 bucket from where the users can access it. Wouldn't that be more efficient and able to handle much more students easily.


For the audio part I could just use the p2p functionality of webrtc in the browser itself, so no need to route that through the server.


That is how far I've come to understand the system. I still don't completely understand how SFU works and I'm confused about how many live streams can one server handle (say a 4C/8GB). Or if using ffmpeg on VPS is a bad thing and I should use the AWS services instead ?


Can someone please help me understand this ?


Thanks !


-
FFMPEG and HTTPS
14 juin 2012, par Joelffmpeg lists http as a protocol when I ask : ffmpeg -protocols
Does this also mean support for a https url ? Do I need to encode this url somehow for the command line. I get "No such file or directory", but with http urls (at least some) it does work.
A url (created for a Amazon S3 bucket) similar to this one does not seem to work :
https://mycompany-video-test.s3.amazonaws.com/client/btr/video/xyz0011-x403-snap-n-go-ex/1/video/baby-laugh-ripping-paper.mp4?AWSAccessKeyId=AVIAZL9J6SIRPAA&Expires=1323709667&Signature=pTvS9F2do2t8%3DI suspect the format of the url is problematic, I've also tried enclosing in quotes... Yes, this URL does not currently work as it has expired, but even while its valid, its a problem.
In short :
1) Should https work ?
2) Do I need to format the url somehow ? -
FFmpeg Process Priority at screenrecording
24 avril 2021, par AndrewI made formula for screenrecording via FFmpeg, and it works with Counter-Strike and Dota 2.
But it doesn't work with World of Tanks. So I faced with troubles. World of Tanks crashs after few minutes. And speed of recording is less then 1x (about 0.87x and it become slower and slower). So I think that I need to raise up the priority process of FFmpeg.
Look for test of it on my Youtube Channel : my test of ffmpeg screen recording


So I would like to set 'High' or 'Realtime' priority for this process automatically !


But right now I can do it via 2 ways :


- 

- via Task Manager ;
- via second PowerShell Window and second "copy-paste".






But both methods require a time (5-20 seconds). It is no good.
I cannot to set
Start-Process ffmpeg -NoNewWindow -Wait -ArgumentList
for setting PriorityClass as here stackoverflow because my ArgumentList of FFmpeg is too huge.
And I cannotstart-process pwsh -ArgumentList
for new powershell window for setting PriorityClass. It write me about an error.
My tested formula for Youtube :

ffmpeg -hide_banner -loglevel +repeat+level+info `
-f dshow -thread_queue_size 8192 -audio_buffer_size 100 -rtbufsize 2147M `
-i 'audio=@device_sw_{33D9A762-90C8-11D0-BD43-00A0C911CE86}\{8E146464-DB61-4309-AFA1-3578E927E935}' `
-f dshow -thread_queue_size 8192 -audio_buffer_size 100 -rtbufsize 2147M `
-i 'audio=@device_cm_{33D9A762-90C8-11D0-BD43-00A0C911CE86}\wave_{472DBE92-04B3-48AB-A937-ED4CD6A85625}' `
-f gdigrab -hwaccel_device cuda -hwaccel cuda -hwaccel_output_format cuda -video_size 1920:1080 -thread_queue_size 8192 -draw_mouse 1 -show_region 0 -offset_x 0 -offset_y 0 -rtbufsize 2147M -probesize 500M -analyzeduration 500M -framerate 60 -i desktop `
-noautoscale -shortest `
-map '0:a:0' -c:a copy -f wav "FFmpeg_Screen_Recording_$(get-date -f yyyy-MM-dd_HH-mm-ss).wav" `
-map '1:a:0' -c:a copy -f wav "FFmpeg_WebCAM_Recording_$(get-date -f yyyy-MM-dd_HH-mm-ss).wav" `
-map '2:v:0' -c:v h264_nvenc -gpu 0 -vsync 1 -r 60 -video_size 1920x1080 -video_track_timescale 60 -copytb 0 -delay 0 -rc constqp -qp 0 -rc-lookahead 0 -zerolatency 1 -maxrate:v 512M -bufsize:v 512M -pix_fmt yuv444p -profile:v high444p -preset p1 -tune ull -level 6.2 -coder vlc -weighted_pred 0 `
-f mov "FFmpeg_Screen_Recording_$(get-date -f yyyy-MM-dd_HH-mm-ss).mov"



My current formula for High priority - first tab :


start-process pwsh -ArgumentList '-noexit' 
Get-Process -name 'pwsh' | foreach { $_.PriorityClass = "High" }
$startExe = ffmpeg -hide_banner -loglevel +repeat+level+info `
-f dshow -thread_queue_size 8192 -audio_buffer_size 100 -rtbufsize 2147M `
-i 'audio=@device_sw_{33D9A762-90C8-11D0-BD43-00A0C911CE86}\{8E146464-DB61-4309-AFA1-3578E927E935}' `
-f dshow -thread_queue_size 8192 -audio_buffer_size 100 -rtbufsize 2147M `
-i 'audio=@device_cm_{33D9A762-90C8-11D0-BD43-00A0C911CE86}\wave_{472DBE92-04B3-48AB-A937-ED4CD6A85625}' `
-f gdigrab -hwaccel_device cuda -hwaccel cuda -hwaccel_output_format cuda -video_size 1920:1080 -thread_queue_size 8192 -draw_mouse 1 -show_region 0 -offset_x 0 -offset_y 0 -rtbufsize 2147M -probesize 500M -analyzeduration 500M -framerate 60 -i desktop `
-noautoscale -shortest `
-map '0:a:0' -c:a copy -f wav "FFmpeg_Screen_Recording_$(get-date -f yyyy-MM-dd_HH-mm-ss).wav" `
-map '1:a:0' -c:a copy -f wav "FFmpeg_WebCAM_Recording_$(get-date -f yyyy-MM-dd_HH-mm-ss).wav" `
-map '2:v:0' -c:v h264_nvenc -gpu 0 -vsync 1 -r 60 -video_size 1920x1080 -video_track_timescale 60 -copytb 0 -delay 0 -rc constqp -qp 0 -rc-lookahead 0 -zerolatency 1 -maxrate:v 512M -bufsize:v 512M -pix_fmt yuv444p -profile:v high444p -preset p1 -tune ull -level 6.2 -coder vlc -weighted_pred 0 `
-f mov "FFmpeg_Screen_Recording_$(get-date -f yyyy-MM-dd_HH-mm-ss).mov"



Second tab (second copy-paste action) :


Get-Process -name 'ffmpeg' | foreach { $_.PriorityClass = "High" }



How can I do it in the only one action ?