Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: Open Source Fraunhofer AAC Encoder (fdk-aac) (Read 304483 times) previous topic - next topic
0 Members and 2 Guests are viewing this topic.

Open Source Fraunhofer AAC Encoder (fdk-aac)

Reply #100
Sorry for inconvenience, updated git repos of fdk_autobuild, now it should work.

Open Source Fraunhofer AAC Encoder (fdk-aac)

Reply #101
Still no go:

Making the lib:

Code: [Select]
if test -d stage; then rm -fr stage; fi
mkdir -p stage/bin
mkdir -p stage/lib
mkdir -p stage/include/fdk-aac
cp -p libfdk-aac-0.dll stage/bin
cp -p libfdk-aac.a /mingw/lib
cp: cannot create regular file `/mingw/lib': No such file or directory
make: *** [install] Error 1

Making exe:

Code: [Select]
cc -O2 -DHAVE_CONFIG_H -I.  -c -o src/aacenc.o src/aacenc.c
In file included from src/aacenc.c:14:0:
src/aacenc.h:8:32: fatal error: fdk-aac/aacenc_lib.h: No such file or directory
 #include <fdk-aac/aacenc_lib.h>
                                ^
compilation terminated.
make: *** [src/aacenc.o] Error 1
The system cannot find the path specified.
Error 404; signature server not available.


Open Source Fraunhofer AAC Encoder (fdk-aac)

Reply #103
Still no go:

Check msys/1.0/etc/fstab in the fdkaac_autobuild directory. It's content is something like
Code: [Select]
C:/path/to/fdkaac_autobuild   /mingw

This file is created on msys installation, but if you have moved fdkaac_autobuild directory after mingw/msys installation, you have to edit fstab so that first field points to the current location (it's written in readme).


Open Source Fraunhofer AAC Encoder (fdk-aac)

Reply #104
Still no go:

Check msys/1.0/etc/fstab in the fdkaac_autobuild directory. It's content is something like
Code: [Select]
C:/path/to/fdkaac_autobuild   /mingw

This file is created on msys installation, but if you have moved fdkaac_autobuild directory after mingw/msys installation, you have to edit fstab so that first field points to the current location (it's written in readme).


I haven't moved anything. I've downloaded this morning new autobuild and run it for first time at work.
Error 404; signature server not available.

Open Source Fraunhofer AAC Encoder (fdk-aac)

Reply #105
I haven't moved anything. I've downloaded this morning new autobuild and run it for first time at work.

Hmm, strange.
Code: [Select]
cp -p libfdk-aac.a /mingw/lib
cp: cannot create regular file `/mingw/lib': No such file or directory

It looks like /mingw/lib is invisible to cp command of msys, so I suspected fstab entry.

Open Source Fraunhofer AAC Encoder (fdk-aac)

Reply #106
Can you try the following?
Open command prompt, go to msys/1.0/bin directory, execute msysmnt command.
It will show something like the following:
Code: [Select]
C:\path\to\fdkaac_autobuild\msys\1.0\bin>msysmnt
C:\Users\foo\AppData\Local\Temp on /tmp type user (binmode,noumount)
C:\path\to\fdkaac_autobuild\msys\1.0 on /usr type user (binmode,noumount)
C:\path\to\fdkaac_autobuild\msys\1.0 on / type user (binmode,noumount)
C:\path\to\fdkaac_autobuild on /mingw type user (binmode)   <---- THIS LINE IS IMPORTANT
c: on /c type user (binmode,noumount)
d: on /d type user (binmode,noumount)
e: on /e type user (binmode,noumount)
f: on /f type user (binmode,noumount)
h: on /h type user (binmode,noumount)
q: on /q type user (binmode,noumount)
z: on /z type user (binmode,noumount)

Open Source Fraunhofer AAC Encoder (fdk-aac)

Reply #107
Is fdkaac.exe with MD5 of 7edd8dbbca11c85d7c66edec8d1f4267 the latest build?

Open Source Fraunhofer AAC Encoder (fdk-aac)

Reply #108
Is fdkaac.exe with MD5 of 7edd8dbbca11c85d7c66edec8d1f4267 the latest build?

