1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2025-01-13 21:28:01 +02:00
Commit Graph

19428 Commits

Author SHA1 Message Date
James Almer
1273bc6d26 avformat/matroskadec: workaround the field_order bug in the Matroska muxer
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-10-13 14:22:07 -03:00
Carl Eugen Hoyos
4d81f9631d lavf/riff: Support Verint NetDVR II ("VSM4") h263 video in asf. 2016-10-13 12:17:48 +02:00
James Almer
7cf0ed32fa avformat: bump minor version after the Matroska field order enum fix
Signed-off-by: James Almer <jamrial@gmail.com>
2016-10-12 19:40:42 -03:00
James Almer
dc781459cc avformat/matroska: fix MatroskaVideoFieldOrder enum values
The spec says

9: Interlaced with bottom field displayed first and top field stored first
14: Interlaced with top field displayed first and bottom field stored first

And avcodec.h states

AV_FIELD_TB,          //< Top coded first, bottom displayed first
AV_FIELD_BT,          //< Bottom coded first, top displayed first

Reviewed-by: Dave Rice <dave@dericed.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-10-12 18:26:22 -03:00
Carl Eugen Hoyos
fe8959bbec lavf/riffenc: Always write unexpected channel_mask.
Allows to write arbitrary channel masks also for 16bit 48kHz pcm.
2016-10-12 12:34:48 +02:00
James Almer
8063978bfc avformat/matroskaenc: don't write a FlagInterlaced element if it would write the default value
The spec says:
"Mandatory elements with a default value may be left out of the file. In the absence
of a mandatory element, the element's default value is used."

Reviewed-by: Hendrik Leppkes <h.leppkes@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-10-11 19:49:19 -03:00
Carl Eugen Hoyos
5781256c01 lavf/matroskaenc: Always write V_QUICKTIME extradata.
Fixes ticket #5872.
2016-10-11 10:07:18 +02:00
Carl Eugen Hoyos
34aa145468 lavf/aiffenc: Write extradata also for qcelp.
Fixes ticket #4009.
2016-10-11 09:52:34 +02:00
Carl Eugen Hoyos
4147d8efe5 lavf/aiffdec: Default to full rate qcelp as QT does.
Fixes decoding of the output file from ticket #4009.
2016-10-11 09:49:35 +02:00
Carl Eugen Hoyos
d0c1b9821a lavf/mxfenc: Do not print a useless error message.
The option d10_channelcount only exists for mxf_d10.
2016-10-11 09:45:37 +02:00
James Almer
c44eae157f avformat/matroskaenc: fix targets for attachment tags
Attachment tags were being written targeting non-existent streams in the
output file.
Also filter filename and mimetype entries, as they are standard elements
in the Attachment master.

Signed-off-by: James Almer <jamrial@gmail.com>
2016-10-10 23:18:36 -03:00
Michael Niedermayer
ed2112fb36 avformat/movenc: Check frame rate in mov_write_uuidprof_tag()
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-10-10 00:58:16 +02:00
Michael Niedermayer
21bffa93a6 avformat/movenc: Switch mov_write_uuidprof_tag() to avg_frame_rate
Using the stream timebase simply overflows
Fix integer overflow in psp framerate computation

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-10-10 00:58:16 +02:00
Michael Niedermayer
987690799d avformat/utils: Update codec_id before using it in the parser init
Fixes assertion failure

Fixes: input.avi

Found-by: 连一汉 <lianyihan@360.cn>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-10-10 00:58:16 +02:00
Moritz Barsnick
468c596a31 lavf: fix typos
Signed-off-by: Moritz Barsnick <barsnick@gmx.net>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-10-09 20:09:00 +02:00
James Almer
c45ba265fc avformat/matroskaenc: fix Tags master on seekable output if there are tags after the last stream duration
The dynamic AVIOContext would get closed pointing to the wrong position
in the buffer.
This is a regression since 650e17d88b.

