
Recherche avancée
Médias (1)
-
Revolution of Open-source and film making towards open film making
6 octobre 2011, par
Mis à jour : Juillet 2013
Langue : English
Type : Texte
Autres articles (67)
-
Personnaliser en ajoutant son logo, sa bannière ou son image de fond
5 septembre 2013, parCertains thèmes prennent en compte trois éléments de personnalisation : l’ajout d’un logo ; l’ajout d’une bannière l’ajout d’une image de fond ;
-
Ecrire une actualité
21 juin 2013, parPrésentez les changements dans votre MédiaSPIP ou les actualités de vos projets sur votre MédiaSPIP grâce à la rubrique actualités.
Dans le thème par défaut spipeo de MédiaSPIP, les actualités sont affichées en bas de la page principale sous les éditoriaux.
Vous pouvez personnaliser le formulaire de création d’une actualité.
Formulaire de création d’une actualité Dans le cas d’un document de type actualité, les champs proposés par défaut sont : Date de publication ( personnaliser la date de publication ) (...) -
Publier sur MédiaSpip
13 juin 2013Puis-je poster des contenus à partir d’une tablette Ipad ?
Oui, si votre Médiaspip installé est à la version 0.2 ou supérieure. Contacter au besoin l’administrateur de votre MédiaSpip pour le savoir
Sur d’autres sites (10717)
-
FFMPEG : How to chose a stream from all stream
17 janvier 2020, par AliI try to convert a UDP stream (that genrated from DVB signal) to HLS m3u8 file with this code :
ffmpeg -i udp://239.1.2.1:60001 -acodec aac -strict -2 -vcodec libx264 -hls_wrap 100 -f hls /var/www/html/ts/1.m3u8
UDP stream contain 1 channel (in this case IRIB-TV1).
When I run this above code, ffmpeg detect all of service and channel that streamed from DVB card with this message :
Input #0, mpegts, from 'udp://239.1.2.1:60001':
Duration: N/A, start: 77906.812644, bitrate: N/A
Program 101
Metadata:
service_name : IRIB-TV1
service_provider: IRIB
Stream #0:0[0x3f2]: Video: h264 (Main) ([27][0][0][0] / 0x001B), yuv420p(tv, bt470bg), 720x576 [SAR 12:11 DAR 15:11], 25 fps, 50 tbr, 90k tbn, 50 tbc
Stream #0:1[0x3f3](per): Audio: aac_latm ([17][0][0][0] / 0x0011), 48000 Hz, stereo, fltp
Program 102
Metadata:
service_name : IRIB-TV2
service_provider: IRIB
Program 103
Metadata:
service_name : IRIB-TV3
service_provider: IRIB
Program 104
Metadata:
service_name : IRIB-TV4
service_provider: IRIBAs you see ffmpeg finf 4 channel in UDP stream, But VLC play only channel 1(IRIB-TV1).
Now I have have 2 question :
1-Can I get all channel and service via this ffmpeg code ?
2-Can I choose a special stream from this ffmpeg code ?(I know that ffmpeg can choose a stream with -map option but I want to choose other service_name that in output log)
output file is :
ffmpeg version 2.4.3-1ubuntu1~trusty6 Copyright (c) 2000-2014 the FFmpeg developers
built on Nov 22 2014 17:07:19 with gcc 4.8 (Ubuntu 4.8.2-19ubuntu1)
configuration: --prefix=/usr --extra-version='1ubuntu1~trusty6' --build-suffix=-ffmpeg --toolchain=hardened --extra-cflags= --extra-cxxflags= --libdir=/usr/lib/x86_64-linux-gnu --shlibdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --enable-gpl --enable-shared --disable-stripping --enable-avresample --enable-avisynth --enable-fontconfig --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libflite --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-librtmp --enable-libschroedinger --enable-libshine --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-opengl --enable-x11grab --enable-libxvid --enable-libx265 --enable-libdc1394 --enable-libiec61883 --enable-libzvbi --enable-libzmq --enable-frei0r --enable-libx264 --enable-libsoxr --enable-openal --enable-libopencv
libavutil 54. 7.100 / 54. 7.100
libavcodec 56. 1.100 / 56. 1.100
libavformat 56. 4.101 / 56. 4.101
libavdevice 56. 0.100 / 56. 0.100
libavfilter 5. 1.100 / 5. 1.100
libavresample 2. 1. 0 / 2. 1. 0
libswscale 3. 0.100 / 3. 0.100
libswresample 1. 1.100 / 1. 1.100
libpostproc 53. 0.100 / 53. 0.100
Splitting the commandline.
Reading option '-loglevel' ... matched as option 'loglevel' (set logging level) with argument 'debug'.
Reading option '-timeout' ... matched as AVOption 'timeout' with argument '6000000'.
Reading option '-i' ... matched as input file with argument 'udp://239.1.2.1:60001?fifo_size=50000'.
Reading option '-acodec' ... matched as option 'acodec' (force audio codec ('copy' to copy stream)) with argument 'copy'.
Reading option '-vcodec' ... matched as option 'vcodec' (force video codec ('copy' to copy stream)) with argument 'copy'.
Reading option '-preset' ... matched as AVOption 'preset' with argument 'ultrafast'.
Reading option '-flags' ... matched as AVOption 'flags' with argument '-global_header'.
Reading option '-f' ... matched as option 'f' (force format) with argument 'hls'.
Reading option '-hls_time' ... matched as AVOption 'hls_time' with argument '20'.
Reading option '-hls_wrap' ... matched as AVOption 'hls_wrap' with argument '5'.
Reading option '/var/www/html/ts/1.m3u8' ... matched as output file.
Finished splitting the commandline.
Parsing a group of options: global .
Applying option loglevel (set logging level) with argument debug.
Successfully parsed a group of options.
Parsing a group of options: input file udp://239.1.2.1:60001?fifo_size=50000.
Successfully parsed a group of options.
Opening an input file: udp://239.1.2.1:60001?fifo_size=50000.
[udp @ 0x1967040] end receive buffer size reported is 131072
[mpegts @ 0x1977380] Format mpegts probed with size=2048 and score=100
[mpegts @ 0x1977380] stream=0 stream_type=1b pid=3f2 prog_reg_desc=
[mpegts @ 0x1977380] stream=1 stream_type=11 pid=3f3 prog_reg_desc=
[mpegts @ 0x1977380] Before avformat_find_stream_info() pos: 0 bytes read:14476 seeks:0
[mpegts @ 0x1977380] parser not found for codec none, packets or times may be invalid.
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[mpegts @ 0x1977380] probing stream 1 pp:2500
[mpegts @ 0x1977380] Probe with size=853, packets=1 detected loas with score=51
[mpegts @ 0x1977380] probed stream 1
[aac_latm @ 0x199e4e0] initializing latmctx
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 @ 0x199cc60] decode_slice_header error
[h264 @ 0x199cc60] no frame!
[h264 @ 0x199cc60] Current profile doesn't provide more RBSP data in PPS, skipping
[h264 @ 0x199cc60] Frame num gap 397 393
[h264 @ 0x199cc60] Frame num gap 397 394
[h264 @ 0x199cc60] Frame num gap 397 395
[h264 @ 0x199cc60] mmco: unref short failure
Last message repeated 1 times
[h264 @ 0x199cc60] number of reference frames (0+4) exceeds max (3; probably corrupt input), discarding one
[h264 @ 0x199cc60] no picture ooo
[h264 @ 0x199cc60] Increasing reorder buffer to 2
[h264 @ 0x199cc60] no picture ooo
Last message repeated 1 times
[h264 @ 0x199cc60] no picture
Last message repeated 1 times
[h264 @ 0x199cc60] Current profile doesn't provide more RBSP data in PPS, skipping
Last message repeated 3 times
[mpegts @ 0x1977380] max_analyze_duration 5000000 reached at 5034667 microseconds
[mpegts @ 0x1977380] After avformat_find_stream_info() pos: 1142476 bytes read:1143604 seeks:0 frames:397
Input #0, mpegts, from 'udp://239.1.2.1:60001?fifo_size=50000':
Duration: N/A, start: 43581.024200, bitrate: N/A
Program 101
Metadata:
service_name : IRIB-TV1
service_provider: IRIB
Stream #0:0[0x3f2], 274, 1/90000: Video: h264 (Main) ([27][0][0][0] / 0x001B), yuv420p(tv, bt470bg), 720x576 [SAR 12:11 DAR 15:11], 1/50, 25 fps, 50 tbr, 90k tbn, 50 tbc
Stream #0:1[0x3f3](per), 123, 1/90000: Audio: aac_latm ([17][0][0][0] / 0x0011), 48000 Hz, stereo, fltp
Program 102
Metadata:
service_name : IRIB-TV2
service_provider: IRIB
Program 103
Metadata:
service_name : IRIB-TV3
service_provider: IRIB
Program 104
Metadata:
service_name : IRIB-TV4
service_provider: IRIB
Program 105
Metadata:
service_name : IRIB-TV5
service_provider: IRIB
Program 106
Metadata:
service_name : IRINN
service_provider: IRIB
Program 107
Metadata:
service_name : AMOOZESH
service_provider: IRIB
Program 108
Metadata:
service_name : QURAN
service_provider: IRIB
Program 119
Metadata:
service_name : SALAMAT
service_provider: IRIB
Program 120
Metadata:
service_name : NASIM
service_provider: IRIB
Program 151
Metadata:
service_name : RADIO IRAN
service_provider: IRIB
Program 152
Metadata:
service_name : RADIO PAYAM
service_provider: IRIB
Program 153
Metadata:
service_name : RADIO JAVAN
service_provider: IRIB
Program 154
Metadata:
service_name : RADIO MAAREF
service_provider: IRIB
Program 155
Metadata:
service_name : RADIO QURAN
service_provider: IRIB
Program 156
Metadata:
service_name : RADIO FARHANG
service_provider: IRIB
Program 157
Metadata:
service_name : RADIO SALAMAT
service_provider: IRIB
Program 158
Metadata:
service_name : RADIO VARZESH
service_provider: IRIB
Program 159
Metadata:
service_name : RADIO EGHTESAD
service_provider: IRIB
Program 160
Metadata:
service_name : RADIO TEHRAN
service_provider: IRIB
Program 161
Metadata:
service_name : RADIO AVAA
service_provider: IRIB
Program 162
Metadata:
service_name : RADIO NAMAYESH
service_provider: IRIB
Program 163
Metadata:
service_name : RADIO SABA
service_provider: IRIB
Program 164
Metadata:
service_name : English Radio World Service
service_provider: IRIB
Program 166
Metadata:
service_name : Arabic Radio World Service
service_provider: IRIB
Program 167
Metadata:
service_name : RADIO BAHARAN
service_provider: IRIB
Program 169
Metadata:
service_name : RADIO TELAVAT
service_provider: IRIB
Program 170
Metadata:
service_name : RADIO GOFTEGO
service_provider: IRIB
Successfully opened the file.
Parsing a group of options: output file /var/www/html/ts/1.m3u8.
Applying option acodec (force audio codec ('copy' to copy stream)) with argument copy.
Applying option vcodec (force video codec ('copy' to copy stream)) with argument copy.
Applying option f (force format) with argument hls.
Successfully parsed a group of options.
Opening an output file: /var/www/html/ts/1.m3u8.
Successfully opened the file.
[mpegts @ 0x1967180] Using AVStream.codec.time_base as a timebase hint to the muxer is deprecated. Set AVStream.time_base instead.
Last message repeated 1 times
[mpegts @ 0x1967180] muxrate VBR, pcr every 2 pkts, sdt every 200, pat/pmt every 40 pkts
Output #0, hls, to '/var/www/html/ts/1.m3u8':
Metadata:
encoder : Lavf56.4.101
Stream #0:0, 0, 1/90000: Video: h264 ([27][0][0][0] / 0x001B), yuv420p, 720x576 [SAR 12:11 DAR 15:11], 1/25, q=2-31, 25 fps, 90k tbn, 25 tbc
Stream #0:1(per), 0, 1/90000: Audio: aac_latm ([17][0][0][0] / 0x0011), 48000 Hz, stereo
Stream mapping:
Stream #0:0 -> #0:0 (copy)
Stream #0:1 -> #0:1 (copy)
Press [q] to stop, [?] for help
[NULL @ 0x199cc60] Current profile doesn't provide more RBSP data in PPS, skipping
[NULL @ 0x199cc60] Current profile doesn't provide more RBSP data in PPS, skipping
[NULL @ 0x199cc60] Current profile doesn't provide more RBSP data in PPS, skipping
[NULL @ 0x199cc60] Current profile doesn't provide more RBSP data in PPS, skipping
[NULL @ 0x199cc60] Current profile doesn't provide more RBSP data in PPS, skipping
[NULL @ 0x199cc60] Current profile doesn't provide more RBSP data in PPS, skipping
[NULL @ 0x199cc60] Current profile doesn't provide more RBSP data in PPS, skipping
[NULL @ 0x199cc60] Current profile doesn't provide more RBSP data in PPS, skipping
[NULL @ 0x199cc60] Current profile doesn't provide more RBSP data in PPS, skipping
[NULL @ 0x199cc60] Current profile doesn't provide more RBSP data in PPS, skipping
[NULL @ 0x199cc60] Current profile doesn't provide more RBSP data in PPS, skipping
[AVIOContext @ 0x19a9860] Statistics: 0 seeks, 896 writeouts=N/A
[hls @ 0x1a65ca0] EXT-X-MEDIA-SEQUENCE:0
[AVIOContext @ 0x1d162e0] Statistics: 0 seeks, 1 writeouts
[AVIOContext @ 0x1966b40] Statistics: 0 seeks, 27 writeouts
[hls @ 0x1a65ca0] EXT-X-MEDIA-SEQUENCE:0
[AVIOContext @ 0x199b7a0] Statistics: 0 seeks, 1 writeouts
frame= 826 fps= 69 q=-1.0 Lsize=N/A time=00:00:20.63 bitrate=N/A
video:2611kB audio:68kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
Input file #0 (udp://239.1.2.1:60001?fifo_size=50000):
Input stream #0:0 (video): 872 packets read (2779202 bytes);
Input stream #0:1 (audio): 405 packets read (69222 bytes);
Total: 1277 packets (2848424 bytes) demuxed
Output file #0 (/var/www/html/ts/1.m3u8):
Output stream #0:0 (video): 826 packets muxed (2673485 bytes);
Output stream #0:1 (audio): 405 packets muxed (69222 bytes);
Total: 1231 packets (2742707 bytes) muxed
0 frames successfully decoded, 0 decoding errors
[AVIOContext @ 0x1967ce0] Statistics: 3884832 bytes read, 0 seeks
Received signal 2: terminating. -
ffmpeg errors when playing a playlist - Non monotonous DTS
20 novembre 2023, par Evilmachinei have a strange bug in ffmpeg. I am using ffmpeg to stream Twitch VODs and CLIPs to a 24/7 twitch channel. If i stream the files one by one its working. If i am streaming a playlist containing vods and clips i get this error when the shorter clips are playing :


