
Recherche avancée
Autres articles (88)
-
Les sons
15 mai 2013, par -
Automated installation script of MediaSPIP
25 avril 2011, parTo overcome the difficulties mainly due to the installation of server side software dependencies, an "all-in-one" installation script written in bash was created to facilitate this step on a server with a compatible Linux distribution.
You must have access to your server via SSH and a root account to use it, which will install the dependencies. Contact your provider if you do not have that.
The documentation of the use of this installation script is available here.
The code of this (...) -
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 (9265)
-
FFmpeg/DASH : duration or timestamp out of range for mov/mp4 format [closed]
7 juin, par mikeI'm trying to convert a
aac
stream to dash. The issue is that I get a lot of errors as below(though it seems to segment it into multiple files but I get errors on the player too). The question is why do I get these errors and how can I fix it ? If I simply convert "copy" it into to a single mp4 file it works without error.


ffmpeg -i "a.mkv" -y -map 0:1 -c:0 copy -min_seg_duration 1000000 
-use_timeline 1 -use_template 1 -init_seg_name init.mp4s 
-media_seg_name "\$Number\$.mp4s" -adaptation_sets "id=1,streams=0"
-remove_at_exit 0 -f dash -dash 1 
"out/stream.mpd" -loglevel error 




Output



[mp4 @ 0x7fbb70819600] Application provided duration: -32 / timestamp: 40475608 is out of range for mov/mp4 format
[mp4 @ 0x7fbb70819600] Application provided duration: -32 / timestamp: 40764376 is out of range for mov/mp4 format
[mp4 @ 0x7fbb70819600] Application provided duration: -32 / timestamp: 40860664 is out of range for mov/mp4 format
[mp4 @ 0x7fbb70819600] Application provided duration: -32 / timestamp: 41149432 is out of range for mov/mp4 format
[mp4 @ 0x7fbb70819600] Application provided duration: -32 / timestamp: 41390056 is out of range for mov/mp4 format
[mp4 @ 0x7fbb70819600] Application provided duration: -32 / timestamp: 41823208 is out of range for mov/mp4 format




Copy to a single MP4 works just fine
 ffmpeg -i "a.mkv" -y -map 0:1 -c:0 copy -f mp4 -dash 1 "out/out.mp4" -loglevel error



Probe



ffprobe a.mkv
ffprobe version 3.4 Copyright (c) 2007-2017 the FFmpeg developers
 built with Apple LLVM version 9.0.0 (clang-900.0.37)
 configuration: --prefix=/usr/local/Cellar/ffmpeg/3.4 --enable-shared --enable-pthreads --enable-version3 --enable-hardcoded-tables --enable-avresample --cc=clang --host-cflags= --host-ldflags= --enable-gpl --enable-libmp3lame --enable-libx264 --enable-libxvid --enable-opencl --enable-videotoolbox --disable-lzma
 libavutil 55. 78.100 / 55. 78.100
 libavcodec 57.107.100 / 57.107.100
 libavformat 57. 83.100 / 57. 83.100
 libavdevice 57. 10.100 / 57. 10.100
 libavfilter 6.107.100 / 6.107.100
 libavresample 3. 7. 0 / 3. 7. 0
 libswscale 4. 8.100 / 4. 8.100
 libswresample 2. 9.100 / 2. 9.100
 libpostproc 54. 7.100 / 54. 7.100