Reviewed-by: Dave Rice <dave@dericed.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-10-07 16:46:45 -03:00
Michael Niedermayer
572f16e100 avformat/matroskaenc: Fix () error
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-10-07 14:56:53 +02:00
James Almer
711bfb33df avformat/matroskaenc: add an option to disable writting CRC32 elements
Also add missing Changelog entry.

Signed-off-by: James Almer <jamrial@gmail.com>
2016-10-06 18:42:10 -03:00
James Almer
3bcadf8227 avformat/matroskaenc: write a CRC32 element on Info
Finishes implementing ticket #4347

Tested-by: Dave Rice <dave@dericed.com>
Tested-by: Jerome Martinez <jerome@mediaarea.net>
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-10-06 17:16:12 -03:00
James Almer
650e17d88b avformat/matroskaenc: write a CRC32 element on Tags
Implements part of ticket #4347

Tested-by: Dave Rice <dave@dericed.com>
Tested-by: Jerome Martinez <jerome@mediaarea.net>
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-10-06 17:13:59 -03:00
James Almer
4687240d52 avformat/matroskaenc: write a CRC32 element on Attachments
Implements part of ticket #4347

Tested-by: Dave Rice <dave@dericed.com>
Tested-by: Jerome Martinez <jerome@mediaarea.net>
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-10-06 17:10:51 -03:00
James Almer
eccefece61 avformat/matroskaenc: write a CRC32 element on Chapters
Implements part of ticket #4347

Tested-by: Dave Rice <dave@dericed.com>
Tested-by: Jerome Martinez <jerome@mediaarea.net>
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-10-06 17:08:14 -03:00
James Almer
87ce2595de avformat/matroskaenc: write a CRC32 element on Tracks
Implements part of ticket #4347

Tested-by: Dave Rice <dave@dericed.com>
Tested-by: Jerome Martinez <jerome@mediaarea.net>
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-10-06 17:05:03 -03:00
James Almer
79248795d4 avformat/matroskaenc: write a CRC32 element on Cues
Implements part of ticket #4347

Tested-by: Dave Rice <dave@dericed.com>
Tested-by: Jerome Martinez <jerome@mediaarea.net>
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-10-06 17:01:20 -03:00
James Almer
3b189fae73 avformat/matroskaenc: write a CRC32 element on SeekHead
Implements part of ticket #4347

Tested-by: Dave Rice <dave@dericed.com>
Tested-by: Jerome Martinez <jerome@mediaarea.net>
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-10-06 16:59:09 -03:00
James Almer
6724525a15 avformat/matroskaenc: write a CRC32 element on each Cluster
Implements part of ticket #4347

Tested-by: Dave Rice <dave@dericed.com>
Tested-by: Jerome Martinez <jerome@mediaarea.net>
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-10-06 16:54:07 -03:00
James Almer
4e3bdf729a avformat/matroskaenc: always use a dynamic buffer when writting clusters
Tested-by: Dave Rice <dave@dericed.com>
Tested-by: Jerome Martinez <jerome@mediaarea.net>
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-10-06 16:30:56 -03:00
James Almer
d41aeea8a6 avformat/matroskaenc: print debug message with cluster offsets only if the output is seekable
Printing the dynamic buffer offset is useless.

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-10-06 16:30:56 -03:00
James Almer
a4044498f7 avformat/matroskadec: check for more reserved values on some Colour elements
Signed-off-by: James Almer <jamrial@gmail.com>
2016-10-06 13:49:29 -03:00
James Almer
9b8ac526f6 avformat/matroskaenc: don't write an empty Colour master element
Signed-off-by: James Almer <jamrial@gmail.com>
2016-10-06 13:49:10 -03:00
Rodger Combs
a6bce3ca90
lavf/utils: avoid using programs for duration when there's only one
This allows us to be more selective about the streams we derive durations from
(specifically, ignoring text streams with outlier end times) in the common case
2016-10-06 01:36:05 -05:00
Rodger Combs
4c9c4fe8b2
lavf/utils: ignore outlier subtitle and data stream end times as well 2016-10-06 01:36:05 -05:00
Florian Diemer
db4c1bee96 avformat/riffenc: added possibility to set first to ninth audio language for RIFF taged files (e.g. avi files)
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-10-05 23:38:21 +02:00
James Almer
b33369b612 avformat/matroskaenc: don't reserve space for stream duration tags if the output is not seekable
The durations are never written in that situation.

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-10-04 21:19:58 -03:00
James Almer
3cc9d6d382 avformat/matroska: write FlagInterlaced element in WebM
It's listed as supported in both https://www.webmproject.org/docs/container/
and https://matroska.org/technical/specs/index.html

