Commit Graph

188 Commits

Author SHA1 Message Date
David Conrad 7a2a484081 Write the first seekhead if writing to a stream, we won't be able to seek
back and write it at the end

Originally committed as revision 22198 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-04 08:53:04 +00:00
David Conrad 2529bb3019 Attempt seeking to write EBML master sizes even if streamed
Most EBML masters are much smaller than IO_BUFFER_SIZE and thus the size
can be updated. This makes parsing the resulting files easier.

Originally committed as revision 22197 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-04 08:53:00 +00:00
Anton Khirnov 690b412657 matroskaenc: use "title" tag instead of "description" in track title.
Patch by Anton Khirnov < whyskas at gmail >

Originally committed as revision 22187 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-03 23:27:34 +00:00
Rafaël Carré e380b9182b mkvenc: Write TrackTimecodeScale
patch by Rafael (dot) Carre (a) gmail (d) com

Originally committed as revision 21372 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-21 20:49:27 +00:00
Anton Khirnov 2bd0758efa matroskaenc: Add support for writing chapters.
patch by Anton Khirnov  wyskas _at_ gmail _dot_ com

Originally committed as revision 20277 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-18 12:17:01 +00:00
Daniel Verkamp 1a40491ef2 Add ff_ prefixes to exported symbols in libavformat/riff.h.
patch by Daniel Verkamp, aniel drv nu

Originally committed as revision 19254 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-22 23:09:34 +00:00
Justin Ruggles 2578326f13 Share the function to write a raw FLAC header and use it in the Matroska
muxer.

Originally committed as revision 17606 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-26 02:41:53 +00:00
Justin Ruggles 59c6178a54 Use a shared function to validate FLAC extradata.
Originally committed as revision 17602 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-26 02:29:24 +00:00
Michael Niedermayer 2591821213 Add AVFMT_VARIABLE_FPS to specify which muxers do not need duplicated frames.
Originally committed as revision 17554 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-24 15:04:18 +00:00
Aurelien Jacobs 5e56599878 matroskaenc: use new metadata API
Originally committed as revision 17336 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-15 16:53:05 +00:00
Aurelien Jacobs 5f8bae8d5c matroskaenc: correctly handle h264 streams with 3 bytes nal startcodes
This implies using ff_avc_parse_nal_units_buf instead of ff_avc_parse_nal_units
because with 3 bytes startcodes the parsed packet size will change, and the
size must be written before the packet content.

Originally committed as revision 16690 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-20 00:52:12 +00:00
David Conrad 3194b00479 Cosmetics: indent
Originally committed as revision 16652 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-17 04:31:42 +00:00
David Conrad 1c3db2aa50 Treat disposition==0 as undefined and don't write the default flag
Originally committed as revision 16651 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-17 04:31:14 +00:00
David Conrad 8a86aaa3b2 Flush the buffer after writing the header and when done with writing the files
Fixes writing small (~4kb) files.

Originally committed as revision 16650 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-17 04:30:36 +00:00
Luca Abeni ca93bc175a Reindent after last commit
Originally committed as revision 16617 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-15 14:07:59 +00:00
Luca Abeni 0a63a676ec Do not reallocate AVPacket's data when muxing a packet
Originally committed as revision 16616 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-15 14:03:07 +00:00
Diego Biurrun 6a5d31ac25 Fix build: Add intreadwrite.h and bswap.h #includes where necessary.
Originally committed as revision 16556 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-11 22:19:48 +00:00
Aurelien Jacobs abce34d979 matroskaenc: require global header
fixes issue696

Originally committed as revision 15667 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-22 21:14:42 +00:00
Aurelien Jacobs b7f4e76d3d matroskaenc: correct muxing of ASS packets
- split packets to store one ASS event line per Matroska block
 - reformat ASS events to Matroska modified format
 - extract display duration for ASS events to store as Matroska block duration

