Commit Graph

116 Commits

Author SHA1 Message Date
Clément Bœsch 43ecec0f03 avformat: use AV_OPT_TYPE_BOOL in a bunch of places 2015-12-04 15:43:33 +01:00
Hendrik Leppkes 7f5af80ba4 Merge commit 'ce70f28a1732c74a9cd7fec2d56178750bd6e457'
* commit 'ce70f28a1732c74a9cd7fec2d56178750bd6e457':
  avpacket: Replace av_free_packet with av_packet_unref

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2015-10-27 14:28:56 +01:00
Luca Barbato ce70f28a17 avpacket: Replace av_free_packet with av_packet_unref
`av_packet_unref` matches the AVFrame ref-counted API and can be used as
a drop in replacement.

Deprecate `av_free_packet`.
2015-10-26 18:00:55 +01:00
Florent Le Coz 2e0935965b Drop the unofficial extension prefix for MPEG and MPEG-TS formats
As per the RFCs:
http://tools.ietf.org/html/rfc3555#page-38
http://tools.ietf.org/html/rfc3003

CC: libav-stable@libav.org
2014-12-02 15:28:22 +00:00
Benoit Fouet dc351e1381 id3v2: prefer TDRC for date over TDRL.
TDRL is what we used as a replacement of TYER, and, according to
http://id3.org/id3v2.4.0-changes :
    TYER - Year
        This frame is replaced by the TDRC frame, 'Recording time'
        [F:4.2.5].
So change TDRL usages to TDRC.

Fixes ticket #3694

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-11-04 14:11:53 +01:00
Michael Niedermayer 2dbee1a393 avformat/mp3enc: Squeeze our mp3 encoder tag into the 9byte shortname instead of randomly truncating
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-10-24 16:15:25 +02:00
Michael Niedermayer e744e9a305 Merge commit 'ef363ebd596da18f889a7d4845023a23dfac84c9'
* commit 'ef363ebd596da18f889a7d4845023a23dfac84c9':
  mp3enc: write full LAME frame

Conflicts:
	libavformat/mp3enc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-10-24 15:30:12 +02:00
Anton Khirnov ef363ebd59 mp3enc: write full LAME frame
Most importantly, it contains the encoder delay and replaygain info.
2014-10-24 09:03:16 +02:00
Michael Niedermayer d58fa9482e avformat/mp3enc: use initial_padding
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-10-14 03:53:17 +02:00
James Almer d3e9bee6f7 lavf/mp3enc: don't abort if audio packets can't be buffered
Instead skip the picture streams and flush the queued audio packets.
Should address ticket #3851.

Signed-off-by: James Almer <jamrial@gmail.com>
2014-08-27 13:51:34 -03:00
Michael Niedermayer ca350378de Merge commit 'f2f2e7627f0c878d13275af5d166ec5932665e28'
* commit 'f2f2e7627f0c878d13275af5d166ec5932665e28':
  Check mp3 header before calling avpriv_mpegaudio_decode_header().

Conflicts:
	libavformat/mp3enc.c

See: 2dd0da787c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-23 03:34:13 +02:00
Justin Ruggles f2f2e7627f Check mp3 header before calling avpriv_mpegaudio_decode_header().
As indicated in the function documentation, the header MUST be
checked prior to calling it because no consistency check is done
there.

CC:libav-stable@libav.org
2014-06-22 20:31:58 -04:00
Florent Le Coz fdcb2873e1 Fix the mime types for MPEG and MPEG-TS formats
As per the RFCs:
http://tools.ietf.org/html/rfc3555#page-38
http://tools.ietf.org/html/rfc3003
2014-05-22 23:34:59 +02:00
Michael Niedermayer fab50573bb avformat/mp3enc: switch to AVFMT_FLAG_BITEXACT
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-18 04:03:45 +02:00
Michael Niedermayer eccec20397 avformat/mp3enc: drop redundant and uninitialized variable
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-13 20:03:24 +02:00
Michael Niedermayer 571d2ffa47 Merge commit '617a1a98a6be3e59db6fbfc21afab2fb9a049c03'
* commit '617a1a98a6be3e59db6fbfc21afab2fb9a049c03':
  mp3enc: Properly write bitrate value in XING header