[flv @ 0x555677050c60] Non-monotonous DTS in output stream 0:0; previous: 56867, current: 31846; changing to 56867. This may result in incorrect timestamps in the output file.


and the video stops. Once the playlist has a longer vod again it is working.


here is my code that i use to stream :


while [ 1 -eq 1 ]
do
ffmpeg -fflags +igndts -re -f concat -safe 0 -i playlist.txt -codec copy -flvflags no_duration_filesize -f flv rtmp://XXXXXXXXX
done



If i look into ffprobe the files seems both to be normal :


VODs


ffprobe version 5.1.3-1+rpt4 Copyright (c) 2007-2022 the FFmpeg developers
 built with gcc 12 (Debian 12.2.0-14)
 configuration: --prefix=/usr --extra-version=1+rpt4 --toolchain=hardened --incdir=/usr/include/aarch64-linux-gnu --enable-gpl --disable-stripping --disable-mmal --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libdav1d --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libglslang --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librabbitmq --enable-librist --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libssh --enable-libsvtav1 --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzimg --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opencl --enable-opengl --enable-sand --enable-sdl2 --disable-sndio --enable-libjxl --enable-neon --enable-v4l2-request --enable-libudev --enable-epoxy --libdir=/usr/lib/aarch64-linux-gnu --arch=arm64 --enable-pocketsphinx --enable-librsvg --enable-libdc1394 --enable-libdrm --enable-vout-drm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libx264 --enable-libplacebo --enable-librav1e --enable-shared
 libavutil 57. 28.100 / 57. 28.100
 libavcodec 59. 37.100 / 59. 37.100
 libavformat 59. 27.100 / 59. 27.100
 libavdevice 59. 7.100 / 59. 7.100
 libavfilter 8. 44.100 / 8. 44.100
 libswscale 6. 7.100 / 6. 7.100
 libswresample 4. 7.100 / 4. 7.100
 libpostproc 56. 6.100 / 56. 6.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'Speedrun - Goof Troop - Coop - @olli_wan und luk30994 -- Disney's Goof Troop.mp4':
 Metadata:
 major_brand : mp42
 minor_version : 0
 compatible_brands: isommp42
 creation_time : 2023-10-17T11:46:25.000000Z
 Duration: 00:28:23.02, start: 0.000000, bitrate: 1004 kb/s
 Stream #0:0[0x1](und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709, progressive), 1280x720 [SAR 1:1 DAR 16:9], 873 kb/s, 30 fps, 30 tbr, 15360 tbn (default)
 Metadata:
 creation_time : 2023-10-17T11:46:25.000000Z
 handler_name : ISO Media file produced by Google Inc. Created on: 10/17/2023.
 vendor_id : [0][0][0][0]
 Stream #0:1[0x2](und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 128 kb/s (default)
 Metadata:
 creation_time : 2023-10-17T11:46:25.000000Z
 handler_name : ISO Media file produced by Google Inc. Created on: 10/17/2023.
 vendor_id : [0][0][0][0]