Originally committed as revision 15561 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-04 22:57:56 +00:00
Aurelien Jacobs 291902c274 matroskaenc: use correct EBML ID for block duration
Originally committed as revision 15560 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-04 22:47:10 +00:00
Aurelien Jacobs 1bfbe8ff9d matroskaenc: pass the packet size directly as parameter of mkv_blockgroup_size()
Originally committed as revision 15559 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-04 22:44:50 +00:00
Aurelien Jacobs 8401c51407 matroskaenc: remove useless mkv_block_size() function
Originally committed as revision 15558 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-04 22:41:58 +00:00
Diego Biurrun bc5c918ea8 Remove offset_t typedef and use int64_t directly instead.
The name offset_t is easily confused with the standard off_t type and
*_t is POSIX reserved namespace if any POSIX header is included.

Originally committed as revision 15533 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-03 10:16:29 +00:00
Aurelien Jacobs 62c24705c8 matroska: subtitle display duration must be stored in pkt->convergence_duration
Originally committed as revision 15206 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-04 23:08:19 +00:00
Reimar Döffinger c18545929e Change codec_tag type from const struct AVCodecTag ** to const struct AVCodecTag * const *
Originally committed as revision 14947 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-24 16:51:50 +00:00
Aurelien Jacobs 5972945197 convert every muxer/demuxer to write/read sample_aspect_ratio from/to
the corresponding AVStream instead of AVCodecContext

Originally committed as revision 14933 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-23 23:43:20 +00:00
Diego Biurrun 5968d2dd1e misc spelling/grammar fixes
Originally committed as revision 14616 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-05 08:28:57 +00:00
Aurelien Jacobs cc8be50637 matroska: expand useless define for MS compat codec id strings
Originally committed as revision 14607 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-05 00:42:49 +00:00
Aurelien Jacobs f009e36f75 matroska: add support for V_QUICKTIME track type
Originally committed as revision 14429 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-27 15:11:04 +00:00
Stefano Sabatini bde15e74de Make long_names in lavf/lavdev optional depending on CONFIG_SMALL.
patch by Stefano Sabatini, stefano.sabatini-lala poste.it
along with some spelling/consistency fixes for the long names by me

Originally committed as revision 13649 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-03 16:20:54 +00:00
Diego Biurrun 245976da2a Use full path for #includes from another directory.
Originally committed as revision 13098 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-05-09 11:56:36 +00:00
Justin Ruggles 8a0684f4c4 fix encoding of flac private data
Originally committed as revision 13030 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-05-01 22:04:17 +00:00
Aurelien Jacobs 7bfacd4e75 use common aac sample rate tables
Originally committed as revision 12671 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-02 21:41:48 +00:00
Evgeniy Stepanov 90c2295b24 Add 'disposition' bitfield to AVStream and use it for both muxing and demuxing
of matroska and nut.

Originally committed as revision 12358 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-03-07 19:25:09 +00:00
Aurelien Jacobs 73260a11e1 simplification proposed by Rich
Originally committed as revision 12280 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-03-01 00:26:19 +00:00
Aurelien Jacobs 0b247953c8 makes really sure that no undefined behavior can happen
Originally committed as revision 12258 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-02-27 00:53:34 +00:00
Aurelien Jacobs d597655f77 Avoid infinite loop.
uint64_t >> 64 is an undefined operation

Originally committed as revision 12253 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-02-26 22:35:07 +00:00
Michael Niedermayer 2024c2262b Write 0 instead of seeking forward (and leaving bytes uninitalized),
fixes odd regression test failure i had.

Originally committed as revision 11512 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-01-12 00:15:05 +00:00
Aurelien Jacobs 9ab3f71b60 add a ff_ prefix to newly exported functions from avc.c
Originally committed as revision 11511 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-01-11 23:33:32 +00:00
Aurelien Jacobs e609806ec6 Matroska muxer needs to format all NAL units, not only extradata.
Originally committed as revision 11510 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-01-11 23:21:22 +00:00
Aurelien Jacobs aacc5f227a Use the isom avcc formatting for h264 extradata in matroska.
Originally committed as revision 11499 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-01-11 01:32:45 +00:00
Björn Axelsson 899681cd1d Use dynamically allocated ByteIOContext in AVFormatContext
patch by: Björn Axelsson, bjorn d axelsson a intinor d se
thread: [PATCH] Remove static ByteIOContexts, 06 nov 2007