Conflicts:
	libavformat/mp3enc.c

See: 40176fc314
See: d62bf5d4e7
See: various others
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-12 21:26:20 +02:00
Michael Niedermayer 617a1a98a6 mp3enc: Properly write bitrate value in XING header
Instead of using a fixed bitrate_idx, calculate a matching bitrate for
the XING header.

Using a fixed bitrate_idx causes tools such as file(1) and mediainfo(1)
to report wrong bitrate and bitrate mode when using CBR.

Bug-Id: https://bugs.debian.org/736088

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2014-04-12 13:29:55 +02:00
Michael Niedermayer d003a0cd2e avformat/mp3enc: use av_copy_packet()
Fixes double free
Fixes Ticket3476

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-22 01:26:48 +01:00
James Darnley 0de03fd6a1 lavf/id3v2enc: use metadata_header_padding
As with the change to flacenc this allows the user to control the amount
of padding they want added to the file.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-24 22:50:06 +01:00
Michael Niedermayer 58770db2ae Merge commit '33018907bd07b34e0e70d5ae12097265eb3734d7'
* commit '33018907bd07b34e0e70d5ae12097265eb3734d7':
  mp3enc: allow omitting the id3v2 header with -id3v2_version 0

Conflicts:
	doc/muxers.texi
	libavformat/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-17 15:34:24 +01:00
Michael Niedermayer 5049b6a1fe Merge commit 'f9cc6883a4e5cf72cbfa21d17e1908a2a432f6bd'
* commit 'f9cc6883a4e5cf72cbfa21d17e1908a2a432f6bd':
  mp3enc: add an option for disabling the Xing frame.

Conflicts:
	doc/muxers.texi
	libavformat/mp3enc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-17 15:23:11 +01:00
Anton Khirnov 33018907bd mp3enc: allow omitting the id3v2 header with -id3v2_version 0 2014-01-17 10:30:45 +01:00
Anton Khirnov f9cc6883a4 mp3enc: add an option for disabling the Xing frame. 2014-01-17 10:30:45 +01:00
Michael Niedermayer 49515cb840 avformat: remove duplicate includes
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-21 15:36:33 +02:00
Michael Niedermayer 44fb7de8ee Merge commit 'c0779a67e85df856904ee6fab760c4233d4c2be5'
* commit 'c0779a67e85df856904ee6fab760c4233d4c2be5':
  mp3: add .mpa extension

Conflicts:
	libavformat/mp3dec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-12 15:02:23 +02:00
Vittorio Giovara c0779a67e8 mp3: add .mpa extension
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2013-09-12 13:16:15 +02:00
Michael Niedermayer 2653e12520 Merge commit '1afddbe59e96af75f1c07605afc95615569f388f'
* commit '1afddbe59e96af75f1c07605afc95615569f388f':
  avpacket: use AVBuffer to allow refcounting the packets.

Conflicts:
	libavcodec/avpacket.c
	libavcodec/utils.c
	libavdevice/v4l2.c
	libavformat/avidec.c
	libavformat/flacdec.c
	libavformat/id3v2.c
	libavformat/matroskaenc.c
	libavformat/mux.c
	libavformat/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-08 19:12:03 +01:00
Anton Khirnov 1afddbe59e avpacket: use AVBuffer to allow refcounting the packets.
This will allow us to avoid copying the packets in many cases.