CLIPS


ffprobe version 5.1.3-1+rpt4 Copyright (c) 2007-2022 the FFmpeg developers
 built with gcc 12 (Debian 12.2.0-14)
 configuration: --prefix=/usr --extra-version=1+rpt4 --toolchain=hardened --incdir=/usr/include/aarch64-linux-gnu --enable-gpl --disable-stripping --disable-mmal --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libdav1d --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libglslang --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librabbitmq --enable-librist --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libssh --enable-libsvtav1 --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzimg --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opencl --enable-opengl --enable-sand --enable-sdl2 --disable-sndio --enable-libjxl --enable-neon --enable-v4l2-request --enable-libudev --enable-epoxy --libdir=/usr/lib/aarch64-linux-gnu --arch=arm64 --enable-pocketsphinx --enable-librsvg --enable-libdc1394 --enable-libdrm --enable-vout-drm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libx264 --enable-libplacebo --enable-librav1e --enable-shared
 libavutil 57. 28.100 / 57. 28.100
 libavcodec 59. 37.100 / 59. 37.100
 libavformat 59. 27.100 / 59. 27.100
 libavdevice 59. 7.100 / 59. 7.100
 libavfilter 8. 44.100 / 8. 44.100
 libswscale 6. 7.100 / 6. 7.100
 libswresample 4. 7.100 / 4. 7.100
 libpostproc 56. 6.100 / 56. 6.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'Clip -- Luk - Terra - Lebensweisheiten mit Lukas Thema Smart.mp4':
 Metadata:
 major_brand : isom
 minor_version : 512
 compatible_brands: isomiso2avc1mp41
 encoder : Lavf57.83.100
 Duration: 00:00:05.00, start: 0.000000, bitrate: 5520 kb/s
 Stream #0:0[0x1](und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, unknown/bt709/unknown, progressive), 1280x720, 5374 kb/s, 60.20 fps, 60 tbr, 15360 tbn (default)
 Metadata:
 handler_name : VideoHandler
 vendor_id : [0][0][0][0]
 Stream #0:1[0x2](und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 128 kb/s (default)
 Metadata:
 handler_name : SoundHandler
 vendor_id : [0][0][0][0]