Originally committed as revision 11071 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-11-21 07:41:00 +00:00
Diego Biurrun bf898960a7 spelling/wording nits in some Doxygen comments
Originally committed as revision 10417 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 20:31:40 +00:00
David Conrad ab332d0133 Grammar nits
Originally committed as revision 10388 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:26:11 +00:00
David Conrad b62a33d01b Always use AVFormatContext for av_log messages
Originally committed as revision 10387 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:26:09 +00:00
David Conrad 0f651e8cf3 Rename ebml size functions to indicate that they can be used for more kinds of numbers
Originally committed as revision 10386 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:26:07 +00:00
David Conrad 8b65b9a313 We shouldn't be passing in sizes larger than 2^56-2, so use an assert
Originally committed as revision 10385 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:26:04 +00:00
David Conrad e5c29287cf Indentation
Originally committed as revision 10384 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:26:03 +00:00
David Conrad ac9e1177b3 Don't seek when streamed
Originally committed as revision 10383 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:26:00 +00:00
David Conrad c301d5ae0a Get rid of useless braces
Originally committed as revision 10382 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:25:58 +00:00
David Conrad 7e33d3fee4 Indent
Originally committed as revision 10381 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:25:56 +00:00
David Conrad dc4a9f6737 Match the behaviour betwen the bmp and wav codec tag lookups
Originally committed as revision 10380 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:25:54 +00:00
David Conrad 46d18a88e1 Write codecprivate to a dynamic buffer so that seeking isn't required
Originally committed as revision 10379 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:25:52 +00:00
David Conrad 5c559894e1 Move writing codec private element to its own function
Originally committed as revision 10378 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:25:49 +00:00
David Conrad 211783a50a Cosmetics
Originally committed as revision 10377 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:25:46 +00:00
David Conrad 91ca969082 Use num_entries directly rather than mixing it with a local copy
Originally committed as revision 10376 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:25:44 +00:00
David Conrad e3cd80cdac Doxygenify comments
Originally committed as revision 10375 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:25:42 +00:00
David Conrad 7f8582dfc6 Make sure that the calculated duration doesn't decrease
Originally committed as revision 10374 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:25:40 +00:00
David Conrad 8ffc5f9e92 Split some really long lines
Originally committed as revision 10373 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:25:38 +00:00
David Conrad 3967eb5260 Correct message
Originally committed as revision 10372 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:25:35 +00:00
David Conrad 9e2a3e2262 Always check the return of mkv_add_seekhead_entry
Originally committed as revision 10371 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:25:34 +00:00
David Conrad 6d588ecd76 Pass the returned error code of functions up
Originally committed as revision 10370 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:25:32 +00:00
David Conrad c35de1a131 Check that the seekheads were created
Originally committed as revision 10369 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:25:29 +00:00
David Conrad 0b38843a6c Return AVERROR(ENOMEM) when appropriate
Originally committed as revision 10368 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:25:27 +00:00
David Conrad 47e08c5860 Indentation
Originally committed as revision 10367 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:25:24 +00:00
David Conrad 0580a12256 Use assert for conditions that must be true
Originally committed as revision 10366 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:25:22 +00:00
David Conrad 203cce9a92 Simplify
Originally committed as revision 10365 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:25:20 +00:00
David Conrad 8cf3bb2674 Grammar nits
Originally committed as revision 10364 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:25:18 +00:00
David Conrad cfde5d18f5 Break long comments
Originally committed as revision 10363 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:25:16 +00:00
David Conrad a6da1aa057 Use sample format for bit depth if av_get_bits_per_sample() doesn't give one
Originally committed as revision 10362 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:25:14 +00:00
David Conrad 8eb1915395 Calculate and store DAR rather than SAR
Originally committed as revision 10361 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:25:07 +00:00
David Conrad 5045da831b Clarify comments
Originally committed as revision 10360 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:25:04 +00:00
David Conrad 5b66fc16af Use PRIu64/PRId64
Originally committed as revision 10359 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:24:58 +00:00
David Conrad baf71dca28 Calculate the size of key EBML master elements beforehand so only just enough size is reserved for the size
Originally committed as revision 10358 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:24:56 +00:00
David Conrad cce800b456 Use cluster_pos when checking cluster position
Originally committed as revision 10357 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:24:53 +00:00
David Conrad f0e9f44271 Modify put_ebml_size() so that the bytes parameter is exact rather than minimum
Originally committed as revision 10356 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:24:50 +00:00
David Conrad c635497cb4 Set default subtitle_codec to CODEC_ID_TEXT
Originally committed as revision 10355 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:24:48 +00:00
David Conrad ddf1646729 Simplify
Originally committed as revision 10354 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:24:44 +00:00
David Conrad 1c73478c8e Move calculating the bytes needed to represent a size in EBML to its own function
Originally committed as revision 10353 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:24:42 +00:00
David Conrad 9f38fd7efa Make a byte always mean a byte
Originally committed as revision 10352 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:24:39 +00:00
David Conrad 432adc130c Simplify put_ebml_id()
Originally committed as revision 10351 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:24:36 +00:00
David Conrad 22ccb69a7f Move ebml_id_size()
Originally committed as revision 10350 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:24:34 +00:00
David Conrad ec8f4ad909 Correct handling of smaller unknown sizes
Originally committed as revision 10349 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:24:31 +00:00
David Conrad 541d443c03 Use a MD5 hash of some frames to write the segment uid
Originally committed as revision 10348 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:24:29 +00:00
David Conrad f095a17423 Revert using the time to generate the segment uid
Originally committed as revision 10347 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:24:27 +00:00
David Conrad 57848e9abd Doxygenize some comments
Originally committed as revision 10346 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:24:25 +00:00
David Conrad fd150eb629 Set the language to undefined if no language specified
Originally committed as revision 10345 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:24:22 +00:00
David Conrad 55c151efb3 Add mka muxer
Originally committed as revision 10344 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:24:19 +00:00
David Conrad c1f5aa2186 Add some debug logging
Originally committed as revision 10343 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:24:17 +00:00
David Conrad 7332adddae Write the display size elements
Originally committed as revision 10342 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:24:15 +00:00
David Conrad d1a8d959fd Revert writing the file creation date
Originally committed as revision 10341 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:24:12 +00:00
David Conrad 409533622e Codec Private should be correct for all but Real codecs now
Originally committed as revision 10340 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:24:10 +00:00
David Conrad 8a39497c13 Write FLAC codec private correctly
Originally committed as revision 10339 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:24:08 +00:00
David Conrad 86be66378b Move writing Xiph-style sizes to its own function
Originally committed as revision 10338 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:24:06 +00:00
David Conrad 4b8f58eea5 Write segment UID
Originally committed as revision 10337 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:24:03 +00:00
David Conrad 80380a0f71 Write the creation time
Originally committed as revision 10336 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:24:01 +00:00
David Conrad 5fd35c6e00 Cosmetics
Originally committed as revision 10335 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:23:59 +00:00
David Conrad 440e090121 Using LIBAVFORMAT_IDENT for both muxing and writing app is good enough
Originally committed as revision 10334 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:23:57 +00:00
David Conrad dcbfe3f099 Floats aren't used enough to justify writing any with single precision
Originally committed as revision 10333 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:23:55 +00:00
David Conrad 9245c5ca08 Simplify
Originally committed as revision 10332 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 00:23:53 +00:00