4d8875ec23
lavf: Constify the probe function argument.
...
Reviewed-by: Lauri Kasanen
Reviewed-by: Tomas Härdin
2019-03-21 11:42:17 +01:00
3aa6208db9
lavf: Constify AVInputFormat pointer.
2019-03-20 18:52:38 +01:00
835ab35ef0
libavformat/dashdec: disable seeking only for live streams.
...
Signed-off-by: Paweł Wegner <pawel.wegner95@gmail.com >
2019-02-06 13:01:34 +01:00
bb586a9703
avformat/dashdec: refine uri path with double dot process
...
fix ticket: 7540
2018-12-23 15:18:55 +08:00
ba71ebbbfa
avformat/dashdec: add subtitle stream support
...
Signed-off-by: Steven Liu <lq@chinaffmpeg.org >
2018-11-30 16:39:19 +08:00
1035206102
lavf/dashdec: Add webm to the list of allowed extensions.
...
This is in coherence with dashenc, which can now generate segments with
webm file name extension by default. Dashdec should be able to handle
such streams by default as well.
2018-11-27 11:27:19 +05:30
7bb90a9449
avformat/dashdec: minus minBufferTime when there have value
...
fix ticket 7382
2018-09-06 13:40:56 +08:00
ad9b4ecc26
avformat/dashdec: refine compute current fragment for presentation_timeoffset mode
...
fix ticket id: #7369 #7382 .
use ((wallclock - availability_start_time) * timescale -presentation_timeoffset) / duration
Signed-off-by: Steven Liu <lq@onvideo.cn >
2018-09-05 14:33:53 +08:00
d0be0de065
avformat/dashdec: reindent code for previous commit
...
Signed-off-by: Steven Liu <lq@onvideo.cn >
2018-09-05 14:21:33 +08:00
8eac027cd1
avformat/dashdec: add min_buffer_time process logic
...
if there have min_buffer_time in playlist, use the min_buffer_time
value for realtime.
Signed-off-by: Steven Liu <lq@onvideo.cn >
2018-09-05 14:20:52 +08:00
e35e915465
avformat/dashdec: add trace message for get the logic output message
...
Signed-off-by: Steven Liu <lq@onvideo.cn >
2018-09-05 14:19:43 +08:00
a222798ef3
avformat/dashdec: reindent code for previous commit
...
Signed-off-by: Steven Liu <lq@onvideo.cn >
2018-09-05 14:17:03 +08:00
28578e6143
avformat/dashdec: remove redundant code
...
Signed-off-by: Steven Liu <lq@onvideo.cn >
2018-09-05 14:16:29 +08:00
e134c20374
avformat/dashdec: refine adaptionset attribute members
...
Signed-off-by: Steven Liu <lq@onvideo.cn >
2018-09-05 14:15:47 +08:00
f499679e17
avformat/dashdec: refine mpd element of attribute name availabilityEndTime
...
Signed-off-by: Steven Liu <lq@onvideo.cn >
2018-09-05 14:13:56 +08:00
b205635fbc
avformat/dashdec: Add a re-entrance check point after an interrupt operation
2018-08-29 16:28:03 +08:00
3cff2311ab
avformat/dashdec: Fix calc_cur_seg_no if availability_start_time not
...
Reviewed-by: Steven Liu <lq@chinaffmpeg.org >
2018-08-29 15:20:00 +08:00
46753bfdd0
avformat/dashdec: Fix strlen(rep_id_val) with it being NULL
...
Fixes: dash-crash-da39a3ee5e6b4b0d3255bfef95601890afd80709.xml
Found-by: Paul Ch <paulcher@icloud.com >
Reviewed-by: Steven Liu <lq@chinaffmpeg.org >
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2018-08-19 02:47:33 +02:00
551a029a18
libavformat/dashdec: Support negative value of the @r attrbute of S in SegmentTimeline element.
...
The following patch supports parsing negative value of the @r attribute of S in SegmentTimeline element.
Example streams:
1. http://dash.edgesuite.net/dash264/TestCases/1c/qualcomm/1/MultiRate.mpd
2. http://dash.edgesuite.net/dash264/TestCases/1c/qualcomm/2/MultiRate.mpd
2018-08-13 16:53:59 +08:00
af4c2acddd
libavformat/dashdec: Fix for un-free memory
...
Fixes ticket #7338 .
2018-08-08 23:55:25 +02:00
d54ae9b782
avformat/dashdec: remove unused functions and process code
...
Based on a patch for hls by Richard Shaffer
Signed-off-by: Steven Liu <lq@chinaffmpeg.org >
2018-08-07 12:37:02 +08:00
0cf5e6b5b4
avformat/dashdec: Fix memleak when resolve_content_path
...
Can be reproduced with: valgrind --leak-check=full -v ffmpeg -i
http://yt-dash-mse-test.commondatastorage.googleapis.com/media/motion-20120802-manifest.mpd
Reviewed-by: Steven Liu <lq@onvideo.cn >
Signed-off-by: Steven Liu <lq@chinaffmpeg.org >
2018-08-07 12:31:55 +08:00
2f45378ba1
avformat/dashdec: fix for ticket #7336
...
fix for ticket #7336
Reviewed-by: Steven Liu <lq@onvideo.cn >
Signed-off-by: Steven Liu <lq@chinaffmpeg.org >
2018-08-07 12:31:49 +08:00
04b6060616
avformat/dashdec: replace user-agent to user_agent for deprecate warning message
2018-05-24 11:49:04 +08:00
93fc96e199
avformat/dashdec: Fix for ticket 7149 (Segfault when decoding dash streams)
...
simplify the code to check common init section
2018-05-24 11:49:00 +08:00
9aee574dd0
avformat/dashdec: Fix for ticket 7149 (Segfault when decoding dash streams)
...
Add NULL pointer check for init_section
2018-05-24 11:48:39 +08:00
798ae8794e
avformat/dashdec: fix compling warning "filename is deprecated"
...
Signed-off-by: Steven Liu <lq@chinaffmpeg.org >
2018-04-26 16:19:30 +08:00
8ea8be5951
fix memory leak of parsing dash MPD
...
Signed-off-by: guikunzhi <guikunzhi@163.com >
2018-04-26 12:40:52 +08:00
8592ae1a1e
lavf/dashdec: Do not use memcpy() to copy a struct.
...
Fixes a warning:
libavformat/dashdec.c:1900:65: warning: argument to 'sizeof' in 'memcpy' call is the same pointer type 'struct fragment *' as the destination; expected 'struct fragment' or an explicit length
2018-04-21 22:59:34 +02:00
9e2b4c7ecc
libavformat/dashdec: Avoid multiple HTTP requests for initialization segment that is common among all representations
...
Reviewed-by: Steven Liu <lq@chinaffmpeg.org >
Signed-off-by: sanilraut <raut.sanil@gmail.com >
2018-04-17 14:36:45 +08:00
6eaaad37f8
Revert "avformat/dashdec: Avoid multiple HTTP requests for initialization segment that is common among all representations"
...
This reverts commit 4effd1c4a2
.
2018-04-17 14:32:27 +08:00
4effd1c4a2
avformat/dashdec: Avoid multiple HTTP requests for initialization segment that is common among all representations
...
Reviewed-by: Steven Liu <lq@chinaffmpeg.org >
Signed-off-by: sanilraut <raut.sanil@gmail.com >
2018-04-17 14:19:00 +08:00
10d008f0fd
avformat/dashdec: Support signaling of last segment number
...
Last segment indicated by mpd is not parsed.
Example stream: http://dash.akamaized.net/dash264/TestCasesIOP41/LastSegmentNumber/1/manifest_last_segment_num.mpd
This patch supports parsing of Supplemental Descriptor with @schemeIdUri set to http://dashif.org/guide-
lines/last-segment-number with the @value set to the last segment number.
Reviewed-by: Steven Liu <lq@onvideo.cn >
2018-03-28 19:52:27 +08:00
1dd7bb9784
avformat/dashdec: Correct spelling mistakes
...
Signed-off-by: Steven Liu <lingjiujianke@gmail.com >
2018-03-15 11:36:20 -08:00
e752da5464
dashdec: Support SegmentTimeline inside Period
...
Reviewed-by: Steven Liu <lq@onvideo.cn >
2018-02-09 10:54:24 +08:00
4e3e8980b5
dashdec: Fix segfault on decoding segment timeline
...
If first_seq_no is not within the bounds of timelines then a segfault
will occur.
This patch removes the use of first_seq_no within the timelines array
It also adds first_seq_no to the value returned by calc_next_seg_no_from_timelines
(which allows for different values of 'startNumber')
Signed-off-by: Brendan McGrath <redmcg@redmandi.dyndns.org >
2018-01-29 10:46:50 +08:00
78e884f3fb
libavformat/dashdec: Fix for ticket 6856 (filename limited to 1024)
2018-01-21 13:56:57 +08:00
7a63da8910
libavformat/dashdec: Fix for ticket 6658 (Dash demuxer segfault)
...
1 Add function 'resolve_content_path' to propagate the baseURL from
upper level nodes.
* if no baseURL is available, the path of mpd file will be set as the baseURL.
2 Remove checking for newly established connection.
3 Establish the communication protocol in each connection rather than
applying one protocol to all connection.
2018-01-21 13:35:30 +08:00
8db4ef3e6d
avformat/dashdec.c: Download dash content with byte range info
2018-01-21 13:27:48 +08:00
1f48c5c067
dashdec: Only free url string if being reused
...
If no representation bandwidth value is set, the url value returned
by get_content_url is corrupt (as it has been freed).
This change ensures the url string is not freed unless it is about
to be reused
Changes since v1:
1 removed the unneeded 'if' statement (as pointed out by Michael Niedermayer
2 added comment to make it clear why the av_free was required
Signed-off-by: Brendan McGrath <redmcg@redmandi.dyndns.org >
2018-01-21 13:20:02 +08:00
777d6c677b
dashdec: Make use of frame rate specified in Representation
...
If the manifest provides this, setting r_frame_rate
avoids warnings regarding frame rate estimation.
2018-01-21 13:14:51 +08:00
57dbabd9c1
dashdec: Support SegmentTemplate inside Period
...
Signed-off-by: Steven Liu <lq@chinaffmpeg.org >
2018-01-14 23:02:26 +08:00
01d74c4055
dashdec: Avoid trying to read any segments beyond the last
...
Signed-off-by: Steven Liu <lq@chinaffmpeg.org >
2018-01-14 23:01:45 +08:00
74b143d81f
dashdec: Correct seeking behaviour
...
dash_read_seek() is called only once to issue a seek
of *all* streams to the specified timestamp. But to
avoid reopening each stream, do a "dry run" for streams
that are in a discarded state.
Signed-off-by: Steven Liu <lq@chinaffmpeg.org >
2018-01-14 22:36:02 +08:00
bb0cc2e7bd
dashdec: Search for segment timeline inside AdaptionSets too
2018-01-14 22:35:31 +08:00
94cc16499f
dashdec: Support for multiple video/audio streams
...
Signed-off-by: Steven Liu <lq@chinaffmpeg.org >
2018-01-14 22:34:43 +08:00
66e551eafb
dashdec: Expose bandwidth and representation ID as metadata
...
The primary goal was making it viable to play YouTube/Vimeo/... videos
using the native demuxer, since mpv currently uses a workaround in form
of Edit Decision Lists (EDL).
Implemented features:
1 Exposing id / bitrate as stream metadata (similar to the HLS demuxer)
2 Support for multiple video and audio streams
3 A few minor parts of the specification that are in use at YouTube
Signed-off-by: Steven Liu <lq@chinaffmpeg.org >
2018-01-14 22:33:57 +08:00
52b9575d4a
lavf/dashdec: Fix several memleaks.
2017-11-12 22:20:22 +08:00
56960ed9c3
Revert "lavf/dashdec: Fix several memleaks."
...
This reverts commit e7fe5e511a
.
2017-11-12 22:19:28 +08:00
1b323c3f9c
avformat/dashdec: use the current DASHContext for the rep_dest
...
fix ticket id: #6820
Signed-off-by: Steven Liu <lq@onvideo.cn >
Tested-by: mrskman
2017-11-10 07:01:45 +08:00