Seite 2 von 4 ErsteErste 1234 LetzteLetzte
Ergebnis 11 bis 20 von 39

Thema: Quicktime AAC Encoder: qaac und qtaacenc

  1. #11
    Foren Gott
    Registriert seit
    17. February 2005
    Beiträge
    2.035

    Standard AW: Quicktime AAC Encoder: qaac und qtaacenc

    2.19

    Fixed: attempt to set one of stik, rtng, akID, sfID tags caused qaac hang.

    Well, actually not hanging but waiting for console input in vain... due to a silly bug calling scanf() instead of sscanf().

    Fixed: --tag akID:fra was writing USA country code (not France).

  2. #12
    Erklär-Bär Avatar von LigH
    Registriert seit
    19. April 2003
    Ort
    Gardelegen
    Alter
    41
    Beiträge
    41.928

    Standard AW: Quicktime AAC Encoder: qaac und qtaacenc

    2.25

    Fixed HE-AAC gapless playback issue

    It seems that CoreAudio HE-AAC encoder finishes too early on HE-AAC encoding, and can result in too small amount of enc_padding. When enc_padding is smaller than 481 (which is the additional decoder delay for SBR), there's no way for decoder to reproduce complete samples, so decoded result will be get shorter.

    This is actually a bug of CoreAudio encoder. I can see the very same behavior using iTunes, and when decoding resulting HE-AAC file by iTunes, decoded result is shorter than original.

    You can see this by arbitrary 44.1khz 11 sec sample (number of samples=485100), which result in number of padding samples=74, and about 10ms at ending is dropped.

    Since I'm using somewhat older iTunes (10.5.3.3) and I'm reluctant to upgrading it, I don't know if it's still true for new iTunes, but I believe so since I'm using recent CoreAudioToolbox.

    As a workaround, qaac now feeds additional 2048 samples of silence to HE-AAC encoder and edit iTunSMPB so that it reflects original length. As a result, HE-AAC file encoded by qaac will now play gaplessly by iTunes, but it's no more bit-identical with the result of iTunes in case of HE-AAC.

    Note that you still cannot play HE-AAC files outside Apple softwares because of this issue. I'm sorry I should have noticed earlier of this.
    Leicht geändert für den Link
    __

    2.24

    • Fix crash on reading unsigned 8bit PCM through libsndfile (for example, Wave64 format).
    • Fix bogus (non-compliant) sgpd box written on gaplessmode 1 or 2. However, I don't still recommend using it. As far as I know, only iTunes is known to support it well. VLC also supports edts, but it seems VLC decodes first few frames of HE-AAC without SBR when edts is being used.
    • Support float16 and float24 WAV and Wavpack file. float16 is assumed to be normalize in range [-65536, 65536], which is different from normal [-1,1] for floating point PCM. For details, read this thread on HA
    • Show PCM sample format (int8 or something) when --verbose is specified. Both input format and resulting format are shown, the latter might be different due to DSP chain.
    • Disabled automatic quantization to integer when sample format is converted to float by DSP chain and encoding to ALAC.
    • Repackaged 64bit libsoxr.dll as libsoxr64.dll. Now refalac64 supports both names (of course it cannot use 32bit version of DLL, so be careful).
    • Show more meaningful message on write error (MSVCRT assigns EINVAL for broken pipe error, resulting in "invalid parameter" message, which is not quite helpful).
    • Some code clean up.
    __

    2.23

    • Switched from libsoxrate to libsoxr and new libsoxconvolver. Like libsoxr, libsoxconvolver uses SIMD optimized DFT/convolution routine when SSE is available. This library is used for --lowpass, --matrix-preset and --matrix-file. Unlike libsoxrate, libsoxconvolver is 32bit float based.
    • Add --peak and --play option.
      Both doesn't produce output to a file, and cannot be used with other encoding option such as -V, -v, -a, -c, -A, and -D. However, DSP options such as --rate or --lowpass can be used.
      --peak just scans input and print peak. Might be useful when you apply some DSP (especially mixing), and want to know resulting peak value before encoding.
      --play does what it's name implies (play files using Wave Mapper device). Since qaac is an encoder and not a music player, don't expect much from it. It's just intended for cases when you want to test new custom matrix coefficients or something. --play doesn't automatically convert sample format, nor does remix.
    • Changed random number generator (used for TPDF dither) to LCG, which is known to be poor in randomness but quite fast, and is enough for just generating white noise for dither.
    • Don't flush immediately after writing WAV header when writing WAV file to a pipe. This makes pipe rewinding hack of SoX happier, but it seems not perfect. Basically speaking, SoX's pipe rewinding on win32 is nothing but a hack, so don't expect automatic format detecting of SoX to always work. Just use -t wav - or something to avoid unnecessary pipe rewinding.
    • Some code cleanup.
    • Fix help messages.
    • Updated taglib (again).
    __

    2.22

    • Fixed not to write tag when value of tag is empty.
    • Support loading of libFLAC_dynamic.dll (this name is used by v1.3.0 DLL distributed at www.rarewares.org). Currently, qaac searches libFLAC dll in the following order.
      libFLAC_dynamic.dll -> libFLAC.dll -> libFLAC-8.dll
      Since 1.3.0 and 1.2.1 DLL are binary compatible within range of use by qaac, you can use any of them.
    • Tags given by command line option now take precedence over default tool tag written by qaac. As a result, you can override tool tag if you want to (with --tag too:value).
    • Updated TagLib to github current HEAD.
    __

    2.21

    Fixed an issue of --threading option. There was a possibility of non sample aligned read on the pipe, similar to the problem that was fixed on 2.04 and 2.05.
    __

    2.20

    • Add optional libsoxr support. It's basically the same as libsoxrate (both derives from SoX), but is more optimized (fast), and is maintained by a developer of SoX.

      When libsoxr.dll is present, now qaac/refalac will use it for sample rate conversion. libsoxr binary is on the cabinet page. Note that you still need libsoxrate when you want --lowpass or mixing option.

      libsoxr binary built with GCC doesn't usually work with qaac/refalac due to a few ABI compatibility issues. The binary at cabinet page is built with GCC _with care_.

      I have reported this issue to author of libsoxr, so it might be fixed in the future.
    • Decreased refresh rate of progress on title bar of console window.
    • Explicitly check presence of BOM when reading text files, since MLang often does a wrong guess even when BOM is present.

    Auf gute Zusammenarbeit:

    REGELN befolgen | SUCHE benutzen | FAQ lesen | STICKIES beachten




  3. #13
    Foren Gott
    Registriert seit
    17. February 2005
    Beiträge
    2.035

    Standard AW: Quicktime AAC Encoder: qaac und qtaacenc

    2.36
    2.36 includes some minor fixes:

    Improved accuracy of seeking on MP3 files by increased amount of preroll. Still doesn't count how many frames required due to bit-reservoir, but prerolling of 9 frames should be enough...
    Fixed bitrate formatting on --format. Has been printing in decimals for 3ch only.
    Fixed --stat. Incorrect values were written at the beginning (regression introduced by --num-priming or something).
    Updated taglib.
    2.35
    Insert PCE in AAC payload on ADTS output when non standard channel layout such as 4ch(quad), 6ch, 6.1ch is in use.
    Support 7.1ch rear for AAC (m4a/adts) by inserting PCE on qaac side. Mapping of 7.1ch rear input to 7.1ch front is dropped.
    When non standard channel layout is used, PCE (program config element) is required to describe the channel layout. For MP4 container it is *****ded in GASpecificConfig. For ADTS, since there's no such place in the header, PCE has to be periodically inserted in the AAC payload.

    Since Apple codec doesn't support ADTS transmux, it does not insert PCE in AAC payload but writes PCE into "magic cookie" that contains GASpecificConfig. On the other hand, qaac has not been modifying AAC bitstream produced by the codec. As a natural consequence, ADTS output with non standard channel layout was lacking PCE support. This issue is fixed on this version.

    As a good side effect, I also added support for 7.1ch rear. Before this version, 7.1ch rear input has been mapped to 7.1ch front as a compromise, that is not a very right thing to do. Since 7.1ch front and 7.1ch rear are the same in the AAC channel elements level (both of them are encoded as SCE+PCE+PCE+PCE+LFE), 7.1ch rear can be achieved by encoding as 7.1ch front and inserting PCE afterwards.

    Since automatic mapping from 7.1ch rear to 7.1ch front is note dropped, 7.1ch rear input cannot be encoded as ALAC. It is not supported for CAF output too.

    If you are a ffmpeg user, note that standard 7.1ch front AAC requires "-strict 1" to decode in the correct channel layout. It is due to historical reason that AAC encoders (including Nero and qaac) has been wildly mapping 7.1ch rear to 7.1ch front.

    2.34 build fix

    2.34 was built targeting Vista or later by accident (toolset v120 was used instead of v120_xp). If you are using Windows XP SP3, please download qaac_2.34.1.zip.

    2.34
    Added experimental option --num-priming to specify arbitrary number of priming samples between 0 and 2112. This option can only be applicable to AAC LC.

    2112 is the default number of priming samples (delay) of Apple encoder. By specifying smaller value, you get shorter delay. --num-priming=0 is equivalent to --no-delay, and in fact, --no-delay is now re-implemented by --num-priming.

    1024 or greater should be safe. In many cases, it seems that you can go as low as 576 (=448 + 128, where 448 is the number of borrowed samples from the previous frame for short block case, and 128 is the size of short block) and still be able to achieve perfect gapless playback. However, considering long block case and also the fact that faad (CLI frontend) discards first 1024 samples, setting smaller value than 1024 cannot be said to be always safe.

    When number of priming samples is X where X < 576, decoder should not be able to reconstruct first 576 - X samples at least. Therefore, you should avoid it unless that portion of input is known to be silent.

    Update on qaac_2.33.zip again (v3)

    Broken incremental build seems to have also affected refalac.exe (although it doesn't crash). Updated qaac_2.33.zip again (shown as v3).

    2.33

    Implemented smart padding (same as fdkaac) that minimizes the possibility of gapless playback issue.
    You can disable this feature by new option --no-smart-padding. However, --no-smart-padding also disables additional padding at the end of HE-AAC stream that has been implemented as a workaround for CoreAudio encoder bug.
    Although I don't recommend using --no-smart-padding, it is mandatory when you want bit-identical bitstream output as iTunes (including it's bugs).
    Fixed fallback sample rate conversion when libsoxr is not present (was not working exactly as intended).
    Improved error messages for the attempt to encode non supported PCM format to ALAC.
    Minor fixes and rewriting.

    2.32

    Fixed: --tag apID and --tag akID were written in the long tag format.
    2.31
    Switch to MSVC12 (Visual Studio 2013). Now you need msvc[r|p]120.dll instead ( included in the zip archive). For the time being you can still able to build qaac with MSVC10, but I may drop MSVC10 support in future in favor of improved C++11 support in MSVC12.
    Fixed crash when unknown fourcc was passed to --tag option.
    Support --tag purd (purchase date), which seems to have been missing recently (perhaps around 2.28 or so).
    Don't write raw ID3v1 genre number to CAF.
    Don't write iTunes specific metadata to CAF.
    Other minor code rewrites regarding metadata handling.

    2.30
    Fixed regression on 2.29, that was causing miserable failure (ERROR: invalid vector<T> subscript) when reading TAK files
    2.29
    Fixed regression on 2.28: Tags were not properly copied when --concat was specified on cuesheet input.
    Fixed not to exit with failure requesting output filename when --concat was specified with --peak or --play (in which case "output filename" is nonsense).
    Some minor improvement and code refactoring.
    2.28
    Add new option: --caf. As the name implies, --caf tells qaac to output to CAF container. (HE-)AAC, ALAC, PCM (-D) are supported. Pipe streaming is supported in case of PCM, that can be used to pass audio as well as tags to fdkaac through pipeline.
    (Hopefully) better handling of metadata. Non-standard tags such as performer or ISRC are now copied from input (However, some tags such as replaygain related metadata, ripping log, and cuesheet are blacklisted and not copied).
    Support ALAC in CAF input from libsndfile. This will only be used by refalac + very recent libsndfile. qaac has already been supporting input of ALAC in CAF through CoreAudio API.
    Fix: take care of zero byte text file input, which resulted in MLang text encoding detection failure.

    2.27
    Now you can set --drc option twice or more, with different parameters. This can be used to obtain more complex effect.

    For example, you can use --drc for normal compression, then as a limiter (--drc with high thresh + high ratio + zero attack/release will work something like a limiter, that effectively kills remaining peaks
    2.26
    Disabled --no-delay on SBR. --no-delay removes several frames at beginning to compensate encoder delay, but it turns out to be problematic for SBR since sbr_header is not present on every frame, and decoder cannot decode SBR until seeing it. Anyway, you should be using LC when delay is important.
    I guess VLC cannot decode SBR at the beginning of HE-AAC file having edts because of similar reason. It really needs to read sbr_header -- but probably it just skips to the position described in edts.
    Added --drc for dynamic range compression.
    About new dynamic range compressor

    This is implemented based on "Digital Dynamic Range Compressor Design -- A Tutorial and Analysis", JAES2012.

    Takes 5 parameters (threshold, ratio, knee width, attack, release), all of them are common among compressors, so you should be familiar with them.

    Note that in this implementation, actual release time will be approximately equals to attack + release. This is by nature of "smooth, decoupling peak detector" in the paper, used by this compressor.

    If you want what is called "makeup gain" to compensate attenuation by this compressor, just use --gain.

  4. #14
    Foren Gott
    Registriert seit
    17. February 2005
    Beiträge
    2.035

    Standard AW: Quicktime AAC Encoder: qaac und qtaacenc

    2.37
    Fixed a bug: AAC in CAF generated by qaac --caf was not playable due to bogus kuki chunk (Descriptors inside of esds box are expected, but qaac was writing bare AudioSpecificConfig).

  5. #15
    Erklär-Bär Avatar von LigH
    Registriert seit
    19. April 2003
    Ort
    Gardelegen
    Alter
    41
    Beiträge
    41.928

    Standard AW: Quicktime AAC Encoder: qaac und qtaacenc

    [qaac] release 2.38 (refalac 1.38)

    Allow nesting of ${} in --fname-format.
    Now you can write something like ${albumartist|${artist}} for example, which means:

    When album artist tag is present and non-empty, it evaluates to album artist tag's value.
    Otherwise, it evaluates to artist tag's value.

    Auf gute Zusammenarbeit:

    REGELN befolgen | SUCHE benutzen | FAQ lesen | STICKIES beachten




  6. #16
    Erklär-Bär Avatar von LigH
    Registriert seit
    19. April 2003
    Ort
    Gardelegen
    Alter
    41
    Beiträge
    41.928

    Standard AW: Quicktime AAC Encoder: qaac und qtaacenc

    [qaac] release 2.39 (refalac 1.39)

    Added dedicated MP4 reader, which supports:

    Decoding AAC-LC, MP1/2/3, ALAC (qaac), ALAC (refalac).
    Perfectly support files with iTunSMPB and multiple edits. In files with multiple edits, there exist multiple valid spans to be played back. In other words, there are multiple gaps to be skipped. As far as I know, there is NO such software that supports it properly. If you are interested, try Multiple-edits.zip.

    This file contains 3 edits in it. When properly decoded/played, it contains exactly 30 seconds music. However, in this file there are very short 2 gaps to be skipped in the middle as well as first delay and end padding. Therefore, no software other than qaac should play it correctly without pops/clicks exactly in 30 seconds.

    [qaac] release 2.40 (refalac 1.40)

    Fixed new MP4 decoder introduced at 2.39 (found seek related bug, and ALAC has been trimmed too much).

    Auf gute Zusammenarbeit:

    REGELN befolgen | SUCHE benutzen | FAQ lesen | STICKIES beachten




  7. #17
    Erklär-Bär Avatar von LigH
    Registriert seit
    19. April 2003
    Ort
    Gardelegen
    Alter
    41
    Beiträge
    41.928

    Standard AW: Quicktime AAC Encoder: qaac und qtaacenc

    [qaac] release 2.41 (refalac 1.41)

    Add --limiter. --limiter applies smart limiter that softly clips portions where peak exceeds (near) 0dBFS. Softly means that it applies non-linear filter to surrounding half cycles (nearest zero crossing point to zero crossing point) so that the result fits in under 0dBFS but still is smoothly connected to other parts, resulting in much smaller audible distortion than dumb hard clips.

    For CVBR/ABR/CBR mode, bitrate value less than 8 is now treated as "bits per sample". Bitrate is computed as the following:
    Bitrate = bits_per_sample * number_of_channels * sample_rate
    For example, --cvbr 2 is now equivalent for --cvbr 192 (=2*2*48000) for 2ch, 48kHz case. This can be useful when you want to use CVBR/ABR/CBR and want constant quality setting for varying number of channels or sample rate.

    Other minor changes.

    Auf gute Zusammenarbeit:

    REGELN befolgen | SUCHE benutzen | FAQ lesen | STICKIES beachten




  8. #18
    Foren Gott
    Registriert seit
    17. February 2005
    Beiträge
    2.035

    Standard AW: Quicktime AAC Encoder: qaac und qtaacenc

    [qaac] release 2.42 (refalac 1.42)

    Add --start and --end option to specify start, end point of the input for partial encode. --start, --end (and --delay) supports 3 ways to describe the point.
    [[hh:]mm:]ss[.sss..] : Timestamp described in hours, minutes, and seconds. Parts enclosed by brackets can be omitted. Seconds are parsed as double precision number (64bit float), and you can place arbitrary numbers of digits under the decimal point. You will need enough digits to achieve sample accuracy, depending on the sample rate.
    ns : Number of samples, followed by 's'.
    mm:ss:fff : Cuepoint in minutes, seconds, and frames(1/75 second), followed by 'f'.
    Re-linked 32bit libsoxr.dll not to depend on libgcc_s_sjlj-1.dll. Now it is not included in the archive and you don't need it anymore

  9. #19
    Foren Gott
    Registriert seit
    17. February 2005
    Beiträge
    2.035

    Standard AW: Quicktime AAC Encoder: qaac und qtaacenc

    2.43 (refalac 1.43)

    Fix: Write actual number of channels to mp4a box in MP4 container.

  10. #20
    Foren Gott
    Registriert seit
    17. February 2005
    Beiträge
    2.035

    Standard AW: Quicktime AAC Encoder: qaac und qtaacenc

    2.44 (refalac 1.44)
    Support avisynth script (avs) input. Like x264 or avs2pipemod, AVS is directly supported through avisynth C interface, not via VfW.

Seite 2 von 4 ErsteErste 1234 LetzteLetzte

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Ähnliche Themen

  1. Antworten: 0
    Letzter Beitrag: 3. October 2011, 13:46
  2. VFR-Quicktime konvertieren - wie?
    Von aLu im Forum AviSynth
    Antworten: 28
    Letzter Beitrag: 14. May 2007, 23:45
  3. mp4(avc,aac) für Quicktime,...
    Von Selur im Forum Alternative A/V-Container und -Formate
    Antworten: 6
    Letzter Beitrag: 11. September 2006, 10:14
  4. Quicktime Alternative?
    Von DJ-Spacelab im Forum Abspielprobleme
    Antworten: 10
    Letzter Beitrag: 4. November 2005, 20:06

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •