summaryrefslogtreecommitdiffstats
path: root/libhb/encavcodecaudio.c
Commit message (Collapse)AuthorAgeFilesLines
* libhb: resolve header conflicts with pango/harfbuzzJohn Stebbins2019-09-121-2/+2
| | | | | | | Newest versions appear to have a "common.h" somewhere that is interfering with libhb/common.h. move headers into "handbrake" subdirectory
* Resolve conflict with harfbuzz include file hb.hJohn Stebbins2019-09-101-1/+1
| | | | Rename hb.h to handbrake.h
* audio_resample: set input and output samplerateJohn Stebbins2019-08-051-4/+4
| | | | Fixes https://github.com/HandBrake/HandBrake/issues/2124
* Update copyright dates to 2019.Bradley Sepos2019-01-011-1/+1
|
* encavcodecaudio: fix AAC 5.1 encodingJohn Stebbins2018-12-271-0/+5
| | | | | | | Use 5.1 back for AAC because 5.1 side uses a not-so-universally supported feature to signal the non-standard layout Fixes https://github.com/HandBrake/HandBrake/issues/1744
* libhb: Fix an issue that was causing the "encavcodecaInit: Unknown avcodec ↵sr552018-10-011-1/+0
| | | | option stereo_mode" message in the log. This option is changed in ffmpeg.
* audio_resample: switch from avresample to swresampleJohn Stebbins2018-06-271-29/+26
| | | | Eliminates deprecation warnings for avresample
* libhb: build: README: Replace instances of Libav with FFmpeg.Bradley Sepos2018-05-291-2/+2
|
* FFMPEG: Use avcodec_free_context(..) instead of deprecated leaking ↵Sven Gothel2018-05-281-3/+3
| | | | | | | avcodec_close(..) Hence rename hb_avcodec_close -> hb_avcodec_free_context and pass the required ptr-ptr. avcodec_free_context(..) ensures releasing of all resources attached to the context.
* Misc. typosluz.paz2018-02-201-1/+1
| | | Found via `codespell -q 3 --skip="./gtk/po`
* Update copyright dates to 2018.Bradley Sepos2018-01-011-1/+1
|
* silence new compiler warnings on Fedora 26John Stebbins2017-07-121-2/+2
|
* fix another use of deprecated libav defineJohn Stebbins2017-07-061-1/+1
|
* fix use of deprecated libav definesJohn Stebbins2017-07-061-2/+2
| | | | Fixes https://github.com/HandBrake/HandBrake/issues/815
* encavcodecaudio: work around lame bugJohn Stebbins2017-05-111-11/+23
| | | | | | | | | On windows builds, there is an upstream bug in the lame encoder that causes an extra output packet that has the same timestamp as the second to last packet. This causes an error during muxing. Drop the packet with the duplicate timestamp. Fixes https://github.com/HandBrake/HandBrake/issues/726
* encavcodecaudio: set encoder time_base to 90khzJohn Stebbins2017-02-211-7/+9
| | | | | Setting the time_base to 90khz reduces rounding errors when converting back and forth from the default which was sample_rate.
* encavcodecaudio: fix dropping of final input packetJohn Stebbins2017-02-211-1/+1
| | | | | When exactly input_samples were left in the input buffer, we were dropping them when they could be encoded.
* mux: shift timestamps by largest encoder delayJohn Stebbins2017-02-141-4/+3
| | | | | This prevents libav from adding an mp4 edit list entry that causes a properly functioning player to drop the first couple of audio frames.
* Update copyright dates to 2017.Bradley Sepos2017-01-011-1/+1
|
* fix memory leaksJohn Stebbins2016-12-171-0/+1
| | | | | | The series of commits starting with Tim's "libav: remove our custom QSV wrapper." Closes #46, closes #276, and closes #416.
* encavcodecaudio: fix use of deprecated libav interfacesJohn Stebbins2016-12-171-111/+100
| | | | | avcodec_encode_audio2 is deprecated, use avcodec_send_frame and avcodec_receive_packet
* opus: fix comment in 5.1 audio encoding fixJohn Stebbins2016-09-121-1/+1
|
* opus: fix 5.1 encodingJohn Stebbins2016-09-111-0/+4
|
* contrib: Add opus audio encoder.John Stebbins2016-09-021-0/+4
| | | | | | | | | | Remove: hb_audio_samplerate_get_best() Add: hb_audio_samplerate_is_supported() hb_audio_samplerate_find_closest() hb_audio_samplerate_get_sr_shift()
* Update copyright dates to 2016.Bradley Sepos2016-01-011-1/+1
|
* lame: Use libav wrapper to encode mp3lameJohn Stebbins2015-10-261-0/+4
| | | | | | | | | | Fixes https://forum.handbrake.fr/viewtopic.php?f=12&t=33345 Some players expect each packet to start on an mp3 frame header. Our mp3lame encoder did not ensure this and resulted in failure to play audio on these players. libav already has the necessary code to parse headers and accumulate a full frame of data, so use it.
* libhb: add hb_buffer_listJohn Stebbins2015-09-241-21/+16
| | | | | This brings together several independent implementations of a simple buffer list manager.
* libhb: enable vbr encoding with fdk-aac and libav-aacjstebbins2015-05-041-0/+7
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7157 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: Use a buffer flat to indicate EOFjstebbins2015-05-011-3/+3
| | | | | | | | | | | | ... instead of a 0 length buffer. This fixes this issue: https://forum.handbrake.fr/viewtopic.php?f=12&t=31959 Theora can create 0 length output. These 0 length frames indicate duplicate frames. So we can't use 0 length buffers to indicate the end of the stream. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7143 b64f7644-9d1e-0410-96f1-a4d463321fa5
* New audio output options.Rodeo2015-02-151-0/+6
| | | | | | | | | Dolby Digital Plus (E-AC-3), Dolby TrueHD and FLAC can now be passed through without re-encoding. They aren't covered by Auto Passthru yet, however. In addition, encoding to E-AC-3 is now possible. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6908 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Update year to 2015.bradleys2015-02-011-1/+1
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6852 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Update some copyright dates to 2014.Rodeo2014-02-181-1/+1
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6042 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: Plug some leaks and clean up the buffer pool code a little.jstebbins2013-10-231-0/+1
| | | | | | | | | | | Filters were leaking buffers when a job is cancelled. decavcodec could leak when job cancelled. decavcodec leaked audio extradata in BSInfo encavcodec and encavcodecaudio leaked AVCodecContext sync leaked subtitle_sanitizer_t data git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5853 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: add experimental avformat muxer for mkv and mp4jstebbins2013-06-301-13/+9
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5620 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Use the official libavcodec minimum output buffer size via a define ↵Rodeo2013-03-171-2/+3
| | | | | | (currently, 16 KiB). git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5335 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: fix fdk-aac mono encodingjstebbins2013-03-161-2/+4
| | | | | | | A minimum output buffer size of 8KB is needed by libav git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5329 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Updated all the copyright headers to 2013.sr552013-03-091-1/+1
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5318 b64f7644-9d1e-0410-96f1-a4d463321fa5
* encavcodecaInit: minimize code duplication.Rodeo2013-03-031-59/+72
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5292 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Fix AAC encoding with Libav.Rodeo2013-03-031-1/+1
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5290 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Add optional fdk-aac encoderjstebbins2013-03-031-5/+52
| | | | | | | configure --enable-fdk-aac to enable this encoder git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5287 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Audio dithering.Rodeo2013-02-051-0/+10
| | | | | | | | | | | | Works with encoders that accept 16-bit signed integers as input (currently, only ffflac). When supported, the default method is standard triangular. CLI users can request a specific dither algorithm via the --adither option. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5241 b64f7644-9d1e-0410-96f1-a4d463321fa5
* FLAC: add 24-bit encoding.Rodeo2013-01-021-7/+15
| | | | | | | | | | Works via a dedicated encoder: "FLAC (24-bit)", "ffflac24". Users who prefer 16-bit can use the previous FLAC encoder: "FLAC (ffmpeg)", "ffflac". git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5134 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Bump libav to v9_beta3.Rodeo2012-12-311-6/+7
| | | | | | | | Miscellaneous bugfixes and improvements. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5124 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Improve support for planar audio.Rodeo2012-11-211-58/+94
| | | | | | | | | | | | | | - encavcodecaudio: use libavresample directly (instead of via the hb_audio_resample wrapper), and add support for planar output - hb_audio_resample: add support for planar input - hb_audio_remap: add support for planar input - deca52: output planar float samples (no re-interleaving) git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5073 b64f7644-9d1e-0410-96f1-a4d463321fa5
* encavcodecaudio: cosmetics.Rodeo2012-10-271-3/+3
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5042 b64f7644-9d1e-0410-96f1-a4d463321fa5
* hb_ff_set_sample_fmt() improvements.Rodeo2012-10-171-2/+9
| | | | | | | | | | - allow setting a sample_fmt other than AV_SAMPLE_FMT_FLT - fall back on planar/packed variant of the requested format if available git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5019 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: remove unnecessary usage of hb_audio_remap.Rodeo2012-09-231-15/+1
| | | | | | | | All decoders now output channels in Libav order. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4977 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Move mixdown-> channel_layout/matrix_encoding translation to ↵Rodeo2012-08-271-2/+1
| | | | | | | | | | hb_audio_resample_init(). Unlike hb_audio_remap, hb_audio_resample will never be used in situations where we don't have a mixdown. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4923 b64f7644-9d1e-0410-96f1-a4d463321fa5
* hb_audio_resample: move setters out of hb_audio_resample_update(), to ↵Rodeo2012-08-271-3/+2
| | | | | | dedicated functions. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4922 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Use hb_audio_resample for downmixing AC3 sources. DRC is still applied by ↵Rodeo2012-08-021-1/+2
| | | | | | | | | | | | | | | | | liba52. Add support for center & surround mix levels to hb_audio_resample. This allows us to support upmixing all audio sources. For sources that have at least 2 front and one back or side channel(s), allow upmixing to 5.1: 3.0/3.1 (2 front and 1 back channels) 4.0/4.1 (3 front and 1 back channels) 4.0/4.1 (2 front and 2 side channels) 5.0 (3 front and 2 side channels) git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4885 b64f7644-9d1e-0410-96f1-a4d463321fa5