
Recherche avancée
Autres articles (65)
-
Les notifications de la ferme
1er décembre 2010, parAfin d’assurer une gestion correcte de la ferme, il est nécessaire de notifier plusieurs choses lors d’actions spécifiques à la fois à l’utilisateur mais également à l’ensemble des administrateurs de la ferme.
Les notifications de changement de statut
Lors d’un changement de statut d’une instance, l’ensemble des administrateurs de la ferme doivent être notifiés de cette modification ainsi que l’utilisateur administrateur de l’instance.
À la demande d’un canal
Passage au statut "publie"
Passage au (...) -
Emballe médias : à quoi cela sert ?
4 février 2011, parCe plugin vise à gérer des sites de mise en ligne de documents de tous types.
Il crée des "médias", à savoir : un "média" est un article au sens SPIP créé automatiquement lors du téléversement d’un document qu’il soit audio, vidéo, image ou textuel ; un seul document ne peut être lié à un article dit "média" ; -
Submit bugs and patches
13 avril 2011Unfortunately a software is never perfect.
If you think you have found a bug, report it using our ticket system. Please to help us to fix it by providing the following information : the browser you are using, including the exact version as precise an explanation as possible of the problem if possible, the steps taken resulting in the problem a link to the site / page in question
If you think you have solved the bug, fill in a ticket and attach to it a corrective patch.
You may also (...)
Sur d’autres sites (5526)
-
Enable Quality Selector Control in Angular Using Video.js
3 février, par Abhay SinghI am using Video.js in an Angular 19.1.3 application, with version 8.21.0 of Video.js. I have successfully set up an HLS stream using a master index.m3u8 file, and the player automatically switches to lower quality segments when the network is slow, and to higher quality when the network is good. This part works as expected.


However, I would like to add a manual quality selection option to allow users to choose the video quality themselves. Despite trying several plugins (such as videojs-hls-quality-selector and videojs-contrib-quality-levels), I haven't been able to get it working.


Can anyone guide me on how to implement this feature in Video.js, ensuring that the quality selector is available for manual selection ?


Below is my Components code -


import {AfterViewInit, Component} from '@angular/core';
import videojs from 'video.js';
import '@videojs/http-streaming';
import 'video.js/dist/video-js.css';

@Component({
 selector: 'app-home',
 imports: [],
 templateUrl: './home.component.html',
 styleUrl: './home.component.css'
})
export class HomeComponent implements AfterViewInit {
 
 ngAfterViewInit(): void {
 const player = videojs('my-video', {
 autoplay: false,
 controls: true,
 preload: 'auto',
 fluid: true,
 aspectRatio: '16:9',
 })
 
 }
}



Below is my HTML code -


<video class="video-js vjs-default-skin" controls="controls">
 <source src="https://localhost:7063/videos/no1lvswh.zdw.mkv/index.m3u8" type="application/x-mpegURL">
 </source></video> 



-
Framerate live streaming webm with dash and ffmpeg
14 mai 2016, par JonesI am streaming a live video with ffmpeg and dash.js using
these instructions. It works well except that the video is playing at a too high framerate. No framerate is specified in the manifest.
Creating the Chunks :SET VP9_LIVE_PARAMS=-speed 6 -threads 8 -static-thresh 0 -max-intra-rate 300 -deadline realtime -lag-in-frames 0 -error-resilient 1
ffmpeg -re -r 25 -i tcp://localhost:8891 ^
-map 0:0 ^
-pix_fmt yuv420p ^
-c:v libvpx-vp9 ^
-s 800x600 -keyint_min 25 -g 25 %VP9_LIVE_PARAMS% ^
-f webm_chunk ^
-header "webm_live/glass_360.hdr" ^
-chunk_start_index 1 ^
webm_live\glass_360_%%d.chk ^Creating the Manifest :
ffmpeg ^
-f webm_dash_manifest -live 1 ^
-r 25 ^
-i webm_live/glass_360.hdr ^
-c copy ^
-map 0 ^
-r 25 ^
-framerate 25 ^
-f webm_dash_manifest -live 1 ^
-adaptation_sets "id=0,streams=0" ^
-chunk_start_index 1 ^
-chunk_duration_ms 1000 ^
-time_shift_buffer_depth 7200 ^
-minimum_update_period 7200 ^
webm_live/glass_live_manifest.mpdManifest :
<?xml version="1.0" encoding="UTF-8"?>
<mpd xmlns="urn:mpeg:DASH:schema:MPD:2011" type="dynamic" minbuffertime="PT1S" profiles="urn:mpeg:dash:profile:isoff-live:2011" availabilitystarttime="2016-03-30T13:02:53Z" timeshiftbufferdepth="PT7200S" minimumupdateperiod="PT7200S">
<period start="PT0S">
<adaptationset mimetype="video/webm" codecs="vp9" bitstreamswitching="true" subsegmentalignment="true" subsegmentstartswithsap="1">
<contentcomponent type="video"></contentcomponent>
<segmenttemplate timescale="1000" duration="1000" media="glass_$RepresentationID$_$Number$.chk" startnumber="1" initialization="glass_$RepresentationID$.hdr"></segmenttemplate>
<representation bandwidth="1000000" width="800" height="600" codecs="vp9" mimetype="video/webm" startswithsap="1"></representation>
</adaptationset>
</period>
</mpd>Any Ideas how to fix this ?
-
avcodec/proresenc : fix alpha plane encoding bitstream
26 décembre 2023, par Clément Bœschavcodec/proresenc : fix alpha plane encoding bitstream
These functions encode a slice of alpha (1 to 8 macroblocks) which are
expected to be encoded as a repeated sequence of "[diff][run-1]", where
diff is the running difference of the alpha value and run is how many
times that value is expected to be duplicated (within the limit of a
grand total of 2048 unpacked samples, corresponding to a slice of 8 MB).Even when run==0 (the run variable semantic is actually "run minus 1"),
there is always a diff previously encoded that needs a counter of at
least 1. This means we need to call put_alpha_run() unconditionally at
the end of the bitstream to account for the last running diff.This commit fixes glitchy playbacks on QuickTime with M2 and M3 hardware
(but not M1 for some mysterious reason) with files generated with
commands such as :ffmpeg -f lavfi -i testsrc2=d=5:s=912x320,chromakey -c:v prores_aw -profile:v 4 -y aw.mov
ffmpeg -f lavfi -i testsrc2=d=5:s=912x320,chromakey -c:v prores_ks -profile:v 4444 -y ks.movThe glitch expresses itself deterministically as blinking black
rectangles on random frames (for example on frame 21, 54, 71, 79, ...).Even with the proresdec from FFmpeg, overreads actually happens while
reading the run-minus-1 value (around val = get_bits(gb, 4) in
unpack_alpha()). This doesn't seem to cause any particular issue because
it simply overreads into the next slice, and because the decoder is
resilient, but it's still a problem.The investigation leading to this fix was made possible because of paid
work for Jitter (https://jitter.video).Fixes ticket #10255.