Input #0, matroska,webm, from 'a.mkv':
 Metadata:
 encoder : libebml v1.3.1 + libmatroska v1.4.2
 creation_time : 2017-03-11T02:56:50.000000Z
 Duration: 02:12:52.39, start: 0.000000, bitrate: 740 kb/s
 Chapter #0:0: start 0.000000, end 520.270000
 Metadata:
 title : 00:00:00.000
 Chapter #0:1: start 520.270000, end 1135.718000
 Metadata:
 title : 00:08:40.270
 Chapter #0:2: start 1135.718000, end 1703.660000
 Metadata:
 title : 00:18:55.718
 Chapter #0:3: start 1703.660000, end 2314.187000
 Metadata:
 title : 00:28:23.660
 Chapter #0:4: start 2314.187000, end 2888.594000
 Metadata:
 title : 00:38:34.187
 Chapter #0:5: start 2888.594000, end 3499.246000
 Metadata:
 title : 00:48:08.594
 Chapter #0:6: start 3499.246000, end 4154.692000
 Metadata:
 title : 00:58:19.246
 Chapter #0:7: start 4154.692000, end 4646.392000
 Metadata:
 title : 01:09:14.692
 Chapter #0:8: start 4646.392000, end 5373.660000
 Metadata:
 title : 01:17:26.392
 Chapter #0:9: start 5373.660000, end 5882.085000
 Metadata:
 title : 01:29:33.660
 Chapter #0:10: start 5882.085000, end 6627.871000
 Metadata:
 title : 01:38:02.085
 Chapter #0:11: start 6627.871000, end 7144.471000
 Metadata:
 title : 01:50:27.871
 Chapter #0:12: start 7144.471000, end 7451.944000
 Metadata:
 title : 01:59:04.471
 Chapter #0:13: start 7451.944000, end 7972.394000
 Metadata:
 title : 02:04:11.944
 Stream #0:0(eng): Video: h264 (High), yuv420p(tv, bt709/unknown/unknown, progressive), 720x300 [SAR 1:1 DAR 12:5], 23.98 fps, 23.98 tbr, 1k tbn, 47.95 tbc (default)
 Metadata:
 title : X264
 BPS : 623765
 BPS-eng : 623765
 DURATION : 02:12:52.311000000
 DURATION-eng : 02:12:52.311000000
 NUMBER_OF_FRAMES: 191144
 NUMBER_OF_FRAMES-eng: 191144
 NUMBER_OF_BYTES : 621606403
 NUMBER_OF_BYTES-eng: 621606403
 _STATISTICS_WRITING_APP: mkvmerge v8.3.0 ('Over the Horizon') 64bit
 _STATISTICS_WRITING_APP-eng: mkvmerge v8.3.0 ('Over the Horizon') 64bit
 _STATISTICS_WRITING_DATE_UTC: 2017-03-11 02:56:50
 _STATISTICS_WRITING_DATE_UTC-eng: 2017-03-11 02:56:50
 _STATISTICS_TAGS: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
 _STATISTICS_TAGS-eng: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
 Stream #0:1(eng): Audio: aac (LC), 48000 Hz, stereo, fltp (default)
 Metadata:
 BPS : 114797
 BPS-eng : 114797
 DURATION : 02:12:52.394000000
 DURATION-eng : 02:12:52.394000000
 NUMBER_OF_FRAMES: 373706
 NUMBER_OF_FRAMES-eng: 373706
 NUMBER_OF_BYTES : 114401387
 NUMBER_OF_BYTES-eng: 114401387
 _STATISTICS_WRITING_APP: mkvmerge v8.3.0 ('Over the Horizon') 64bit
 _STATISTICS_WRITING_APP-eng: mkvmerge v8.3.0 ('Over the Horizon') 64bit
 _STATISTICS_WRITING_DATE_UTC: 2017-03-11 02:56:50
 _STATISTICS_WRITING_DATE_UTC-eng: 2017-03-11 02:56:50
 _STATISTICS_TAGS: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
 _STATISTICS_TAGS-eng: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES




Shaka debug