This breaks ABI.
2013-03-08 07:33:45 +01:00
Clément Bœsch 2dd0da787c lavf/mp3enc: make sure the header is valid before writing audio pkt.
An invalid header can lead avpriv_mpegaudio_decode_header() to overread
and/or div by zero.
2012-11-16 14:11:08 +01:00
Michael Niedermayer cb65b32c97 mp3enc: remove unneeded null ptr check
Fixes: CID733746
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-16 20:27:16 +02:00
Michael Niedermayer d31098113f mp3enc: fix signed C99 overflow
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-14 05:52:50 +02:00
Michael Niedermayer 744e4429cf mp3enc: merge mp2/mp3_write_trailer
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-16 14:37:50 +02:00
Michael Niedermayer 197bbcf44c mp3enc: move mp3_update_xing() down
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-16 14:31:58 +02:00
Michael Niedermayer f276a490f0 Merge commit '3f7fd59d151a2773f0e2e93e56b6b13ec6e5334b'
* commit '3f7fd59d151a2773f0e2e93e56b6b13ec6e5334b':
  avformat: fix typo in avformat_close_input
  mp3enc: write Xing TOC
  mp3enc: support MPEG-2 and MPEG-2.5 in Xing header.
  mp3enc: downgrade some errors in writing Xing frame to warnings
  lavf: flush the output AVIOContext in av_write_trailer().
  lavf: cosmetics, reformat av_write_trailer().
  avio: flush the internal buffer in avio_close()
  Enhance doc on asyncts audiofilter
  cmdutils: avoid setting data pointers to invalid values in alloc_buffer()
  libavcodec: remove av_destruct_packet_nofree()

Conflicts:
	libavcodec/avpacket.c
	libavformat/mp3enc.c
	libavformat/nutenc.c
	libavformat/utils.c
	libavformat/version.h
	tests/ref/lavf/voc
	tests/ref/lavf/voc_s16

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-16 14:24:11 +02:00
Anton Khirnov 7040c9fac2 mp3enc: write Xing TOC
Based on the code by:
Peter Belkner <pbelkner@snafu.de>,
Michael Niedermayer <michaelni@gmx.at>,
Clément Bœsch <clement.boesch@smartjog.com>,
Reimar Döffinger <Reimar.Doeffinger@gmx.de>, and
Tobias Rapp <t.rapp@noa-audio.com>
Alex Converse <alex.converse@gmail.com>

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2012-09-15 18:25:34 +02:00
Clément Bœsch ca8e39dd0d mp3enc: support MPEG-2 and MPEG-2.5 in Xing header. 2012-09-15 18:25:22 +02:00
Reimar Döffinger 6365e4db79 mp3enc: downgrade some errors in writing Xing frame to warnings
Also clarify the meaning of the log message.
2012-09-15 18:25:15 +02:00
Carl Eugen Hoyos 407eeb3474 mp2 muxer: mark as AVFMT_NOTIMESTAMPS.
Signed-off-by: Alex Converse <alex.converse@gmail.com>
2012-09-07 14:20:14 -07:00
Michael Niedermayer d46c1c72e4 Merge commit 'e6153f173a49e5bfa70b0c04d2f82930533597b9'
* commit 'e6153f173a49e5bfa70b0c04d2f82930533597b9':
  avopt: Store defaults for AV_OPT_TYPE_INT in the i64 union member

Conflicts:
	libavcodec/libopenjpegdec.c
	libavcodec/libopenjpegenc.c
	libavcodec/libx264.c
	libavcodec/mpeg12enc.c
	libavcodec/options_table.h
	libavcodec/snowenc.c
	libavcodec/tiffenc.c
	libavdevice/v4l2.c
	libavdevice/x11grab.c
	libavfilter/af_amix.c
	libavfilter/af_asyncts.c
	libavfilter/af_join.c
	libavfilter/buffersrc.c
	libavfilter/src_movie.c
	libavfilter/vf_delogo.c
	libavfilter/vf_drawtext.c
	libavformat/http.c
	libavformat/img2dec.c
	libavformat/img2enc.c
	libavformat/movenc.c
	libavformat/mpegenc.c
	libavformat/mpegtsenc.c
	libavformat/options_table.h
	libavformat/segment.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-05 14:33:32 +02:00
