Recherche avancée

Médias (91)

Autres articles (62)

  • Des sites réalisés avec MediaSPIP

    2 mai 2011, par

    Cette page présente quelques-uns des sites fonctionnant sous MediaSPIP.
    Vous pouvez bien entendu ajouter le votre grâce au formulaire en bas de page.

  • Keeping control of your media in your hands

    13 avril 2011, par

    The 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 (...)

  • Participer à sa traduction

    10 avril 2011

    Vous pouvez nous aider à améliorer les locutions utilisées dans le logiciel ou à traduire celui-ci dans n’importe qu’elle nouvelle langue permettant sa diffusion à de nouvelles communautés linguistiques.
    Pour ce faire, on utilise l’interface de traduction de SPIP où l’ensemble des modules de langue de MediaSPIP sont à disposition. ll vous suffit de vous inscrire sur la liste de discussion des traducteurs pour demander plus d’informations.
    Actuellement MediaSPIP n’est disponible qu’en français et (...)

Sur d’autres sites (10668)

  • Anomalie #4295 (Nouveau) : Bug sur Boucle DATA et fusion sur un #ARRAY

    21 février 2019

    Bonjour,

    J’ai fait une boucle complexe pour lister par année, et mois les articles et les brèves d’un site : https://zone.spip.org/trac/spip-zone/changeset/113991

    Dans mon jeu de test, elle génère ce tableau :

    1. <span class="CodeRay"><span class="predefined">Array</span>
    2. (
    3. [<span class="integer">0</span>] => <span class="predefined">Array</span>
    4. (
    5. [year] => <span class="integer">2016</span>
    6. [month] => <span class="integer">12</span>
    7. [lemois] => décembre
    8. [<span class="predefined">date</span>] => <span class="integer">2016</span>-<span class="integer">12</span>-<span class="integer">18</span> <span class="integer">23</span>:<span class="integer">05</span>:<span class="integer">51</span>
    9. [url] => <span class="constant">Test</span>-modele-exergue.html
    10. [descriptif] =>
    11. [titre] => <span class="constant">Test</span> modèle exergue
    12. [<span class="keyword">class</span>] =>
    13. )
    14. [<span class="integer">1</span>] => <span class="predefined">Array</span>
    15. (
    16. [year] => <span class="integer">2016</span>
    17. [month] => <span class="integer">10</span>
    18. [lemois] => octobre
    19. [<span class="predefined">date</span>] => <span class="integer">2016</span>-<span class="integer">10</span>-<span class="integer">27</span> <span class="integer">11</span>:<span class="integer">33</span>:<span class="integer">00</span>
    20. [url] => <span class="constant">Derniers</span>-articles.html
    21. [descriptif] =>
    22. [titre] => <span class="constant">Derniers</span> articles
    23. [<span class="keyword">class</span>] =>
    24. )
    25. [<span class="integer">2</span>] => <span class="predefined">Array</span>
    26. (
    27. [year] => <span class="integer">2016</span>
    28. [month] => <span class="integer">09</span>
    29. [lemois] => septembre
    30. [<span class="predefined">date</span>] => <span class="integer">2016</span>-<span class="integer">09</span>-<span class="integer">06</span> <span class="integer">20</span>:<span class="integer">20</span>:<span class="integer">42</span>
    31. [url] => <span class="constant">Test</span>-<span class="constant">Form</span>-<span class="constant">IP</span>.html
    32. [descriptif] =>
    33. <span class="constant">Tentez</span> de gagner par tirage au <span class="predefined">sort</span> le remboursement de votre achat [<span class="integer">1</span>]
    34.  
    35. [titre] => <span class="constant">Test</span> <span class="constant">Form</span> <span class="constant">IP</span>
    36. [<span class="keyword">class</span>] =>
    37. )
    38. [<span class="integer">3</span>] => <span class="predefined">Array</span>
    39. (
    40. [year] => <span class="integer">2016</span>
    41. [month] => <span class="integer">07</span>
    42. [lemois] => juillet
    43. [<span class="predefined">date</span>] => <span class="integer">2016</span>-<span class="integer">07</span>-<span class="integer">29</span> <span class="integer">14</span>:<span class="integer">45</span>:<span class="integer">00</span>
    44. [url] => <span class="constant">Article</span>-avec-logo.html
    45. [descriptif] =>
    46. [titre] => <span class="constant">Article</span> avec logo
    47. [<span class="keyword">class</span>] =>
    48. )
    49. [<span class="integer">4</span>] => <span class="predefined">Array</span>
    50. (
    51. [year] => <span class="integer">2016</span>
    52. [month] => <span class="integer">05</span>
    53. [lemois] => mai
    54. [<span class="predefined">date</span>] => <span class="integer">2016</span>-<span class="integer">05</span>-<span class="integer">22</span> <span class="integer">17</span>:<span class="integer">29</span>:<span class="integer">43</span>
    55. [url] => <span class="constant">Long</span>.html
    56. [descriptif] =>
    57. [titre] => <span class="constant">Long</span>
    58. [<span class="keyword">class</span>] =>
    59. )
    60. [<span class="integer">5</span>] => <span class="predefined">Array</span>
    61. (
    62. [year] => <span class="integer">2016</span>
    63. [month] => <span class="integer">05</span>
    64. [lemois] => mai
    65. [<span class="predefined">date</span>] => <span class="integer">2016</span>-<span class="integer">05</span>-<span class="integer">22</span> <span class="integer">17</span>:<span class="integer">03</span>:<span class="integer">50</span>
    66. [url] => <span class="constant">Repetition</span>-avec-debut-dans-le-passe.html
    67. [descriptif] =>
    68. [titre] => <span class="constant">Répétition</span> avec début dans le passé
    69. [<span class="keyword">class</span>] =>
    70. )
    71. [<span class="integer">6</span>] => <span class="predefined">Array</span>
    72. (
    73. [year] => <span class="integer">2016</span>
    74. [month] => <span class="integer">05</span>
    75. [lemois] => mai
    76. [<span class="predefined">date</span>] => <span class="integer">2016</span>-<span class="integer">05</span>-<span class="integer">02</span> <span class="integer">07</span>:<span class="integer">42</span>:<span class="integer">45</span>
    77. [url] => <span class="constant">Test</span>-previsualisation-etendue.html
    78. [descriptif] =>
    79. <span class="constant">Je</span> suis un testeur
    80.  
    81. [titre] => <span class="constant">Test</span> prévisualisation étendue
    82. [<span class="keyword">class</span>] =>
    83. )
    84. [<span class="integer">7</span>] => <span class="predefined">Array</span>
    85. (
    86. [year] => <span class="integer">2016</span>
    87. [month] => <span class="integer">04</span>
    88. [lemois] => avril
    89. [<span class="predefined">date</span>] => <span class="integer">2016</span>-<span class="integer">04</span>-<span class="integer">01</span> <span class="integer">04</span>:<span class="integer">10</span>:<span class="integer">12</span>
    90. [url] => <span class="constant">Test</span>-forme-colorees.html
    91. [descriptif] =>
    92. <span class="constant">Test</span> qui va bien
    93.  
    94. [titre] => <span class="constant">Test</span> forme colorées
    95. [<span class="keyword">class</span>] =>
    96. )
    97. [<span class="integer">8</span>] => <span class="predefined">Array</span>
    98. (
    99. [year] => <span class="integer">2015</span>
    100. [month] => <span class="integer">12</span>
    101. [lemois] => décembre
    102. [<span class="predefined">date</span>] => <span class="integer">2015</span>-<span class="integer">12</span>-<span class="integer">06</span> <span class="integer">15</span>:<span class="integer">00</span>:<span class="integer">00</span>
    103. [url] => <span class="constant">Test</span>-article-sur-embargo.html
    104. [descriptif] =>
    105. [titre] => <span class="constant">Test</span> article sur embargo
    106. [<span class="keyword">class</span>] =>
    107. )
    108. [<span class="integer">9</span>] => <span class="predefined">Array</span>
    109. (
    110. [year] => <span class="integer">2015</span>
    111. [month] => <span class="integer">11</span>
    112. [lemois] => novembre
    113. [<span class="predefined">date</span>] => <span class="integer">2015</span>-<span class="integer">11</span>-<span class="integer">24</span> <span class="integer">09</span>:<span class="integer">48</span>:<span class="integer">01</span>
    114. [url] => <span class="constant">Intentions</span>-de-prieres.html
    115. [descriptif] =>
    116. <span class="constant">Test</span> des <span class="constant">IP</span>
    117.  
    118. [titre] => <span class="constant">Intentions</span> de prières
    119. [<span class="keyword">class</span>] =>
    120. )
    121. [<span class="integer">10</span>] => <span class="predefined">Array</span>
    122. (
    123. [year] => <span class="integer">2015</span>
    124. [month] => <span class="integer">10</span>
    125. [lemois] => octobre
    126. [<span class="predefined">date</span>] => <span class="integer">2015</span>-<span class="integer">10</span>-<span class="integer">26</span> <span class="integer">23</span>:<span class="integer">06</span>:<span class="integer">31</span>
    127. [url] => <span class="constant">Test</span>-<span class="constant">Newsletter</span>.html
    128. [descriptif] =>
    129. <span class="constant">Un</span> autre descriptif
    130.  
    131. [titre] => <span class="constant">Test</span> <span class="constant">Newsletter</span>
    132. [<span class="keyword">class</span>] =>
    133. )
    134. [<span class="integer">11</span>] => <span class="predefined">Array</span>
    135. (
    136. [year] => <span class="integer">2015</span>
    137. [month] => <span class="integer">10</span>
    138. [lemois] => octobre
    139. [<span class="predefined">date</span>] => <span class="integer">2015</span>-<span class="integer">10</span>-<span class="integer">22</span> <span class="integer">11</span>:<span class="integer">33</span>:<span class="integer">03</span>
    140. [url] => <span class="constant">Historique</span>-des-versions-de-<span class="constant">SPIP</span>.html
    141. [descriptif] =>
    142. [titre] => <span class="constant">Historique</span> des versions de <span class="constant">SPIP</span>
    143. [<span class="keyword">class</span>] =>
    144. )
    145. [<span class="integer">12</span>] => <span class="predefined">Array</span>
    146. (
    147. [year] => <span class="integer">2015</span>
    148. [month] => <span class="integer">10</span>
    149. [lemois] => octobre
    150. [<span class="predefined">date</span>] => <span class="integer">2015</span>-<span class="integer">10</span>-<span class="integer">22</span> <span class="integer">11</span>:<span class="integer">33</span>:<span class="integer">03</span>
    151. [url] => <span class="constant">Evenement</span>-exceptionnel.html
    152. [descriptif] =>
    153. [titre] => Événement exceptionnel
    154. [<span class="keyword">class</span>] =>
    155. )
    156. [<span class="integer">13</span>] => <span class="predefined">Array</span>
    157. (
    158. [year] => <span class="integer">2015</span>
    159. [month] => <span class="integer">10</span>
    160. [lemois] => octobre
    161. [<span class="predefined">date</span>] => <span class="integer">2015</span>-<span class="integer">10</span>-<span class="integer">22</span> <span class="integer">11</span>:<span class="integer">33</span>:<span class="integer">03</span>
    162. [url] => <span class="constant">Installation</span>-du-site.html
    163. [descriptif] =>
    164. [titre] => <span class="constant">Installation</span> du site
    165. [<span class="keyword">class</span>] =>
    166. )
    167. [<span class="integer">14</span>] => <span class="predefined">Array</span>
    168. (
    169. [year] => <span class="integer">2015</span>
    170. [month] => <span class="integer">10</span>
    171. [lemois] => octobre
    172. [<span class="predefined">date</span>] => <span class="integer">2015</span>-<span class="integer">10</span>-<span class="integer">22</span> <span class="integer">11</span>:<span class="integer">33</span>:<span class="integer">03</span>
    173. [url] => <span class="constant">Demonstration</span>-<span class="constant">Agenda</span>.html
    174. [descriptif] =>
    175. [titre] => <span class="constant">Démonstration</span> <span class="constant">Agenda</span>
    176. [<span class="keyword">class</span>] =>
    177. )
    178. [<span class="integer">15</span>] => <span class="predefined">Array</span>
    179. (
    180. [year] => <span class="integer">2015</span>
    181. [month] => <span class="integer">10</span>
    182. [lemois] => octobre
    183. [<span class="predefined">date</span>] => <span class="integer">2015</span>-<span class="integer">10</span>-<span class="integer">22</span> <span class="integer">11</span>:<span class="integer">33</span>:<span class="integer">03</span>
    184. [url] => <span class="constant">Titre</span>-de-la-rubrique.html
    185. [descriptif] =>
    186. [titre] => <span class="constant">Titre</span> de la rubrique
    187. [<span class="keyword">class</span>] =>
    188. )
    189. [<span class="integer">16</span>] => <span class="predefined">Array</span>
    190. (
    191. [year] => <span class="integer">2015</span>
    192. [month] => <span class="integer">10</span>
    193. [lemois] => octobre
    194. [<span class="predefined">date</span>] => <span class="integer">2015</span>-<span class="integer">10</span>-<span class="integer">22</span> <span class="integer">11</span>:<span class="integer">33</span>:<span class="integer">03</span>
    195. [url] => <span class="constant">Logo</span>-de-survol.html
    196. [descriptif] =>
    197. [titre] => <span class="constant">Logo</span> de survol
    198. <span class="constant">Nouveauté</span>
    199. [<span class="keyword">class</span>] =>
    200. )
    201. [<span class="integer">17</span>] => <span class="predefined">Array</span>
    202. (
    203. [year] => <span class="integer">2015</span>
    204. [month] => <span class="integer">10</span>
    205. [lemois] => octobre
    206. [<span class="predefined">date</span>] => <span class="integer">2015</span>-<span class="integer">10</span>-<span class="integer">22</span> <span class="integer">11</span>:<span class="integer">33</span>:<span class="integer">02</span>
    207. [url] => <span class="constant">Altera</span>-sententia-est.html
    208. [descriptif] =>
    209. [titre] => <span class="constant">Altera</span> sententia est
    210. [<span class="keyword">class</span>] =>
    211. )
    212. [<span class="integer">18</span>] => <span class="predefined">Array</span>
    213. (
    214. [year] => <span class="integer">2015</span>
    215. [month] => <span class="integer">10</span>
    216. [lemois] => octobre
    217. [<span class="predefined">date</span>] => <span class="integer">2015</span>-<span class="integer">10</span>-<span class="integer">22</span> <span class="integer">11</span>:<span class="integer">33</span>:<span class="integer">02</span>
    218. [url] => <span class="constant">Quis</span>-enim.html
    219. [descriptif] =>
    220. [titre] => <span class="constant">Quis</span> enim
    221. [<span class="keyword">class</span>] =>
    222. )
    223. [<span class="integer">19</span>] => <span class="predefined">Array</span>
    224. (
    225. [year] => <span class="integer">2015</span>
    226. [month] => <span class="integer">10</span>
    227. [lemois] => octobre
    228. [<span class="predefined">date</span>] => <span class="integer">2015</span>-<span class="integer">10</span>-<span class="integer">22</span> <span class="integer">11</span>:<span class="integer">33</span>:<span class="integer">02</span>
    229. [url] => <span class="constant">Oportunum</span>-est.html
    230. [descriptif] =>
    231. [titre] => <span class="constant">Oportunum</span> est
    232. [<span class="keyword">class</span>] =>
    233. )
    234. [<span class="integer">20</span>] => <span class="predefined">Array</span>
    235. (
    236. [year] => <span class="integer">2015</span>
    237. [month] => <span class="integer">10</span>
    238. [lemois] => octobre
    239. [<span class="predefined">date</span>] => <span class="integer">2015</span>-<span class="integer">10</span>-<span class="integer">22</span> <span class="integer">11</span>:<span class="integer">33</span>:<span class="integer">02</span>
    240. [url] => <span class="constant">Rogatus</span>-ad-ultimum.html
    241. [descriptif] =>
    242. [titre] => <span class="constant">Rogatus</span> ad ultimum
    243. [<span class="keyword">class</span>] =>
    244. )
    245. [<span class="integer">21</span>] => <span class="predefined">Array</span>
    246. (
    247. [year] => <span class="integer">2015</span>
    248. [month] => <span class="integer">10</span>
    249. [lemois] => octobre
    250. [<span class="predefined">date</span>] => <span class="integer">2015</span>-<span class="integer">10</span>-<span class="integer">22</span> <span class="integer">11</span>:<span class="integer">33</span>:<span class="integer">02</span>
    251. [url] => <span class="constant">Urbibus</span>-decorata.html
    252. [descriptif] =>
    253. [titre] => <span class="constant">Urbibus</span> decorata
    254. [<span class="keyword">class</span>] =>
    255. )
    256. [<span class="integer">22</span>] => <span class="predefined">Array</span>
    257. (
    258. [year] => <span class="integer">2015</span>
    259. [month] => <span class="integer">10</span>
    260. [lemois] => octobre
    261. [<span class="predefined">date</span>] => <span class="integer">2015</span>-<span class="integer">10</span>-<span class="integer">22</span> <span class="integer">11</span>:<span class="integer">33</span>:<span class="integer">02</span>
    262. [url] => <span class="constant">Les</span>-derniers-articles-modifies.html
    263. [descriptif] =>
    264. [titre] => <span class="constant">Les</span> derniers articles modifiés
    265. [<span class="keyword">class</span>] =>
    266. )
    267. [<span class="integer">23</span>] => <span class="predefined">Array</span>
    268. (
    269. [year] => <span class="integer">2015</span>
    270. [month] => <span class="integer">10</span>
    271. [lemois] => octobre
    272. [<span class="predefined">date</span>] => <span class="integer">2015</span>-<span class="integer">10</span>-<span class="integer">22</span> <span class="integer">11</span>:<span class="integer">33</span>:<span class="integer">02</span>
    273. [url] => <span class="constant">Image</span>-logo.html
    274. [descriptif] =>
    275. [titre] => <span class="constant">Image</span> = logo
    276. [<span class="keyword">class</span>] =>
    277. )
    278. [<span class="integer">24</span>] => <span class="predefined">Array</span>
    279. (
    280. [year] => <span class="integer">2015</span>
    281. [month] => <span class="integer">10</span>
    282. [lemois] => octobre
    283. [<span class="predefined">date</span>] => <span class="integer">2015</span>-<span class="integer">10</span>-<span class="integer">22</span> <span class="integer">11</span>:<span class="integer">33</span>:<span class="integer">02</span>
    284. [url] => <span class="constant">Articles</span>-avec-le-<span class="constant">Mot</span>-clef-<span class="constant">ALaUne</span>.html
    285. [descriptif] =>
    286. <span class="constant">Ceci</span> est une bulle d’aide !
    287.  
    288. [titre] => <span class="constant">Articles</span> avec le <span class="constant">Mot</span> clef : « <span class="constant">ALaUne</span> »
    289. [<span class="keyword">class</span>] =>
    290. )
    291. [<span class="integer">25</span>] => <span class="predefined">Array</span>
    292. (
    293. [year] => <span class="integer">2015</span>
    294. [month] => <span class="integer">10</span>
    295. [lemois] => octobre
    296. [<span class="predefined">date</span>] => <span class="integer">2015</span>-<span class="integer">10</span>-<span class="integer">22</span> <span class="integer">11</span>:<span class="integer">33</span>:<span class="integer">02</span>
    297. [url] => <span class="constant">Un</span>-sourire-peut-changer-une-vie.html
    298. [descriptif] =>
    299. [titre] => <span class="constant">Un</span> sourire peut changer une vie
    300. [<span class="keyword">class</span>] =>
    301. )
    302. [<span class="integer">26</span>] => <span class="predefined">Array</span>
    303. (
    304. [year] => <span class="integer">2015</span>
    305. [month] => <span class="integer">10</span>
    306. [lemois] => octobre
    307. [<span class="predefined">date</span>] => <span class="integer">2015</span>-<span class="integer">10</span>-<span class="integer">22</span> <span class="integer">11</span>:<span class="integer">33</span>:<span class="integer">02</span>
    308. [url] => <span class="constant">Le</span>-nombre-d-article-affiche-est-administrable.html
    309. [descriptif] =>
    310. [titre] => <span class="constant">Le</span> nombre d’article affiché est administrable
    311. [<span class="keyword">class</span>] =>
    312. )
    313. [<span class="integer">27</span>] => <span class="predefined">Array</span>
    314. (
    315. [year] => <span class="integer">2015</span>
    316. [month] => <span class="integer">10</span>
    317. [lemois] => octobre
    318. [<span class="predefined">date</span>] => <span class="integer">2015</span>-<span class="integer">10</span>-<span class="integer">22</span> <span class="integer">11</span>:<span class="integer">33</span>:<span class="integer">02</span>
    319. [url] => <span class="constant">Iamque</span>-non-umbratis.html
    320. [descriptif] =>
    321. [titre] => <span class="constant">Iamque</span> non umbratis (pdq2n)
    322. [<span class="keyword">class</span>] =>
    323. )
    324. [<span class="integer">28</span>] => <span class="predefined">Array</span>
    325. (
    326. [year] => <span class="integer">2015</span>
    327. [month] => <span class="integer">10</span>
    328. [lemois] => octobre
    329. [<span class="predefined">date</span>] => <span class="integer">2015</span>-<span class="integer">10</span>-<span class="integer">22</span> <span class="integer">11</span>:<span class="integer">33</span>:<span class="integer">01</span>
    330. [url] => <span class="constant">Mensarum</span>-enim.html
    331. [descriptif] =>
    332. [titre] => <span class="constant">Mensarum</span> enim
    333. [<span class="keyword">class</span>] =>
    334. )
    335. [<span class="integer">29</span>] => <span class="predefined">Array</span>
    336. (
    337. [year] => <span class="integer">2015</span>
    338. [month] => <span class="integer">10</span>
    339. [lemois] => octobre
    340. [<span class="predefined">date</span>] => <span class="integer">2015</span>-<span class="integer">10</span>-<span class="integer">22</span> <span class="integer">11</span>:<span class="integer">33</span>:<span class="integer">01</span>
    341. [url] => <span class="constant">Ideo</span>-urbs-venerabilis.html
    342. [descriptif] =>
    343. [titre] => <span class="constant">Ideo</span> urbs venerabilis
    344. [<span class="keyword">class</span>] =>
    345. )
    346. [<span class="integer">30</span>] => <span class="predefined">Array</span>
    347. (
    348. [year] => <span class="integer">2015</span>
    349. [month] => <span class="integer">10</span>
    350. [lemois] => octobre
    351. [<span class="predefined">date</span>] => <span class="integer">2015</span>-<span class="integer">10</span>-<span class="integer">22</span> <span class="integer">11</span>:<span class="integer">33</span>:<span class="integer">01</span>
    352. [url] => <span class="constant">Et</span>-prima-post-<span class="constant">Osdroenam</span>-quam.html
    353. [descriptif] =>
    354. [titre] => <span class="constant">Et</span> prima post <span class="constant">Osdroenam</span> quam
    355. [<span class="keyword">class</span>] =>
    356. )
    357. [<span class="integer">31</span>] => <span class="predefined">Array</span>
    358. (
    359. [year] => <span class="integer">2019</span>
    360. [month] => <span class="integer">02</span>
    361. [lemois] => février
    362. [<span class="predefined">date</span>] => <span class="integer">2019</span>-<span class="integer">02</span>-<span class="integer">21</span> <span class="integer">12</span>:<span class="integer">46</span>:<span class="integer">24</span>
    363. [url] => +<span class="constant">Test</span>-d-une-breve+.html
    364. [descriptif] =>
    365. [titre] => <span class="constant">Test</span> d’une brève
    366. [<span class="keyword">class</span>] => iconbreves
    367. )
    368. )
    369. </span>

    Télécharger

    Mais le résultat n’affiche rien à partir de l’année 2015.

    Si je modifie les boucles pour ne générer dans l’array que l’année 2015, celle-ci est affichée correctement.
    Si j’enlève des critères fusion lemois, l’année 2015 est parcourue.

    Testé en SPIP 3.2.3 SVN [24229]

  • FFMPEG HLS streaming and transcoding on the fly to HTML player - video duration changes while transcoding

    20 août 2019, par Thomas Tho

    I am trying to make a video streaming server and watch videos directly from web browser. The idea is to make the server to stream video from remote server, transcode with different audio format in local server, and then instantly stream to the client (this is specific way I need it to function).
    This is the FFMPEG code im currently using :

    ffmpeg -i "url" -c:v copy -c:a aac -ac 2 -f hls -hls_time 60 -hls_playlist_type event -hls_flags independent_segments out.m3u8

    The HLS stream is attached to the HTML player with hls.js and it works. However, the video duration is constantly changing while video is being transcoded. I have tried to change video duration with JS like $('video').duration = 120;with no luck.

    How do i make the player to display the video file duration instead of stream current transcoded time ?

    I am also planning to implement video seeking but i am clueless. The current idea is to send seeking time to the server, terminate ffmpeg, and start from specific time. However, i think the player might get stuck on loading and will not start playing without reloading.

  • Building A livestreaming server like youtube from scratch

    9 décembre 2022, par Dipo Ahmed

    I am trying to build a live streaming server like youtube where I can watch the video live or if I want to I can play the video from any duration I want.

    &#xA;

    What I have tried so far.&#xA;I have built a node js WebSocket server where I push the video blob that I receive from the browser via MediaRecorder API every 2 seconds. This blob is then getting converted to hls by a ffmpeg process which generates 2 seconds *.ts files and a .m3u8 file which I am playing with video.js in browser.

    &#xA;

    This is my ffmpeg command

    &#xA;

     spawn(&#x27;ffmpeg&#x27;, [&#xA;        &#x27;-i&#x27;, &#x27;-&#x27;,&#xA;        // &#x27;-re&#x27;,&#xA;        &#x27;-fflags&#x27;, &#x27;&#x2B;igndts&#x27;,&#xA;&#xA;        &#x27;-vcodec&#x27;, &#x27;h264&#x27;,&#xA;        &#x27;-acodec&#x27;, &#x27;aac&#x27;,&#xA;&#xA;        &#x27;-preset&#x27;, &#x27;slow&#x27;,&#xA;        &#x27;-crf&#x27;, &#x27;22&#x27;,&#xA;        // You can also use QP value to adjust output stream quality, e.g.: &#xA;        // &#x27;-qp&#x27;, &#x27;0&#x27;,&#xA;        // You can also specify output target bitrate directly, e.g.:&#xA;        &#x27;-b:v&#x27;, &#x27;1500K&#x27;,&#xA;        &#x27;-b:a&#x27;, &#x27;128K&#x27;, // Audio bitrate&#xA;&#xA;        &#x27;-f&#x27;, &#x27;hls&#x27;,&#xA;        &#x27;-hls_time&#x27;, &#x27;1&#x27;,&#xA;        // &#x27;-hls_playlist_type&#x27;, &#x27;vod&#x27;,&#xA;        &#x27;-hls_list_size&#x27;, &#x27;2&#x27;,&#xA;        &#x27;-hls_flags&#x27;, &#x27;independent_segments&#x27;,&#xA;        &#x27;-hls_segment_type&#x27;, &#x27;mpegts&#x27;,&#xA;        &#x27;-hls_segment_filename&#x27;, `${path}/stream%02d.ts`, `${path}/stream.m3u8`,&#xA;    ]);&#xA;

    &#xA;

    The problem is that the video js player duration is not updating like in youtube where the video duration increases every second.

    &#xA;

    Any direction will be appreciated. Please tell me if my approach is wrong and what needs to be learned for me to build this system.

    &#xA;