
Recherche avancée
Médias (1)
-
Richard Stallman et le logiciel libre
19 octobre 2011, par
Mis à jour : Mai 2013
Langue : français
Type : Texte
Autres articles (45)
-
Récupération d’informations sur le site maître à l’installation d’une instance
26 novembre 2010, parUtilité
Sur le site principal, une instance de mutualisation est définie par plusieurs choses : Les données dans la table spip_mutus ; Son logo ; Son auteur principal (id_admin dans la table spip_mutus correspondant à un id_auteur de la table spip_auteurs)qui sera le seul à pouvoir créer définitivement l’instance de mutualisation ;
Il peut donc être tout à fait judicieux de vouloir récupérer certaines de ces informations afin de compléter l’installation d’une instance pour, par exemple : récupérer le (...) -
Menus personnalisés
14 novembre 2010, parMediaSPIP utilise le plugin Menus pour gérer plusieurs menus configurables pour la navigation.
Cela permet de laisser aux administrateurs de canaux la possibilité de configurer finement ces menus.
Menus créés à l’initialisation du site
Par défaut trois menus sont créés automatiquement à l’initialisation du site : Le menu principal ; Identifiant : barrenav ; Ce menu s’insère en général en haut de la page après le bloc d’entête, son identifiant le rend compatible avec les squelettes basés sur Zpip ; (...) -
Contribute to translation
13 avril 2011You can help us to improve the language used in the software interface to make MediaSPIP more accessible and user-friendly. You can also translate the interface into any language that allows it to spread to new linguistic communities.
To do this, we use the translation interface of SPIP where the all the language modules of MediaSPIP are available. Just subscribe to the mailing list and request further informantion on translation.
MediaSPIP is currently available in French and English (...)
Sur d’autres sites (6595)
-
How to specify MPEG-DASH adaptation sets in FFmpeg, when using optional output audio and subtitle streams ?
15 juillet 2021, par SebsiiI am using the script below to transform videos to MPEG-DASH compliant ones. I want also to be able to process video that have no audio and/or no subtitles. Because of that I marked the streams for audio and subtitles with a
?
at the end of the stream specifier, f.e.-map a:0?
.

Now when I want to specify the adaptation sets I can set it for the video and audio streams with
id=0,streams=v
andid=1,streams=a
, but I can not select the subtitle streams, like I would want to withid=2,streams=s
, as it is stated in the docs ("To map all video (or audio) streams to an AdaptationSet, "v" (or "a") can be used as stream identifier instead of IDs."). The only thing I could do is to specify an ID, likeid=2,streams=8
, but for that to work, an audio and subtitle stream would be mandatory, because otherwise there is no stream with the id 8 and FFmpeg would fail. I thought of putting the-map s:0?
at the first position, then I could be sure, that it is always the stream with id 0, but if the input did not have a subtitle stream, then there would be an additional adaptation set, with the first version of video. I also thought about using FFprobe to get info about the available streams, but did not look too much into depth.

Does anybody know how I could tell FFmpeg, that an adaptation set should be created, when there's a stream with subtitles present independent of there being audio streams or not ?


Any help is much appreciated.


#!/bin/bash

INPUT_PATH=$1
OUTPUT_PATH=$2

FPS=25
GOP_SIZE=100
PRESET_P=veryfast
V_SIZE_1=256x144
V_SIZE_2=426x240
V_SIZE_3=640x360
V_SIZE_4=854x480
V_SIZE_5=1280x720
V_SIZE_6=1920x1080

ffmpeg -i "$INPUT_PATH" \
 -preset $PRESET_P -keyint_min $GOP_SIZE -g $GOP_SIZE -sc_threshold 0 \
 -r $FPS -c:v libx264 -pix_fmt yuv420p -c:a aac -c:s copy \
 -map v:0 -s:0 $V_SIZE_1 -b:v:0 160k -maxrate:0 160k -bufsize:0 320k \
 -map v:0 -s:1 $V_SIZE_2 -b:v:1 450k -maxrate:1 450k -bufsize:1 900k \
 -map v:0 -s:2 $V_SIZE_3 -b:v:2 1M -maxrate:2 1M -bufsize:2 2M \
 -map v:0 -s:3 $V_SIZE_4 -b:v:3 2.5M -maxrate:3 2.5M -bufsize:3 5M \
 -map v:0 -s:4 $V_SIZE_5 -b:v:4 5M -maxrate:4 5M -bufsize:4 10M \
 -map v:0 -s:5 $V_SIZE_6 -b:v:5 8M -maxrate:5 8M -bufsize:5 16M \
 -map a:0? -b:a:0 128k -ac:a:0 1 \
 -map a:0? -b:a:1 384k -ac:a:1 2 \
 -map s:0? \
 -use_template 1 -use_timeline 1 \
 -seg_duration 4 -adaptation_sets "id=0,streams=v id=1,streams=a id=2,streams=s" \
 -f dash "$OUTPUT_PATH"



-
How should be the track ID encoded in to the media tracks / media content components available for MPEG - DASH Media Presentation ?
2 avril 2014, par Ghanesh Babu JAs per ISO/IEC 14496 Part 12 : ISOBMFF , the track Identifier specified in track header box "trak" and track fragment header "tfhd" box should be same and unique to each track available in an ISO file.
Also as per ISO/IEC 23009 Part 1 , The track Identifier is same for all the representation of same content component type and unique to a media content component type( Audio / Video etc . . .) in an adaptation set.
But , Most of the mpeg dash non multiplexed sample streams available in internet has used same track Identifier in all of the media tracks ( Audio , video etc. . . ) available for a media presentation. Say track ID for all content component type is 1.
In this case, If a media player is supported with single mp4 demuxer means, it is not possible to demux the fragmented media sample from various track correctly for a media presentation.
My question is,
Having same track identifier for all media content component type in a dash media presentation is MPEG DASH Standard ? -
Live streaming using FFMPEG via MPEG Dash
4 février 2021, par mifol68042I have an application that creates gets frames for external source and creates a
mp4
video every 60 seconds. I useOpenCV
in Python to create an array of frames and then create a mp4 video every 60 seconds. Let's assume my file structure is like below :

video_1.mp4
video_2.mp4
video_3.mp4



Now I want this to be made into a live stream using FFMPEG via Apple HLS or MPEG Dash. I tried to run the following command to convert mp4 to hls :


ffmpeg -i video_1.mp4 -codec: copy -start_number 0 -hls_time 10 -hls_list_size 0 -f hls test.m3u88



I did a
cat
of thetest.m3u88
file, I can see the following output :

#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:50
#EXT-X-MEDIA-SEQUENCE:0
#EXTINF:50.000000,
test30.ts
#EXTINF:50.000000,
test31.ts
#EXTINF:25.000000,
test32.ts
#EXT-X-ENDLIST



Next I did the same command for the
video_2.mp4
but the contents oftest.m3u88
is getting overwritten. I am not able to understand how to append to existing segments.

My aim for this problem is that if I can append to the
test.m3u88
file I can achieve live stream in my front end app. Is this the right way to get live stream or should I take another approach ? Please let me know examples if any that can help me on getting live stream to web app.