Has someone a hint why this error happens and how i can avoid them ?
Is gstreamer better for this approach ?


Thanks a lot in Advance.


I tried changing the files.


-
Live streaming : node-media-server + Dash.js configured for real-time low latency
7 juillet 2021, par MaorationWe're working on an app that enables live monitoring of your back yard.
Each client has a camera connected to the internet, streaming to our public node.js server.



I'm trying to use node-media-server to publish an MPEG-DASH (or HLS) stream to be available for our app clients, on different networks, bandwidths and resolutions around the world.



Our goal is to get as close as possible to live "real-time" so you can monitor what happens in your backyard instantly.



The technical flow already accomplished is :



- 

-
ffmpeg process on our server processes the incoming camera stream (separate child process for each camera) and publishes the stream via RTSP on the local machine for node-media-server to use as an 'input' (we are also saving segmented files, generating thumbnails, etc.). the ffmpeg command responsible for that is :



-c:v libx264 -preset ultrafast -tune zerolatency -b:v 900k -f flv rtmp://127.0.0.1:1935/live/office
-
node-media-server is running with what I found as the default configuration for 'live-streaming'



private NMS_CONFIG = {
server: {
 secret: 'thisisnotmyrealsecret',
},
rtmp_server: {
 rtmp: {
 port: 1935,
 chunk_size: 60000,
 gop_cache: false,
 ping: 60,
 ping_timeout: 30,
 },
 http: {
 port: 8888,
 mediaroot: './server/media',
 allow_origin: '*',
 },
 trans: {
 ffmpeg: '/usr/bin/ffmpeg',
 tasks: [
 {
 app: 'live',
 hls: true,
 hlsFlags: '[hls_time=2:hls_list_size=3:hls_flags=delete_segments]',
 dash: true,
 dashFlags: '[f=dash:window_size=3:extra_window_size=5]',
 },
 ],
 },
},




} ;
-
As I understand it, out of the box NMS (node-media-server) publishes the input stream it gets in multiple output formats : flv, mpeg-dash, hls.
with all sorts of online players for these formats I'm able to access and the stream using the url on localhost. with mpeg-dash and hls I'm getting anything between 10-15 seconds of delay, and more.











