
Recherche avancée
Médias (1)
-
Publier une image simplement
13 avril 2011, par ,
Mis à jour : Février 2012
Langue : français
Type : Video
Autres articles (105)
-
Gestion des droits de création et d’édition des objets
8 février 2011, parPar défaut, beaucoup de fonctionnalités sont limitées aux administrateurs mais restent configurables indépendamment pour modifier leur statut minimal d’utilisation notamment : la rédaction de contenus sur le site modifiables dans la gestion des templates de formulaires ; l’ajout de notes aux articles ; l’ajout de légendes et d’annotations sur les images ;
-
Dépôt de média et thèmes par FTP
31 mai 2013, parL’outil MédiaSPIP traite aussi les média transférés par la voie FTP. Si vous préférez déposer par cette voie, récupérez les identifiants d’accès vers votre site MédiaSPIP et utilisez votre client FTP favori.
Vous trouverez dès le départ les dossiers suivants dans votre espace FTP : config/ : dossier de configuration du site IMG/ : dossier des média déjà traités et en ligne sur le site local/ : répertoire cache du site web themes/ : les thèmes ou les feuilles de style personnalisées tmp/ : dossier de travail (...) -
Qualité du média après traitement
21 juin 2013, parLe bon réglage du logiciel qui traite les média est important pour un équilibre entre les partis ( bande passante de l’hébergeur, qualité du média pour le rédacteur et le visiteur, accessibilité pour le visiteur ). Comment régler la qualité de son média ?
Plus la qualité du média est importante, plus la bande passante sera utilisée. Le visiteur avec une connexion internet à petit débit devra attendre plus longtemps. Inversement plus, la qualité du média est pauvre et donc le média devient dégradé voire (...)
Sur d’autres sites (11746)
-
Configure error for ffmpeg 6.1 when executing in bash 5.0.17
1er mars 2024, par user2715311I am trying to install ffmpeg 6.1 (https://ffmpeg.org/releases/ffmpeg-6.1.1.tar.xz), but when executing the configure script my bash version 5.0.17 removes the double quotes from the parameters containing the condition to select the version of the libraries being searched for to pass this parameter to pkg-config.


For example, when processing code


check_pkg_config libopenjpeg "libopenjp2 >= 2.1.0" openjpeg.h opj_version



, the pkg-config call will look something like


pkg-config --exists libopenjp2 >= 2.1.0



As a result, configure execution stops with the following error.


ERROR: libopenjp2 >= 2.1.0 not found using pkg-config



As a hint, you may be prompted to set the path to the 2.1.0.pc file in PKG_CONFIG_PATH.


It is interesting that this is the case in other versions of bash, for example, this problem is not observed in version 5.1.16.


Does this mean that bash version 5.0.17 will actually not be able to work with configure to build most code sources, because such version selection conditions are used quite often when searching for the right libraries ?


Or perhaps I can influence this bash behaviour in some way ? Or, alternatively, have I misinterpreted the problem at all and the solution is in a completely different area ?


The problem was identified in the Linux Mint 20.1 distribution.


$ lsb_release -a
No LSB modules are available.
Distributor ID: Linuxmint
Description: Linux Mint 20.1
Release: 20.1
Codename: ulyssa



First of all, I checked that if I call pkg-config correctly, it can find the right library on my system.


$ pkg-config --exists "libopenjp2 >= 2.1.0"
$ echo $?
0



or


$ pkg-config --cflags --libs "libopenjp2 >= 2.1.0"
-I/usr/include/openjpeg-2.3 -lopenjp2



Next, I examined the configure code associated with this problem and came to the conclusion I outlined above.


-
addEventListener with encrypted video-js is not working
26 février 2024, par vinodI have a video uploading project in laravel. Everything is good. I have encrypted videos using "FFMPEG" packge and wanted to play on video-js player. Also wanted to show google-adsense there.


The error is giving to me :


IDEOJS : ERROR : videojs-contrib-ads has not seen a loadstart event 5 seconds after being initialized, but a source is present. This indicates that videojs-contrib-ads was initialized too late. It must be initialized immediately after video.js in the same tick. As a result, some ads will not play and some media events will be incorrect. For more information, see http://videojs.github.io/videojs-contrib-ads/integrator/getting-started.html


and "addEventListener" is also not working except "document.addEventListener('DOMContentLoaded', function() ".


I think problem is due to data-setup='{}' add into video tag. because previously, I was playing the video without encryption like the original video with full path and there was not added the data-setup='{}'. Everything was working. But after playing the encrypted video. I got the errors.


Thank in advance !


my view is :


<video class="img-fluid myVideo video-js vjs-default-skin" preload="none" controls="controls" data-video-id="{{ Crypt::encrypt($video_list->id) }}" data-setup="'{}'">
 @if (Auth::check())
 <source src="{{ route('video.player.show', ['filename' => $video_list->unique_number.'.m3u8','type' => 'full','video_id' => $video_list->unique_number]) }}" type="application/x-mpegURL" class="full-video">
 
 @endif
</source></video>



js is :


<code class="echappe-js"><script>&#xA; document.addEventListener(&#x27;DOMContentLoaded&#x27;, function() {&#xA; console.log(&#x27;afterload&#x27;);&#xA; const videos = document.querySelectorAll(&#x27;.myVideo&#x27;);&#xA; let playing = [];&#xA;&#xA; videos.forEach((video, index) => {&#xA; console.log(&#x27;video&#x27;);&#xA; console.log(video.id);&#xA; const overlay = document.querySelectorAll(&#x27;.overlay&#x27;)[index];&#xA; const paymentoverlay = document.querySelectorAll(&#x27;.paymentoverlay&#x27;)[index];&#xA;&#xA; // Create a single player instance for each video&#xA; const player = videojs(video.id);&#xA;&#xA; var options = {&#xA; id: &#x27;content_video&#x27;, // Use the correct ID for each video element&#xA; adTagUrl: &#x27;http://pubads.g.doubleclick.net/gampad/ads?sz=640x480&amp;iu=/124319096/external/ad_rule_samples&amp;ciu_szs=300x250&amp;ad_rule=1&amp;impl=s&amp;gdfp_req=1&amp;env=vp&amp;output=xml_vmap1&amp;unviewed_position_start=1&amp;cust_params=sample_ar%3Dpremidpostpod%26deployment%3Dgmf-js&amp;cmsid=496&amp;vid=short_onecue&amp;correlator=&#x27;&#xA; };&#xA;&#xA; player.ima(options);&#xA;&#xA; video.addEventListener(&#x27;ended&#x27;, function() {&#xA; console.log(&#x27;111&#x27;);&#xA; // Handle video conditions after it finishes&#xA; handleVideoConditions(video, overlay, paymentoverlay);&#xA; });&#xA;&#xA; video.onplay = function() {&#xA; playing.push(video);&#xA; if (!video.paused) {&#xA; video.controls = true;&#xA; // Trigger an AJAX request to register the view&#xA; registerView(video);&#xA; }&#xA; };&#xA; });&#xA;&#xA; function handleVideoConditions(video, overlay, paymentoverlay) {&#xA; console.log(&#x27;222&#x27;);&#xA; const isShortVideo = video.querySelector(&#x27;.short-video&#x27;);&#xA; const isFullVideo = video.querySelector(&#x27;.full-video&#x27;);&#xA; if (!isUserLoggedIn &amp;&amp; isShortVideo) {&#xA; overlay.style.display = &#x27;block&#x27;;&#xA; } else if (isUserLoggedIn &amp;&amp; isShortVideo) {&#xA; paymentoverlay.style.display = &#x27;block&#x27;;&#xA; }&#xA; }&#xA;&#xA; async function registerView(video) {&#xA; const videoId = video.getAttribute(&#x27;data-video-id&#x27;);&#xA; const response = await fetch(`{{ route(&#x27;video.registerView&#x27;, [&#x27;videoId&#x27; => &#x27;:videoId&#x27;]) }}`&#xA; .replace(&#x27;:videoId&#x27;, videoId));&#xA; const data = await response.json();&#xA; $(&#x27;#videoview&#x27; &#x2B; data.id).html(data.view_count);&#xA; }&#xA;&#xA; });&#xA; </script>



-
How to convert MPEG2-TTS to MPEG2-TS format to playback using ffplay
29 février 2024, par AsustorI know some OSS such as ffmpeg or gstreamer don't support to play-back MPEG2-TTS stream.
Then, I tried to convert 192 bytes TTS packet to 188 bytes TS packet by deleting first 4 bytes like :


def conv_tts2ts(rtp_payload):

 payload_len = len(rtp_payload)
 if payload_len % 192 != 0:
 raise

 pkt_num = int(payload_len / 192)
 ts_data = bytearray()
 for i in range(pkt_num):
 spos = 192 * i
 epos = spos + 192
 tmp = rtp_payload[spos:epos]
 ts_data.extend(tmp[4:])

 return ts_data

# after this, send ts_data with RTP header received from MPEG2-TTS streamer via UDP/IP.




However, ffplay and ffprobe don't reaction.


I expect to be able to play-back using ffplay as MPEG2-TS format.
Please tell me how to convert TTS to TS in order to deocde by ffmpeg ?