Commit Graph

57 Commits

Author SHA1 Message Date
nu774 f95566ee8e update help message regarding vbr mode 2023-03-14 00:24:51 +09:00
Dima 353e4fcd7a process 32-bit input if possible (i.e. respect aac:INT_PCM type)
switch AAC-FDK from pcm16 to pcm32:
    typedef LONG INT_PCM;
    #define SAMPLE_BITS 32
2019-09-27 12:10:30 +03:00
tico-tico 65ee26fb61 don't inject timestamp 2018-12-10 14:59:48 +03:00
nu774 836367a7fe Fix LD/ELD issue: priming samples are too short to be discarded
When discarded, cannot reconstruct the beginning.
Now we changed to activate smartpadding only for LC/HE/HEv2.
(padding is not nice for low delay codec anyway)

LD and ELD are two short
2018-09-04 01:30:08 +09:00
nu774 ca65cffdd3 FDKv2 API change: encoderDelay -> nDelay/nDelayCore 2018-09-03 22:59:24 +09:00
nu774 3f7b6abd20 fix: -L option was not working (resulted in segfault) 2018-09-03 20:25:28 +09:00
nu774 c8cc3fb57e Ticket #23: quit supporting MPEG-2 AOT
Macro definitions for those AOT have gone from FDK_audio.h
2016-08-26 21:19:03 +09:00
nu774 cf200f9563 Use our SBR signaling implementation on old libfdkaac 2016-08-25 21:02:41 +09:00
nu774 19a6b7f10c update compat layer, mainly for MSVC14 issue 2015-09-21 15:19:15 +09:00
nu774 4140443408 fix incorrect iTunSMPB written when interrupted by signals 2015-02-14 19:31:59 +09:00
nu774 fcfed4cd0c write actual number of channels to mp4a box 2014-09-12 21:34:37 +09:00
nu774 b54538f79e apply limiter when input is float 2014-08-13 09:26:26 +09:00
nu774 a7e00a4219 refactor pcm reader framework 2014-08-12 23:43:19 +09:00
nu774 71e4764062 fix to use libFDKAAC signaling mode 1
It turned out that mode 1 is explicit, backward compatible signaling.
We don't have to implement it on our side.
2013-11-08 12:23:52 +09:00
nu774 ed646ccf79 fix gcc warnings 2013-11-03 22:40:26 +09:00
nu774 e1adc17835 add --sbr-ratio to support AACENC_SBR_RATIO appeared on libFDK 3.4.12 2013-11-03 18:09:56 +09:00
nu774 3de0e22dcc use tell() to obtain data chunk offset 2013-10-30 14:27:28 +09:00
nu774 d533c8e002 rename aacenc_result_t -> aacenc_frame_t, simplify write_sample() 2013-10-30 11:58:30 +09:00
nu774 c5eec15549 prepend 1 sample zero padding in case of SBR and enc_delay is odd
This is required because odd enc_delay cannot be exactly expressed in
downsampled scale, and HE-AACv2 FDK encoder actually has odd enc_delay.
2013-10-30 02:09:23 +09:00
nu774 3b518efd31 cleanup interface of aac_encode_frame() 2013-10-30 02:09:23 +09:00
nu774 4d48b091d4 smart padding for better gapless playback
Taken smart padding code using LPC extrapolation from vorbis/opus.
Padding is done on both beginning and ending, but enc_delay and padding
remains the same (we discard extra padding frame introduced on our side
after encoding).
2013-10-30 02:09:08 +09:00
nu774 6709cf694c fix warning: cast size_t as sprintf() arg to int 2013-10-29 19:36:22 +09:00
nu774 be234dc464 add --include-sbr-delay 2013-10-27 22:40:42 +09:00
nu774 c9ac59e8d3 fix help message: show -I as shorthand for --ignorelength 2013-10-27 21:32:42 +09:00
nu774 9b8f9915c2 remove --sbr-signaling
Instead, we always use explicit/backward compatible SBR signaling by
ASC extension in case of m4a, which is not supported by FDK library
(so we do it on our side).
For LOAS, we use explicit hierarchical signaling.
2013-10-27 21:15:12 +09:00
nu774 f48bf1294c fix build issue on platform where fileno is a naive macro 2013-10-25 10:25:33 +09:00
nu774 1af8624b00 caf input support 2013-10-24 23:47:03 +09:00
nu774 29a8f73faf refactor pcm io routines 2013-10-24 10:38:27 +09:00
nu774 3b666b7546 cleanup metadata handling 2013-10-23 23:35:23 +09:00
nu774 e8e9f79eec reimplement int16 conversion as pcm_reader 2013-10-21 00:17:14 +09:00
nu774 2d744bd56c add abstraction layer for pcm reading 2013-10-20 22:50:10 +09:00
nu774 2f6fc566cc improve handling of avgBitrate 2013-10-20 21:33:06 +09:00
nu774 fb2b36350a add --moov-before-mdat 2013-06-14 16:52:18 +09:00
nu774 d317e29d46 add --gapless-mode 2013-03-03 01:49:55 +09:00
nu774 229c3ead72 fix to accept option -C 2013-02-17 21:44:29 +09:00
nu774 cbb23cdbd8 add --tag-from-json 2013-02-15 22:26:17 +09:00
nu774 721d977f59 fix implicit int variable decl. 2013-02-15 17:27:08 +09:00
nu774 e4bbeeb016 update m4af 2013-02-15 17:26:28 +09:00
nu774 bd3b4b343a gracefully shutdown on signals 2013-01-28 10:53:19 +09:00
nu774 a56831da9f add --tag-from-file 2013-01-25 12:43:53 +09:00
nu774 aa2ca1e348 add --silent 2013-01-24 23:58:26 +09:00
nu774 7b1f213618 retab 2013-01-19 18:19:10 +09:00
nu774 5c534696a9 fix crash on wrong long option, rename --ignore-length to --ignorelength 2013-01-19 18:12:49 +09:00
nu774 360cf7dc8b take care of COPYRIGHT-SIGN in UTF-8 2013-01-17 17:10:21 +09:00
nu774 47c164c85a fix return type of put_type_entry() to void 2013-01-15 21:19:32 +09:00
nu774 e476728e77 add support for xid 2013-01-11 22:17:28 +09:00
nu774 5888fddccf rename basename() -> aacenc_basename() and move to compat layer 2013-01-10 11:14:16 +09:00
nu774 c5c459082a add --tag and --long-tag 2013-01-10 10:58:19 +09:00
nu774 6854317606 raw input support 2013-01-09 00:12:55 +09:00
nu774 34b319e08b fix typo of bitrate-mode option 2013-01-07 20:11:52 +09:00