My goal now is to implement a local client-side mpeg-dash player, using dash.js and configure it to be as close as possible to live.



my code for that is :







 
 
 
 
 
 <div>
 <video autoplay="" controls=""></video>
 </div>
 <code class="echappe-js"><script src="https://cdnjs.cloudflare.com/ajax/libs/dashjs/3.0.2/dash.all.min.js"></script>


<script>&#xD;&#xA; (function(){&#xD;&#xA; // var url = "https://dash.akamaized.net/envivio/EnvivioDash3/manifest.mpd";&#xD;&#xA; var url = "http://localhost:8888/live/office/index.mpd";&#xD;&#xA; var player = dashjs.MediaPlayer().create();&#xD;&#xA; &#xD;&#xA; &#xD;&#xA;&#xD;&#xA; // config&#xD;&#xA; targetLatency = 2.0; // Lowering this value will lower latency but may decrease the player&#x27;s ability to build a stable buffer.&#xD;&#xA; minDrift = 0.05; // Minimum latency deviation allowed before activating catch-up mechanism.&#xD;&#xA; catchupPlaybackRate = 0.5; // Maximum catch-up rate, as a percentage, for low latency live streams.&#xD;&#xA; stableBuffer = 2; // The time that the internal buffer target will be set to post startup/seeks (NOT top quality).&#xD;&#xA; bufferAtTopQuality = 2; // The time that the internal buffer target will be set to once playing the top quality.&#xD;&#xA;&#xD;&#xA;&#xD;&#xA; player.updateSettings({&#xD;&#xA; &#x27;streaming&#x27;: {&#xD;&#xA; &#x27;liveDelay&#x27;: 2,&#xD;&#xA; &#x27;liveCatchUpMinDrift&#x27;: 0.05,&#xD;&#xA; &#x27;liveCatchUpPlaybackRate&#x27;: 0.5,&#xD;&#xA; &#x27;stableBufferTime&#x27;: 2,&#xD;&#xA; &#x27;bufferTimeAtTopQuality&#x27;: 2,&#xD;&#xA; &#x27;bufferTimeAtTopQualityLongForm&#x27;: 2,&#xD;&#xA; &#x27;bufferToKeep&#x27;: 2,&#xD;&#xA; &#x27;bufferAheadToKeep&#x27;: 2,&#xD;&#xA; &#x27;lowLatencyEnabled&#x27;: true,&#xD;&#xA; &#x27;fastSwitchEnabled&#x27;: true,&#xD;&#xA; &#x27;abr&#x27;: {&#xD;&#xA; &#x27;limitBitrateByPortal&#x27;: true&#xD;&#xA; },&#xD;&#xA; }&#xD;&#xA; });&#xD;&#xA;&#xD;&#xA; console.log(player.getSettings());&#xD;&#xA;&#xD;&#xA; setInterval(() => {&#xD;&#xA; console.log(&#x27;Live latency= &#x27;, player.getCurrentLiveLatency());&#xD;&#xA; console.log(&#x27;Buffer length= &#x27;, player.getBufferLength(&#x27;video&#x27;));&#xD;&#xA; }, 3000);&#xD;&#xA;&#xD;&#xA; player.initialize(document.querySelector("#videoPlayer"), url, true);&#xD;&#xA;&#xD;&#xA; })();&#xD;&#xA;&#xD;&#xA; </script>

 








with the online test video (https://dash.akamaized.net/envivio/EnvivioDash3/manifest.mpd) I see that the live latency value is close to 2 secs (but I have no way to actually confirm it. it's a video file streamed. in my office I have a camera so I can actually compare latency between real-life and the stream I get).
however when working locally with my NMS, it seems this value does not want to go below 20-25 seconds.



Am I doing something wrong ? any configuration on the player (client-side html) I'm forgetting ?
or is there a missing configuration I should add on the server side (NMS) ?


-