fdkaac.exe 0.4.2: MD5 49b0bcdbd6bd0fd97266c75813946d89

Open Source Fraunhofer AAC Encoder (fdk-aac)

Reply #109
Is fdkaac.exe with MD5 of 7edd8dbbca11c85d7c66edec8d1f4267 the latest build?

Where did you get it? I'm not providing any "official" binary, and there are tons of ways that can make MD5 hash of executable binary different.
If you think it's safe to run it, just look at the version number it prints. The latest version is 0.4.2.

Open Source Fraunhofer AAC Encoder (fdk-aac)

Reply #110
Can you try the following?
Open command prompt, go to msys/1.0/bin directory, execute msysmnt command.

Code: [Select]
C:\Program Files (x86)\Utilities\fdkaac_autobuild\msys\1.0\bin>msysmnt.exe
C:\Program Files (x86)\Utilities\fdkaac_autobuild\msys\1.0 on /usr type user (binmode,noumount)
C:\Program Files (x86)\Utilities\fdkaac_autobuild\msys\1.0 on / type user (binmode,noumount)
C:\Users\Ivan\AppData\Local\Temp on /tmp type user (binmode,noumount)
c: on /c type user (binmode,noumount)
d: on /d type user (binmode,noumount)
e: on /e type user (binmode,noumount)
f: on /f type user (binmode,noumount)

This is what I get, fresh unpack, no modifications done. Hm, maybe it doesn't like spaces in path?
Error 404; signature server not available.

Open Source Fraunhofer AAC Encoder (fdk-aac)

Reply #111
Well, nope. This is lib, path doesn't have spaces:

Code: [Select]
if test -d stage; then rm -fr stage; fi
mkdir -p stage/bin
mkdir -p stage/lib
mkdir -p stage/include/fdk-aac
cp -p libfdk-aac-0.dll stage/bin
cp -p libfdk-aac.a /mingw/lib
cp -p libfdk-aac.dll.a stage/lib
cp -p libAACdec/include/aacdecoder_lib.h stage/include/fdk-aac
cp -p libAACenc/include/aacenc_lib.h stage/include/fdk-aac
cp -p libSYS/include/FDK_Audio.h stage/include/fdk-aac
cp -p libSYS/include/genericStds.h stage/include/fdk-aac
cp -p libSYS/include/machine_type.h stage/include/fdk-aac
cp -pr stage/* /mingw/
cd stage && zip -r /mingw/libfdk-aac-win32-bin.zip * & cd ..
  adding: bin/ (stored 0%)
  adding: bin/libfdk-aac-0.dllfdk-aac-master\stage\bin - The directory is not empty.
fdk-aac-master\stage - The process cannot access the file because it is being used by another process.

d:\Tools\fdkaac_autobuild> (deflated 52%)
  adding: include/
zip warning: No such file or directory
        zip warning: could not open for reading: include/
  adding: include/fdk-aac/
zip warning: No such file or directory
        zip warning: could not open for reading: include/fdk-aac/
  adding: include/fdk-aac/aacdecoder_lib.h
zip warning: No such file or directory
        zip warning: could not open for reading: include/fdk-aac/aacdecoder_lib.h
  adding: include/fdk-aac/aacenc_lib.h
zip warning: No such file or directory
        zip warning: could not open for reading: include/fdk-aac/aacenc_lib.h
  adding: include/fdk-aac/FDK_Audio.h
zip warning: No such file or directory
        zip warning: could not open for reading: include/fdk-aac/FDK_Audio.h
  adding: include/fdk-aac/genericStds.h
zip warning: No such file or directory
        zip warning: could not open for reading: include/fdk-aac/genericStds.h
  adding: include/fdk-aac/machine_type.h
zip warning: No such file or directory
        zip warning: could not open for reading: include/fdk-aac/machine_type.h
  adding: lib/
zip warning: No such file or directory
        zip warning: could not open for reading: lib/
  adding: lib/libfdk-aac.dll.a
zip warning: No such file or directory
        zip warning: could not open for reading: lib/libfdk-aac.dll.a

zip warning: Not all files were readable
  files/entries read:  2 (801K bytes)  skipped:  9 (182K bytes)

And:

Code: [Select]
d:\Tools\fdkaac_autobuild>cd msys\1.0\bin

d:\Tools\fdkaac_autobuild\msys\1.0\bin>msysmnt.exe
d:\Tools\fdkaac_autobuild\msys\1.0 on /usr type user (binmode,noumount)
d:\Tools\fdkaac_autobuild\msys\1.0 on / type user (binmode,noumount)
C:\Users\Ivan\AppData\Local\Temp on /tmp type user (binmode,noumount)
d:\Tools\fdkaac_autobuild on /mingw type user (binmode)
c: on /c type user (binmode,noumount)
d: on /d type user (binmode,noumount)
e: on /e type user (binmode,noumount)
f: on /f type user (binmode,noumount)

Well, somethin strange is going on. I will try to find older version and create file. I've tried disabling my AV software, and adding the path to exclusion, no go.
Oh, forgot to add - Windows 7 64 bit, fully patched, Avast Antivirus 2014 free, DeepScreen disabled.
Error 404; signature server not available.

Open Source Fraunhofer AAC Encoder (fdk-aac)

Reply #112
To add, sorry to spam, it seems that it managed to compile, without any additional configuration form myself - I've started making libfdkaac, it finished the job and made zip file with lib inside, and now I have a working fdkaac encoder. Strange.
Still can't figure out what went wrong.
Error 404; signature server not available.

Open Source Fraunhofer AAC Encoder (fdk-aac)

Reply #113
It seems just an issue of white space in the path.
It didn't work in your first example, where fdkaac_autobuild is located at "C:\Program Files (x86)\Utilities\fdkaac_autobuild"
It went on the second example, this time "d:\Tools\fdkaac_autobuild" was used.

Open Source Fraunhofer AAC Encoder (fdk-aac)

Reply #114
Uff I posted the MD5 of 0.3.2 haha 

 

Open Source Fraunhofer AAC Encoder (fdk-aac)

Reply #115
[fdkaac] 0.5.0
posted 8 minutes ago by nu 774
Add support for 7.1ch input, which has become available on libfdk-aac (FDK encoder library 3.4.12).
Add --sbr-ratio to control activation of downsampled SBR, which also introduced on FDK encoder library 3.4.12).
--lowdelay-sbr for ELD+SBR now takes argument to control SBR activity on ELD.
About 7.1ch channel layout

Unlike Apple AAC encoder, libfdk-aac supports two 7.1ch layout. One is AAC standard C+Lc+Rc+L+R+Ls+Rs+LFE (7.1ch front), and another is C+L+R+Ls+Rs+Rls+Rrs+LFE (7.1ch rear). The latter is not standard and therefore described using PCE(program config element), but is more suitable for encoding from Bluray soundtrack.

fdkaac frontend automatically chooses layout from the two depending on input channel layout (if present). If input channel layout is unknown, FL+FR+C+LF+BL+BR+SL+SR is assumed, which is mapped to the latter (non-standard layout).

About new SBR options

By new option --sbr-ratio, you can choose SBR mode from dual-rate SBR or downsampled SBR. Dual-rate SBR is what is normally used for HE-AAC, where AAC is encoded at half the sample rate of SBR, hence "dual rate". On the other hand, downsampled SBR uses same sample rate for both of AAC and SBR (single rate), therefore downsampled SBR typically consumes more bitrate.

Downsampled SBR is newly introduced feature. When latest libfdk-aac is not present in system (or not built into fdkaac statically), dual-rate SBR will be used. When available, dual-rate SBR is the default for HE-AACv1 and downsampled SBR is the default for ELD+SBR. You can change this behavior by --sbr-ratio.

Note that downsampled HE-AACv1 is not as portable as dual-rate one. When downsampled HE-AACv1 is used, fdkaac is forced to choose explicit SBR signaling, which (at least) iTunes doesn't accept.

Open Source Fraunhofer AAC Encoder (fdk-aac)

Reply #116
[fdkaac] 0.5.0
(...)


Great. I just sent you a pull request to ignore some files from getting committed and I will work on a skeleton of debian packaging, so that collecting the dependencies and everything else becomes self-documented.

BTW, I also noticed one or two warnings when compiling. Do you want some patches?

Furthermore, all these descriptions that you put here in the previous version should, IMVHO, be put in a manpage for the program. What about this idea? I can try draft something, even though English is not my native language.

Open Source Fraunhofer AAC Encoder (fdk-aac)

Reply #117
Great. I just sent you a pull request to ignore some files from getting committed and I will work on a skeleton of debian packaging, so that collecting the dependencies and everything else becomes self-documented.

Thanks, merged it now.

Quote
BTW, I also noticed one or two warnings when compiling. Do you want some patches?

Thanks, I can fix it on my side.

Quote
Furthermore, all these descriptions that you put here in the previous version should, IMVHO, be put in a manpage for the program. What about this idea? I can try draft something, even though English is not my native language.

Sounds nice.
I've been always reluctant to write docs (especially "official" one) since my English is VERY BAD.

Open Source Fraunhofer AAC Encoder (fdk-aac)

Reply #118
since my English is VERY BAD.


what?  your english is absolutely fine. i'm english and your use of the language is far better than what i see from the "natives" - including myself.

if you didn't mention it, i don't think anyone here would know it wasn't your first language.

Open Source Fraunhofer AAC Encoder (fdk-aac)

Reply #119
what?  your english is absolutely fine. i'm english and your use of the language is far better than what i see from the "natives" - including myself.

if you didn't mention it, i don't think anyone here would know it wasn't your first language.

Thanks, but I cannot write English without spending much time + care. Even then, I cannot be even remotely as expressive as in Japanese. Google is always my friend.
But anyway I started to confront with bloody old groff mandoc.

Open Source Fraunhofer AAC Encoder (fdk-aac)

Reply #120
But anyway I started to confront with bloody old groff mandoc.


Don't do that. Type things in markdown and convert them to a manpage. See an example of this in youtube-dl's documentation.

Open Source Fraunhofer AAC Encoder (fdk-aac)

Reply #121
But anyway I started to confront with bloody old groff mandoc.


Don't do that. Type things in markdown and convert them to a manpage. See an example of this in youtube-dl's documentation.

Umm, MD is much better. But to tell the truth, I've already done 3/4 or so of OPTIONS description.

Open Source Fraunhofer AAC Encoder (fdk-aac)

Reply #122

Don't do that. Type things in markdown and convert them to a manpage. See an example of this in youtube-dl's documentation.

Umm, MD is much better. But to tell the truth, I've already done 3/4 or so of OPTIONS description.


Well, unless it is for a learning exercise, I wouldn't continue on that, because a lot of the things can be automated (and we all want our computers to work for us, instead of the the opposite).

For instance, if you really, positively want something in troff format, then using help2man would be a good start, as long as the program supports both the --help and the --version command line option (which is what a user usually expects the program to support anyway).

That being said, maintaining the manpage (that is, editing for the future changes, addition of whole paragraphs or even sections) in groff/troff format requires more brainpower than doing that the automated way.

OK, those are just some hints. BTW, since you are already using github, it would be nice to integrate automatic testing whenever you push something, like what youtube-dl does and/or what a project of mine does: https://github.com/coursera-dl/coursera

See, in particular, the https://github.com/coursera-dl/coursera/blo...ter/.travis.yml file.

But this automated testing thing is just the icing on the cake at this stage.

Open Source Fraunhofer AAC Encoder (fdk-aac)

Reply #123
nu774, does Fraunhofer manage multichannel better on fdk than its premium encoder (the one that comes with Winamp/fhgaacenc)? Also, do we need to keep libfdk-aac-0.dll for anything?

Thanks for the update again.

Open Source Fraunhofer AAC Encoder (fdk-aac)

Reply #124
For instance, if you really, positively want something in troff format, then using help2man would be a good start, as long as the program supports both the --help and the --version command line option (which is what a user usually expects the program to support anyway).

Output of help2man indeed looks nice as a starting point. It's not good enough for using it without modification, though.
Maybe this because of funky indentations of fdkaac help message. fdkaac apparently requires two levels of definition list -- one for option name, another for option values.

Quote
But this automated testing thing is just the icing on the cake at this stage.

Although automated testing is a nice thing to have, creating from scratch at current stage requires laboring that I'm not willing to do.