Assertion failed: This should be an update of the last segment in a period
shaka.media.SegmentIndex.merge @ segment_index.js:153
shaka.dash.SegmentTemplate.createStream @ segment_template.js:82
shaka.dash.DashParser.parseRepresentation_ @ dash_parser.js:1080
shaka.dash.DashParser.parseAdaptationSet_ @ dash_parser.js:978
shaka.dash.DashParser.parsePeriod_ @ dash_parser.js:722
shaka.dash.DashParser.parsePeriods_ @ dash_parser.js:626
shaka.dash.DashParser.processManifest_ @ dash_parser.js:520
(anonymous) @ dash_parser.js:431
Promise resolved (async)
shaka.dash.DashParser.parseManifest_ @ dash_parser.js:430
(anonymous) @ dash_parser.js:397
Promise resolved (async)
shaka.dash.DashParser.requestManifest_ @ dash_parser.js:390
shaka.dash.DashParser.onUpdate_ @ dash_parser.js:1161
setTimeout (async)
shaka.dash.DashParser.setUpdateTimer_ @ dash_parser.js:1209
(anonymous) @ dash_parser.js:331
Promise resolved (async)
shaka.dash.DashParser.start @ dash_parser.js:329
(anonymous) @ player.js:555
Promise resolved (async)
shaka.util.CancelableChain.then @ cancelable_chain.js:72
shaka.Player.load @ player.js:499
initPlayer @ ?x=149&y=88&q=http%3A%2F%2Flocalhost%3A8080%2Fmeta%2F%3FbucketID%3D%2FVolumes%2FTV%2FFa%26channelID%3D%2FVolumes%2FTV%26containerID%3D%2FUsers%2F%2Fbrev%%2FL1ZvbHVtZXMvVFYvRmFudGFzdGljLkJlYXN0cy5hbmQuV2hlcmUudG8uRmluZC5UaGVtLjIwMTYuQkRSaXAueDI2NC1TUEFSS1MvYS5ta3Y%2F97M4TS6IqnQ.mpd:392
463segment_index.js:145 Refusing to rewrite original references on update!
shaka.media.SegmentIndex.merge @ segment_index.js:145
shaka.dash.SegmentTemplate.createStream @ segment_template.js:82
shaka.dash.DashParser.parseRepresentation_ @ dash_parser.js:1080
shaka.dash.DashParser.parseAdaptationSet_ @ dash_parser.js:978
shaka.dash.DashParser.parsePeriod_ @ dash_parser.js:722
shaka.dash.DashParser.parsePeriods_ @ dash_parser.js:626
shaka.dash.DashParser.processManifest_ @ dash_parser.js:520
(anonymous) @ dash_parser.js:431
Promise resolved (async)
shaka.dash.DashParser.parseManifest_ @ dash_parser.js:430
(anonymous) @ dash_parser.js:397
Promise resolved (async)
shaka.dash.DashParser.requestManifest_ @ dash_parser.js:390
shaka.dash.DashParser.onUpdate_ @ dash_parser.js:1161
setTimeout (async)
shaka.dash.DashParser.setUpdateTimer_ @ dash_parser.js:1209
(anonymous) @ dash_parser.js:331
Promise resolved (async)
shaka.dash.DashParser.start @ dash_parser.js:329
(anonymous) @ player.js:555
Promise resolved (async)
shaka.util.CancelableChain.then @ cancelable_chain.js:72
shaka.Player.load @ player.js:499
initPlayer @ ?x=149&y=88&q=http%3A%2F%2Flocalhost%3A8080%2Fmeta%2F%3FbucketID%3D%2FVolumes%2FTV%2FFa%26channelID%3D%2FVolumes%2FTV%26containerID%3D%2FUsers%2F%2Fbrev%%2FL1ZvbHVtZXMvVFYvRmFudGFzdGljLkJlYXN0cy5hbmQuV2hlcmUudG8uRmluZC5UaGVtLjIwMTYuQkRSaXAueDI2NC1TUEFSS1MvYS5ta3Y%2F97M4TS6IqnQ.mpd:392



-
ffmpeg DASH - Include the stream's width and height (WxH) in the outputted filenames
20 juillet 2022, par JaradGiven this :


ffmpeg -i test.mp4 -c:a aac -c:v libx264 ^
-map v:0 -s:0 960x540 -b:v:0 800k ^
-map v:0 -s:1 320x170 -b:v:0 300k ^
-map 0:a ^
-f dash dash/master.mpd



Produces this :


chunk-stream0-00001.m4s
chunk-stream0-00002.m4s
...
chunk-stream0-00044.m4s
chunk-stream0-00045.m4s
chunk-stream1-00001.m4s
chunk-stream1-00002.m4s
...
chunk-stream1-00044.m4s
chunk-stream1-00045.m4s
chunk-stream2-00001.m4s
chunk-stream2-00002.m4s
...
chunk-stream2-00074.m4s
chunk-stream2-00075.m4s
init-stream0.m4s
init-stream1.m4s
init-stream2.m4s
master.mpd