Martin Storsjö e6153f173a avopt: Store defaults for AV_OPT_TYPE_INT in the i64 union member
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-09-04 23:13:44 +03:00
Michael Niedermayer 370bb893d2 mp3enc: fix const correctness
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-30 17:56:38 +02:00
Michael Niedermayer bd6ece4609 mp3enc: fix CODEC_ID/CodecID that leaked in from older patch
Found-by: jamal <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-11 01:52:15 +02:00
Michael Niedermayer 7fd467f708 mp3/mp2: identify the video codecs as APIC through query_codec.
Fixes Ticket1408

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-10 17:24:39 +02:00
Michael Niedermayer 7a72695c05 Merge commit '36ef5369ee9b336febc2c270f8718cec4476cb85'
* commit '36ef5369ee9b336febc2c270f8718cec4476cb85':
  Replace all CODEC_ID_* with AV_CODEC_ID_*
  lavc: add AV prefix to codec ids.

Conflicts:
	doc/APIchanges
	doc/examples/decoding_encoding.c
	doc/examples/muxing.c
	ffmpeg.c
	ffprobe.c
	ffserver.c
	libavcodec/8svx.c
	libavcodec/avcodec.h
	libavcodec/dnxhd_parser.c
	libavcodec/dvdsubdec.c
	libavcodec/error_resilience.c
	libavcodec/h263dec.c
	libavcodec/libvorbisenc.c
	libavcodec/mjpeg_parser.c
	libavcodec/mjpegenc.c
	libavcodec/mpeg12.c
	libavcodec/mpeg4videodec.c
	libavcodec/mpegvideo.c
	libavcodec/mpegvideo_enc.c
	libavcodec/pcm.c
	libavcodec/r210dec.c
	libavcodec/utils.c
	libavcodec/v210dec.c
	libavcodec/version.h
	libavdevice/alsa-audio-dec.c
	libavdevice/bktr.c
	libavdevice/v4l2.c
	libavformat/asfdec.c
	libavformat/asfenc.c
	libavformat/avformat.h
	libavformat/avidec.c
	libavformat/caf.c
	libavformat/electronicarts.c
	libavformat/flacdec.c
	libavformat/flvdec.c
	libavformat/flvenc.c
	libavformat/framecrcenc.c
	libavformat/img2.c
	libavformat/img2dec.c
	libavformat/img2enc.c
	libavformat/ipmovie.c
	libavformat/isom.c
	libavformat/matroska.c
	libavformat/matroskadec.c
	libavformat/matroskaenc.c
	libavformat/mov.c
	libavformat/movenc.c
	libavformat/mp3dec.c
	libavformat/mpeg.c
	libavformat/mpegts.c
	libavformat/mxf.c
	libavformat/mxfdec.c
	libavformat/mxfenc.c
	libavformat/nsvdec.c
	libavformat/nut.c
	libavformat/oggenc.c
	libavformat/pmpdec.c
	libavformat/rawdec.c
	libavformat/rawenc.c
	libavformat/riff.c
	libavformat/sdp.c
	libavformat/utils.c
	libavformat/vocenc.c
	libavformat/wtv.c
	libavformat/xmv.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-07 22:45:46 +02:00
Anton Khirnov 36ef5369ee Replace all CODEC_ID_* with AV_CODEC_ID_* 2012-08-07 16:00:24 +02:00
Michael Niedermayer d1dad7c824 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  mpc8: return more meaningful error codes.
  mpc: return more meaningful error codes.
  wv,mpc8: don't return apetag data in packets.
  rtmp: do not warn about receiving metadata packets
  x86: h264dsp: Adjust YASM #ifdefs
  x86: yadif: Mark mmxext optimizations as such
  h264: convert loop filter strength dsp function to yasm.
  Improve descriptiveness of a number of codec and container long names

Conflicts:
	libavcodec/flvdec.c
	libavcodec/libopenjpegdec.c
	libavformat/apetag.c
	libavformat/mp3dec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-31 22:41:00 +02:00
Diego Biurrun 0177b7d23a Improve descriptiveness of a number of codec and container long names 2012-07-30 20:46:55 +02:00
Michael Niedermayer 57d5a224ce mp3enc: add lame tag with start padding info
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-14 17:20:22 +02:00
Clément Bœsch ca297513f0 lavf/mp3enc: support MPEG-2 and MPEG-2.5 sample rates when writing Xing header. 2012-05-13 16:49:17 +02:00
Michael Niedermayer f14f3bae6b mp3enc: avoid ifdef
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-07 16:24:41 +02:00