
Recherche avancée
Autres articles (106)
-
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 (...) -
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 (12385)
-
how to scale video using ffmpeg with -filter_complex
7 juillet 2020, par JuraganFilmim trying to encode my video with watermark and subtitles , i and i have this codes that work for watermark and subtitles


ffmpeg -hide_banner -i $video -i $TITLE.ass -loop 1 -i $WATERMARK -loop 1 -i $LOGO -filter_complex "[${videomap}]drawtext=text='${TEXT}':fontfile=/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf:y=h-line_h-100:x=w-(t-${MARQUE})*w/15:y='10':enable='lt(mod(t\,1000)\,100)':fontcolor=orange:fontsize=${FONT}:shadowx=${SHADOWX}:shadowy=${SHADOWY},ass=$TITLE.ass[FID1];[FID1][2:v]overlay=10:${WATERMARKPOSITION}:repeatlast=0:enable='between(t,300,600)'[FID3];[3:v]fade=in:st=1200:d=1.6:alpha=1,fade=out:st=107998:d=1.6:alpha=1[FID6];[FID3][FID6]overlay=10:5:repeatlast=0:enable='between(t,1200,187922)'" -c:v libx264 -x264-params "no-deblock=0:ref=2:weightp=2:chroma_qp_offset=0:keyint=50:keyint_min=5:bframes=3:b_pyramid=1:b-adapt=2:subme=7:b_bias=0:direct=1:weightb=1:open_gop=0:scenecut=40::threads=7:lookahead_threads=1" -b:v 500k -minrate 500k -maxrate 600k -bufsize 1200k -pix_fmt yuv420p -preset ultrafast -profile:v baseline -level:v 3.0 -c:a copy -vf "scale=trunc(oh*a/2)*2:480:flags=bicubic" -use_editlist 0 -movflags faststart -metadata title="${INFOVID} - Visit us @ ${WEBSITE}" -strict -2 -f mp4 -y "${output}/$TITLE-480p.mp4"



and now im trying to scale the video to 480p quality , i've tried using


-vf "scale=trunc(oh*a/2)*2:480"



and also add :flags=bicubic but still i got error .


how to scale video with -filter_complex from those code above ?


thank you before !


-
Enable cache on ffmpeg to record streaming
13 mars 2020, par jamesnow I’m using steamlink and ffmpeg to record streams and save them to a file, many times the video file saved have so much lag. I found this link https://www.reddit.com/r/Twitch/comments/62601b/laggy_stream_on_streamlinklivestreamer_but_not_on/
where they claim that the lag problem occurs from the fact of not having the cache enabled on the player.
I tried putting options-hls_allow_cache allowcache -segment_list_flags cache
with the result that the ffmpeg process starts for 8seconds more or less, after which it ends and starts again immediately afterwards without returning a video file,if I don’t put those two options the video is recorded correctly but most of the time with some lag.Obviously if I visit streaming from the browser I have no lag problem
this is the code
from streamlink import Streamlink, NoPluginError, PluginError
streamlink = Streamlink()
#this code is just a snippet, it is inside a while loop to restart the process
try:
streams = streamlink.streams(m3u8_url)
stream_url = streams['best'].url
#note hls options not seem to work
ffmpeg_process = Popen(
["ffmpeg", "-hide_banner", "-loglevel", "panic", "-y","-hls_allow_cache", "allowcache", "-segment_list_flags", "cache","-i", stream_url, "-fs", "10M", "-c", "copy",
"-bsf:a", "aac_adtstoasc", fileName])
ffmpeg_process.wait()
except NoPluginError:
print("noplugin")
except PluginError:
print("plugin")
except Exception as e:
print(e)what are the best options to enable the cache and limit the lag as much as possible ?
-
What are my FFMPEG command wrong parameters that causes ugly quality on streaming ?
6 juillet 2022, par Lucas FAUREGood day, I'm scaling videos with FFMPEG, and when the scaled file comes out, quality is pretty good (enough good for me).


My problem is that I'm as well streaming the file while it's scaling, but it comes in an ugly quality. And I guess it's because of missing or not needed parameters.


Here is my command that starts scaling the file and send it via RTMP for streaming :


"ffmpeg -i " + file + " -vf scale=-2:" + resolution + " -preset slow -crf 18 -movflags +frag_keyframe+separate_moof+omit_tfhd_offset+empty_moov " + output + " -listen 1 -f flv rtmp://127.0.0.1:10000/" + stream + ""



This is called in Python, where file is the source file, resolution the new height, output the file to be saved, and stream a streaming key.


Once the scaling has started, I provide to the user a streaming link with the new resolution :


'ffmpeg -v verbose -i rtmp://127.0.0.1:10000/'.$stream.' -c:v libx264 -c:a aac -ac 1 -strict -2 -crf 18 -profile:v baseline -maxrate 400k -bufsize 1835k -pix_fmt yuv420p -flags -global_header -hls_time 10 -hls_list_size 6 -start_number 1 '.$streamURL.$stream;



Here, it's called with PHP, and there are as well variables : stream the streaming key to retreive the right content, and streamURL the domain to visit.


It actually works but the difference of quality between what is scaling and what is streaming is huge, and I think so that, in the command that creates the streaming link, there is parameters that cause this. (Because I took it from a live example and I didn't want to make an error by removing parameters I don't know well)


Do you have any idea about where it can be coming from ?


Thank you in advance for your help and time.