Commit Graph

80 Commits

Author SHA1 Message Date
nu774 4c9167c1cb m4af: move internal struct m4af_itmf_entry_t from header 2015-06-12 21:04:49 +09:00
nu774 1703d1f8cf take stco->co64 switch due to mdat relocation into account on finalizing m4a 2015-02-14 19:32:00 +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 a79a11ef99 win32compat: fix aacenc_printf() not to write junk characters 2014-07-30 14:09:12 +09:00
nu774 57aa91419d fix: CAF chan chunk using channel bitmap was not correctly handled 2014-02-17 13:51:20 +09:00
nu774 209130e887 fix reading of caf file without chan chunk
Since channel map was not initialized, first channel was copied to every
other channel.
2014-01-18 17:41:57 +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 3c0f152d39 support 7.1 channel mode added on FDK 3.4.12 2013-11-03 18:08:46 +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 556a3db11b add some copyright notice 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 d11b044131 fix unused variable warning 2013-10-29 19:36:22 +09:00
nu774 6709cf694c fix warning: cast size_t as sprintf() arg to int 2013-10-29 19:36:22 +09:00
nu774 3aa2787e34 fix pcm_seek() to inline 2013-10-29 19:24:29 +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 5ccbfaa710 re-fix #ifdef cond for lrint() 2013-10-26 11:29:30 +09:00
nu774 8f05e0751b tag mapping: add recorded date and tempo, remove performer->artist 2013-10-26 01:38:58 +09:00
nu774 053279541b fix MSVC12 build issue 2013-10-25 17:04:26 +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 8cb6378fca --tag-from-json: properly support number/total format in json track field 2013-10-23 12:19:14 +09:00
nu774 91ef87b610 fixed bogus sgpd written on --gapless-mode=1 and 2 2013-10-22 19:49:01 +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 fe2d3aa3e7 set avgBitrate field to zero for 14496-1 compliance 2013-10-18 22:11:09 +09:00
nu774 fb2b36350a add --moov-before-mdat 2013-06-14 16:52:18 +09:00
nu774 f5363b23c3 fix an error message 2013-03-04 01:03:55 +09:00
nu774 d317e29d46 add --gapless-mode 2013-03-03 01:49:55 +09:00
nu774 ffc230a83e simplify __timeb64 condition 2013-02-20 10:45:41 +09:00
nu774 70e912edba use fseeko64() on i686-pc-mingw32 2013-02-20 10:29:12 +09:00
nu774 bd02d0e753 fix build issue on i686-pc-mingw (struct __timeb64 is missing) 2013-02-18 02:05:07 +09:00
nu774 229c3ead72 fix to accept option -C 2013-02-17 21:44:29 +09:00
nu774 1184a1f52b refine json metadata importing 2013-02-16 13:03:02 +09:00
nu774 93fb917b75 m4af: duplication check on adding tags 2013-02-16 13:02:05 +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