Inspection shows :
ffprobe master.mpd


Input #0, dash, from 'master.mpd':
 Duration: 00:06:11.00, start: -0.021333, bitrate: 0 kb/s
 Program 0
 Stream #0:0: Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709), 960x540 [SAR 1:1 DAR 16:9], 152 kb/s, 30 fps, 30 tbr, 15360 tbn (default)
 Metadata:
 variant_bitrate : 300000
 id : 0
 Stream #0:1: Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709), 320x170 [SAR 17:18 DAR 16:9], 21 kb/s, 30 fps, 30 tbr, 15360 tbn (default)
 Metadata:
 variant_bitrate : 28227
 id : 1
 Stream #0:2(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 110 kb/s (default)
 Metadata:
 variant_bitrate : 128000
 id : 2



I want output instead like this :


chunk-stream0-960x540-00001.m4s
chunk-stream0-960x540-00002.m4s
...
chunk-stream0-960x540-00044.m4s
chunk-stream0-960x540-00045.m4s
chunk-stream1-320x170-00001.m4s
chunk-stream1-320x170-00002.m4s
...
chunk-stream1-320x170-00044.m4s
chunk-stream1-320x170-00045.m4s
chunk-stream2-???????-00001.m4s
chunk-stream2-???????-00002.m4s
...
chunk-stream2-???????-00074.m4s
chunk-stream2-???????-00075.m4s
init-stream0-960x540.m4s
init-stream1-320x170.m4s
init-stream2-???????.m4s
master.mpd



where
???????
could be justaudio
or48000hz
or whatever.

The Question


Is there a way to include the stream's width and height (its size) in the outputted filenames from the command-line interface ? If no, how could it be accomplished using a shell script for example.


-
Avoiding ffmpeg audio drift for live dash output
22 mai 2021, par mdaleHave people experienced playback drift with ffmpeg based dash segment generation ? For example :


ffmpeg -threads 2 -re -fflags +genpts -stream_loop -1 -i AVSyncTest.mp4 \
-af "aresample=async=1:min_hard_comp=0.100000:first_pts=0" \
-c:v:0 libx264 \
-pix_fmt:0 yuv420p \
-preset:0 medium \
-a53cc:0 1 \
-nal-hrd:0 cbr \
-x264opts:0 scenecut=-1:rc_lookahead=0 -b:v:0 5000k -bufsize:0 500k \
-force_key_frames:0 "expr:gte(t,n_forced*2)" \
-bf:0 8 \
-r 30 \
-c:a:0 aac -ar 48000 \
-b:a:1 96k \
-f tee -map 0:v \
-map 0:a "[f=dash:media_seg_name='chunk-stream_\$RepresentationID\$-\$Number%05d\$.mp4':init_seg_name='init-stream_\$RepresentationID\$.mp4':seg_duration=2:utc_timing_url=https\\\://time.akamai.com\\?iso:remove_at_exit=0:use_timeline=0:http_user_agent=ffmpeg_encoder.0:streaming=1:index_correction=1:timeout=1:dash_segment_type=mp4:method=PUT:http_persistent=1:adaptation_sets='id=0,streams=v\:0 id=1,streams=a' ]http://localhost:5000/out.mpd "



After a bit of playback it starts audio starts to drift. Analysis of the moof (with tools like mp4box) shows 1024 sample size with 93 Moofs with Moof->traf->default_sample_duration=1024 at 48000 sample rate giving segment duration of 1.984 seconds with every 3rd segment or so with 92 Moofs with duration of 1.962 … While each segment starts aligned ( if you reset playback you get alignment) it drifts against continuous playback.


Other examples like Akamai’s public stream. show 94 Moofs or 2.005 duration with every 3rd segment or so at the 1.984 duration. (what one would want)


Akamai’s (presumably ffmepg based) stream is averaging out to the 2s target where the above ffmpeg command is not …