Reviewed-by: Dave Rice <dave@dericed.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-10-04 19:42:55 -03:00
Rodger Combs
14fe54bbfb
lavf/mpegtsenc: fix autobsf when the first NAL is 0x1<XX> bytes 2016-10-04 01:20:20 -05:00
Steven Liu
be1d32492e avformat/hlsenc: support multi level path in m3u8 with filename
before patch:

localhost:osx liuqi$ tree 20160926/
20160926/
└── file-20160909
    └── 26
        └── 16
            └── 15
                ├── 46
                │   ├── 13.ts
                │   ├── 25.ts
                │   ├── 36.ts
                │   ├── 45.ts
                │   └── 54.ts
                └── 47
                    ├── 04.ts
                    ├── 14.ts
                    ├── 24.ts
                    └── 35.ts

6 directories, 9 files
localhost:osx liuqi$ cat out.m3u8
 #EXTM3U
 #EXT-X-VERSION:3
 #EXT-X-TARGETDURATION:12
 #EXT-X-MEDIA-SEQUENCE:0
 #EXTINF:11.360000,
 13.ts
 #EXTINF:10.800000,
 25.ts
 #EXTINF:9.120000,
 36.ts
 #EXTINF:8.760000,
 45.ts
 #EXTINF:10.200000,
 54.ts
 #EXTINF:10.720000,
 04.ts
 #EXTINF:9.600000,
 14.ts
 #EXTINF:10.600000,
 24.ts
 #EXTINF:8.760000,
 35.ts
 #EXT-X-ENDLIST

after patch:

localhost:osx liuqi$ tree 20160926/
20160926/
└── file-20160909
    └── 26
        └── 16
            └── 15
                ├── 46
                │   ├── 13.ts
                │   ├── 25.ts
                │   ├── 36.ts
                │   ├── 45.ts
                │   └── 54.ts
                └── 47
                    ├── 04.ts
                    ├── 14.ts
                    ├── 24.ts
                    └── 35.ts

6 directories, 9 files
localhost:osx liuqi$ cat out.m3u8
 #EXTM3U
 #EXT-X-VERSION:3
 #EXT-X-TARGETDURATION:12
 #EXT-X-MEDIA-SEQUENCE:0
 #EXTINF:11.360000,
 20160926/file-20160909/26/16/15/46/13.ts
 #EXTINF:10.800000,
 20160926/file-20160909/26/16/15/46/25.ts
 #EXTINF:9.120000,
 20160926/file-20160909/26/16/15/46/36.ts
 #EXTINF:8.760000,
 20160926/file-20160909/26/16/15/46/45.ts
 #EXTINF:10.200000,
 20160926/file-20160909/26/16/15/46/54.ts
 #EXTINF:10.720000,
 20160926/file-20160909/26/16/15/47/04.ts
 #EXTINF:9.600000,
 20160926/file-20160909/26/16/15/47/14.ts
 #EXTINF:10.600000,
 20160926/file-20160909/26/16/15/47/24.ts
 #EXTINF:8.760000,
 20160926/file-20160909/26/16/15/47/35.ts
 #EXT-X-ENDLIST

