summaryrefslogtreecommitdiff
path: root/libavformat/movenc.c
Commit message (Collapse)AuthorAge
* avopt: Store defaults for AV_OPT_TYPE_FLAGS in the i64 union memberMartin Storsjö2012-09-04
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* avopt: Store defaults for AV_OPT_TYPE_CONST in the i64 union memberMartin Storsjö2012-09-04
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* Replace all CODEC_ID_* with AV_CODEC_ID_*Anton Khirnov2012-08-07
|
* Improve descriptiveness of a number of codec and container long namesDiego Biurrun2012-07-30
|
* avformat: Drop pointless "format" from container long namesDiego Biurrun2012-07-30
|
* lavf: use conditional notation for default codec in muxer declarations.Ronald S. Bultje2012-07-22
| | | | | This removes the use of macro nesting in these code constructs, which makes it easier to parse in pre-processors.
* rtsp: remove terminal comma in FF_RTP_FLAG_OPTS macro.Ronald S. Bultje2012-07-21
| | | | | | | This makes usage of the macro look more natural when used with array entries. Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
* mov: Support muxing/demuxing iLBCMartin Storsjö2012-06-18
| | | | | | | The packet size, signalled via block_align, has to be passed via the container. Signed-off-by: Martin Storsjö <martin@martin.st>
* movenc: Write chan atom for all audio tracks in mov mode movies.Alex Converse2012-06-04
|
* movenc: Don't write the 'wave' atom or its child 'enda' for lpcm audio.Alex Converse2012-05-25
| | | | | It's left over from stsd v0. QuickTime 7 no longer writes 'wave' or 'enda' when 'lpcm' is the audio tag.
* movenc: Support high sample rates in isomedia formats by setting the sample ↵Alex Converse2012-04-20
| | | | | | rate field in stsd to 0. Libisomediafile appears to always set this field to zero.
* movenc: Remove a dead initializationAlex Converse2012-04-12
|
* movenc: small refactor mov_write_packetLuca Barbato2012-04-11
| | | | | | | | | | Share the formerly internal write_packet with the hinter and move the fragment flush logic to the user facing one since it is not concerned about movtrack-only streams. Fixes bug #263 Signed-off-by: Martin Storsjö <martin@martin.st>
* movenc: remove redundant checkLuca Barbato2012-04-11
| | | | | | The proper check is already in mov_write_header. Signed-off-by: Martin Storsjö <martin@martin.st>
* cosmetics: Align muxer/demuxer declarationsMartin Storsjö2012-04-06
| | | | | | | Also add missing trailing commas, break long codec_tag lines and add spaces in codec_tag declarations. Signed-off-by: Martin Storsjö <martin@martin.st>
* Replace memset(0) by zero initializations.Diego Biurrun2012-03-28
| | | | Also remove one pointless zero initialization in rangecoder.c.
* movenc: Merge if statementsMartin Storsjö2012-03-25
| | | | | | | | This isn't exactly equivalent with the earlier code for codecs other than H264 and VC1, but those are two only codecs supported by this codepath anyway, and it simplifies it a bit. Signed-off-by: Martin Storsjö <martin@martin.st>
* avc: Add a function for converting mp4 style extradata to annex bMartin Storsjö2012-03-24
| | | | | | | Make movenc use this function instead of the current custom conversion function. Signed-off-by: Martin Storsjö <martin@martin.st>
* movenc: Add a min_frag_duration optionMartin Storsjö2012-03-20
| | | | | | | | The other fragmentation options (frag_duration, frag_size and frag_keyframe) are combined with OR, cutting fragments at the first of the conditions being fulfilled. Signed-off-by: Martin Storsjö <martin@martin.st>
* movenc: use timestamps instead of frame_size for samples-per-packetJustin Ruggles2012-02-27
| | | | | | For encoding, AVCodecContext.frame_size is the number of input samples to send to the encoder and does not necessarily correspond directly to the timestamps of the output packets.
* movenc: use the first cluster duration as the tfhd default durationJustin Ruggles2012-02-27
|
* movenc: factorize calculation of cluster duration into a separate functionJustin Ruggles2012-02-27
|
* rtpenc: Move the trailing comma into FF_RTP_FLAG_OPTSMartin Storsjö2012-02-23
| | | | | | This simplifies adding more flags to the macro. Signed-off-by: Martin Storsjö <martin@martin.st>
* movenc: Buffer the mdat for the initial moov fragment, tooMartin Storsjö2012-02-22
| | | | | | | | | | | | This allows writing QuickTime-compatible fragmented mp4 (with a non-empty moov atom) to a non-seekable output. This buffers the mdat for the initial fragment just as it does for all normal fragments, too. Previously, the resulting atom structure was mdat,moov, moof,mdat ..., while it now is moov,mdat, moof,mdat. Signed-off-by: Martin Storsjö <martin@martin.st>
* mov: Use defines for sample flags in fragmentsMartin Storsjö2012-02-18
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* mov: Use defines for trun flagsMartin Storsjö2012-02-18
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* mov: Use defines for tfhd flagsMartin Storsjö2012-02-18
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* movenc: Write the unknown duration as 64 bit fields in ismvMartin Storsjö2012-02-18
| | | | | | | This is required for the files to play back properly in windows media player. Signed-off-by: Martin Storsjö <martin@martin.st>
* movenc: Write track durations with all bits set if duration is unknownMartin Storsjö2012-02-18
| | | | | | | | According to 14496-12, the duration should be all 1s if the duration is unknown. This is the case if writing a moov atom without any samples described in it (e.g. as in ismv files). Signed-off-by: Martin Storsjö <martin@martin.st>
* movenc: Don't set a default sample duration when creating ismvMartin Storsjö2012-02-16
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* libavformat: Add an ff_ prefix to some lavf internal symbolsMartin Storsjö2012-02-15
| | | | | | | | | | Prefix the functions/tables brktimegm, pcm_read_seek, dv_offset_reset, voc_get_packet, codec_movaudio_tags, codec_movvideo_tags. After this, lavf has no global symbols without the proper prefix. Signed-off-by: Martin Storsjö <martin@martin.st>
* movenc: Support muxing VC1Martin Storsjö2012-02-14
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* movenc: Support muxing wmapro in ismv/ismaMartin Storsjö2012-02-13
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* movenc: cosmetics: Get rid of camelCase identifiersMartin Storsjö2012-01-30
| | | | | | | Also add spacing around operators on touched lines, and split one line to match the common style. Signed-off-by: Martin Storsjö <martin@martin.st>
* movenc: Allow writing to a non-seekable output if using empty moovMartin Storsjö2012-01-27
| | | | | | | | | | In this mode, no seeks will be done except for within moov/moof fragments, which should fit within the AVIOContext buffer. This allows pushing live smooth streaming format data to a live publishing point on IIS over http. Signed-off-by: Martin Storsjö <martin@martin.st>
* movenc: Support adding isml (smooth streaming live) metadataMartin Storsjö2012-01-27
| | | | | | | This metadata is required for pushing a live stream to an IIS publishing point. Signed-off-by: Martin Storsjö <martin@martin.st>
* lavf: remove disabled FF_API_TIMESTAMP cruftAnton Khirnov2012-01-27
|
* lavf: remove disabled FF_API_FLAG_RTP_HINT cruftAnton Khirnov2012-01-27
|
* movenc: Don't require frame_size to be set for modes other than movMartin Storsjö2012-01-25
| | | | | | | | | The field frame_size isn't written to the output anywhere except than in mov. This facilitates stream copy from formats that don't set frame_size. Signed-off-by: Martin Storsjö <martin@martin.st>
* movenc: Reindent a blockMartin Storsjö2012-01-25
| | | | | | | Also add some space around operators and wrap a comment that extends past the 80 char "limit"/guideline. Signed-off-by: Martin Storsjö <martin@martin.st>
* movenc: Write the sample rate instead of time scale in the stsd atomMartin Storsjö2012-01-25
| | | | | | | For ismv/isma, the time scale might not be the same as the sample rate. Signed-off-by: Martin Storsjö <martin@martin.st>
* movenc: Add a separate ismv/isma (smooth streaming) muxerMartin Storsjö2012-01-25
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* movenc: Allow the caller to decide on fragmentationMartin Storsjö2012-01-25
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* movenc: Add support for writing fragmented mov filesMartin Storsjö2012-01-25
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* movenc: Add a separate start_ptsMartin Storsjö2012-01-25
| | | | | | | | This fixes calculation of trackDuration if the MOVIentry array is cleared. This is required by the fragmentation support in the next patch. Signed-off-by: Martin Storsjö <martin@martin.st>
* movenc: Don't store a nonzero creation time if nothing was set by the callerMartin Storsjö2012-01-10
| | | | | | | | | If the creation time is stored in the file as a zero, the mov demuxer skips exporting the creation time. Currently, files muxed without a creation time get demuxed with a Jan 1st 1970 creation timestamp. Signed-off-by: Martin Storsjö <martin@martin.st>
* mov: Don't stick the QuickTime field ordering atom in extradata.Alex Converse2011-12-21
| | | | | | The 'fiel' atoms can be found in H.264 tracks clobbering the extradata. MJPEG supports non field based extradata, and this data should be preserved when copying.
* movenc: Rudimentary IODs support.Alex Converse2011-12-15
|
* lavu: replace int/float punning functionsMans Rullgard2011-12-11
| | | | | | | | | | | | | | | | | | The existing functions defined in intfloat_readwrite.[ch] are both slow and incorrect (infinities are not handled). This introduces a new header with fast, inline conversion functions using direct union punning assuming an IEEE-754 system, an assumption already made throughout the code. The one use of Intel/Motorola extended 80-bit format is replaced by simpler code sufficient under the present constraints (positive normal values). The old functions are marked deprecated and retained for compatibility. Signed-off-by: Mans Rullgard <mans@mansr.com>
* Remove extraneous semicolonsMans Rullgard2011-12-11
| | | | | | These semicolons cause invalid empty top-level declarations. Signed-off-by: Mans Rullgard <mans@mansr.com>