
Recherche avancée
Autres articles (25)
-
La file d’attente de SPIPmotion
28 novembre 2010, parUne file d’attente stockée dans la base de donnée
Lors de son installation, SPIPmotion crée une nouvelle table dans la base de donnée intitulée spip_spipmotion_attentes.
Cette nouvelle table est constituée des champs suivants : id_spipmotion_attente, l’identifiant numérique unique de la tâche à traiter ; id_document, l’identifiant numérique du document original à encoder ; id_objet l’identifiant unique de l’objet auquel le document encodé devra être attaché automatiquement ; objet, le type d’objet auquel (...) -
Multilang : améliorer l’interface pour les blocs multilingues
18 février 2011, parMultilang est un plugin supplémentaire qui n’est pas activé par défaut lors de l’initialisation de MediaSPIP.
Après son activation, une préconfiguration est mise en place automatiquement par MediaSPIP init permettant à la nouvelle fonctionnalité d’être automatiquement opérationnelle. Il n’est donc pas obligatoire de passer par une étape de configuration pour cela. -
Contribute to documentation
13 avril 2011Documentation is vital to the development of improved technical capabilities.
MediaSPIP welcomes documentation by users as well as developers - including : critique of existing features and functions articles contributed by developers, administrators, content producers and editors screenshots to illustrate the above translations of existing documentation into other languages
To contribute, register to the project users’ mailing (...)
Sur d’autres sites (4322)
-
Concat video/audio files downloaded from mpd dash manifest
15 mai 2022, par Bloworlf MathurinI have this manifest I fetched from an url :


<?xml version="1.0"?>
<mpd type="dynamic" xmlns="urn:mpeg:dash:schema:mpd:2011" profiles="urn:mpeg:dash:profile:isoff-live:2011" availabilitystarttime="2022-05-14T21:18:50-07:00" availabilityendtime="2022-05-14T22:35:36-07:00" timeshiftbufferdepth="PT20S" suggestedpresentationdelay="PT2S" minbuffertime="PT1S" publishtime="2022-05-14T21:18:50-07:00" minimumupdateperiod="PT1S" validationerrors="" currentservertimems="0" firstavtimems="1652588331877" lastvideoframets="0" loapstreamid="17944405669984029" publishframetime="939">
 <period start="PT0S">
 <adaptationset segmentalignment="true" maxwidth="432" maxheight="766" maxframerate="30">
 <representation mimetype="video/mp4" codecs="avc1.4d401e" width="432" height="766" framerate="30" startwithsap="1" bandwidth="38894" maxbandwidth="46772" playbackresolutionmos="432:82.84,720:65.43,216:70.39" qualityclass="sd" qualitylabel="432p">
 <segmenttemplate presentationtimeoffset="0" timescale="1000" initialization="some/url/some_id-init.m4v?ms=m_C&amp;ccb=2-4" media="some/url/some_id-$Time$.m4v?ms=m_C&amp;ccb=2-4">
 <segmenttimeline>
 <s t="4092613" d="2000"></s>
 <s t="4094613" d="2000"></s>
 <s t="4096613" d="2000"></s>
 <s t="4098613" d="2000"></s>
 <s t="4100613" d="2000"></s>
 <s t="4102613" d="2000"></s>
 <s t="4104613" d="2000"></s>
 <s t="4106613" d="2000"></s>
 <s t="4108613" d="2000"></s>
 <s t="4110613" d="2000"></s>
 </segmenttimeline>
 </segmenttemplate>
 </representation>
 </adaptationset>
 <adaptationset segmentalignment="true">
 <representation mimetype="audio/mp4" codecs="mp4a.40.2" audiosamplingrate="44100" startwithsap="1" bandwidth="48979" maxbandwidth="57732">
 <segmenttemplate presentationtimeoffset="0" timescale="1000" initialization="some/url/some_id-init.m4a?ms=m_C&amp;ccb=2-4" media="some/url/some_id-$Time$.m4a?ms=m_C&amp;ccb=2-4">
 <segmenttimeline>
 <s t="4092613" d="2000"></s>
 <s t="4094613" d="2000"></s>
 <s t="4096613" d="2000"></s>
 <s t="4098613" d="2000"></s>
 <s t="4100613" d="2000"></s>
 <s t="4102613" d="2000"></s>
 <s t="4104613" d="2000"></s>
 <s t="4106613" d="2000"></s>
 <s t="4108613" d="2000"></s>
 <s t="4110613" d="2000"></s>
 </segmenttimeline>
 </segmenttemplate>
 </representation>
 </adaptationset>
 </period>
</mpd>



I manage to download all the files (init file + 10 segment files) and put them in an array


File[] files = downloadSegments();


So I have :
[0] -> file-0.m4v (which is the init file)
[1] -> file-1.m4v (1st segment)
... and so on.


My question is how can I concat/append all these files into another file (final_segment.m4v) ?


I looked around a lot and am now using 'com.arthenica:ffmpeg-kit-video:4.5.1-1'
I've last tried :


FFmpegSession session = FFmpegKit.execute("-i file-0.m4v -i file-1.m4v ... -c copy final_segment.m4v");



Is there something I'm missing ?


Also I assume that I'll have to do the same for the audio segments. So I will have 2 files (final_segment.m4v and final_segment.m4a) that I will have to merge/mix together.


If you could help me with some piece of code, that would be great.


-
Web Analytics : The Quick Start Guide
25 janvier 2024, par Erin -
Top Conversion Metrics to Track in 2024
22 janvier 2024, par Erin