Signed-off-by: Steven Liu <lingjiujianke@gmail.com>
2016-10-04 06:41:53 +08:00
Stephan Holljes
d0be0cbebc lavf/aviobuf.c: Adapt avio_accept and avio_handshake to new AVIOContext API
Signed-off-by: Stephan Holljes <klaxa1337@googlemail.com>
2016-10-03 23:28:48 +02:00
Adriano Pallavicino
f4e692a0e9 lavf/bink.c: fix warning due to misleading indentation
Signed-off-by: Adriano Pallavicino <adriano.pallavicino@gmail.com>
Signed-off-by: Josh de Kock <josh@itanimul.li>
2016-10-03 15:42:27 +01:00
Steven Liu
0d2dd5d96d avformat/hlsenc: support mkdir_p for use_localtime_mkdir
when use use_localtime_mkdir to create multi level dir,
ffmpeg give error message:
ffmpeg -re -i ~/Movies/objectC/facebook.mp4 -c copy -use_localtime 1
 -use_localtime_mkdir 1 -hls_segment_filename '%Y%m%d/file-%Y%m%d/%s.ts'
out.m3u8
error message:
Could not create directory 20160926/file-20160926 with use_localtime_mkdir
add mkdir_p for support the multi level dir

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Tested-by: Zuo Genyu <1515161258@qq.com> (Windows)
Signed-off-by: Steven Liu <lingjiujianke@gmail.com>
2016-10-01 05:37:19 +08:00
Jan Sebechlebsky
81bab1074f avformat/tee: Copy interrupt callback and flags to slave
Copy interrupt callback to slave format context to allow
user to interrupt IO. Copy format flags as well.

Signed-off-by: Jan Sebechlebsky <sebechlebskyjan@gmail.com>
2016-09-29 17:17:26 +02:00
Carl Eugen Hoyos
e84eeca577 lavf/movenc: Put correct display aspect ratio in ARES atom. 2016-09-29 15:41:17 +02:00
Carl Eugen Hoyos
fcce25ee5d lavf/mov: Read display aspect ratio from ares atom also for dnxhd.
Fixes aspect ratio of sample in ticket #2125.
Fixes aspect ratio of sample in ticket #5325.
2016-09-29 15:29:03 +02:00
Jan Ekström
cc725ebe48 movenc: Add support for writing language codes into ISML manifests
Streaming servers appear to ignore all other language metadata.

Signed-off-by: Jan Ekström <jeebjp@gmail.com>
Signed-off-by: Josh de Kock <josh@itanimul.li>
2016-09-29 10:32:03 +01:00
Sasi Inguva
dba2db6c0e lavf/mov.c: Make audio timestamps strictly monotonically increasing inside an edit list.
Fixes gapless decoding. Adjust skip_samples field correctly in case of DISCARDed audio frames.

Signed-off-by: Sasi Inguva <isasi@google.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-09-29 02:25:41 +02:00
Jan Ekström
6c10f8fe76 movenc: use similar logic to DASH when writing bit rate to ISML
This way, in case of bit rate not being set, max_bitrate will be
used instead. This enables, for example, re-using max_bitrate
information from the input or doing transcoding with a rate
control mode that is not bit rate based.

Signed-off-by: Jan Ekström <jeebjp@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-09-28 23:45:11 +02:00
raymondzheng1412@gmail.com
2366efce3c avformat/concatdec: don't call open_file when seek position within a file 2016-09-28 20:31:22 +02:00
Sylvain Laurent
58776ccbdb lavf/mpegtsenc: Set min PID for data pkt to 0x0010.
Fixes ticket #1673.
2016-09-28 17:29:11 +02:00
Michael Niedermayer
2679ad4773 avformat/avidec: Check nb_streams in read_gab2_sub()
Fixes null pointer dereference
Fixes: 1/null_point.avi

Found-by: 连一汉 <lianyihan@360.cn>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-09-28 16:46:24 +02:00
Michael Niedermayer
14bac7e00d avformat/avidec: Remove ancient assert
This assert can with crafted files fail, a warning is already printed
for this case.

Fixes assertion failure
Fixes:1/assert.avi

Found-by: 连一汉 <lianyihan@360.cn>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-09-28 16:46:24 +02:00