Skip to main content

Topic: Batch transcoding to HE-AAC-PS with this tool (Read 344547 times) previous topic - next topic

0 Members and 1 Guest are viewing this topic.
  • optimus
  • [*][*][*][*]
Batch transcoding to HE-AAC-PS with this tool
Introduction
MediaCoder is a free universal audio/video batch transcoder, putting together lots of excellent audio/video codecs and tools from the open source community into an all-in-one solution, capable of transcoding among different audio/video formats with many extra features.    


Links
Official website:
http://mediacoder.sourceforge.net/

Official forum:
http://forum.mediacoderhq.com

Project site:
http://sourceforge.net/projects/mediacoder

Update on Sept. 19, 2007:
MediaCoder Audio Edition is updated and can be freely downloaded from here. This edition is specially recommended for all the HA friends.

  • Last Edit: 19 December, 2007, 02:03:03 AM by optimus
MediaCoder the transcoder
http://mediacoder.sourceforge.net

  • Oki
  • [*][*]
Batch transcoding to HE-AAC-PS with this tool
Reply #1
Nice work, very friendly for transcoding.

Does it support HE-AAC (not HE-AAC v2) with a multichannel source?

Regards,
Oki

  • optimus
  • [*][*][*][*]
Batch transcoding to HE-AAC-PS with this tool
Reply #2
Sorry multichannel isn't supported yet.
MediaCoder the transcoder
http://mediacoder.sourceforge.net

  • Digisurfer
  • [*][*][*][*]
Batch transcoding to HE-AAC-PS with this tool
Reply #3
Thanks, looks very promising. So it can transcode video as well? How about audio contained in video (I'm new to video btw). Anyways will play around with it when I get a chance. Have to format and reinstall Windows first (sigh).
  • Last Edit: 05 September, 2005, 11:22:23 PM by Digisurfer

  • optimus
  • [*][*][*][*]
Batch transcoding to HE-AAC-PS with this tool
Reply #4
It can transcode video. Video transcoding is done by calling to mencoder, so u need mencoder binary placed in the executable directory.
It surely can transcode audio contained in video. As mplayer is used as the decoder, any formats mplayer supports (so many) can be transcoded.

btw: There is a silly bug in last version, that causes channel mode selection to be no effect. I've just corrected it and please download again.

Quote
Thanks, looks very promising. So it can transcode video as well? How about audio contained in video (I'm new to video btw). Anyways will play around with it when I get a chance. Have to format and reinstall Windows first (sigh).
[a href="index.php?act=findpost&pid=325306"][{POST_SNAPBACK}][/a]
  • Last Edit: 05 September, 2005, 11:46:19 PM by optimus
MediaCoder the transcoder
http://mediacoder.sourceforge.net

  • kindofblue
  • [*][*][*]
Batch transcoding to HE-AAC-PS with this tool
Reply #5
Hi Optimus. I have a question: Is it possible to an option to wrap the HE-AAC file into an MP4/M4A container via either MP4Box or MP4creator? So you can transcode to mp4 in one step? Might be worth a try.

cheers,
kindofblue
WavPack 4.31 / LAME 3.98 alpha 3 -V9 -vbr-new

Batch transcoding to HE-AAC-PS with this tool
Reply #6
Any chance of including support for the LC AAC Winamp encoder?
Wanna buy a monkey?

  • optimus
  • [*][*][*][*]
Batch transcoding to HE-AAC-PS with this tool
Reply #7
MP4Box is a console program isn't it? If so, it will not be difficult to integrate it. Could u provide me with some info on MP4Box (mainly about its command line usage)?

Quote
Hi Optimus. I have a question: Is it possible to an option to wrap the HE-AAC file into an MP4/M4A container via either MP4Box or MP4creator? So you can transcode to mp4 in one step? Might be worth a try.
  • Last Edit: 06 September, 2005, 11:27:13 PM by optimus
MediaCoder the transcoder
http://mediacoder.sourceforge.net

  • optimus
  • [*][*][*][*]
Batch transcoding to HE-AAC-PS with this tool
Reply #8
It's very easy to support another winamp encoder, as they have the same interface. I will do it later.

p.s: you can already use MEnc do transcoding into LC AAC, by putting faac.exe in the executable directory, and choosing FAAC as encoder. FAAC can be downloaded here.

Quote
Any chance of including support for the LC AAC Winamp encoder?
[a href="index.php?act=findpost&pid=325400"][{POST_SNAPBACK}][/a]
  • Last Edit: 06 September, 2005, 11:25:38 PM by optimus
MediaCoder the transcoder
http://mediacoder.sourceforge.net

  • guest0101
  • [*][*][*][*]
  • Banned
Batch transcoding to HE-AAC-PS with this tool
Reply #9
Does this utility support FLAC to AACPlus v2 encoding? I didn't see FLAC as a source file format for audio?

  • kindofblue
  • [*][*][*]
Batch transcoding to HE-AAC-PS with this tool
Reply #10
Quote
MP4Box is a console program isn't it? If so, it will not be difficult to integrate it. Could u provide me with some info on MP4Box (mainly about its command line usage)?

The general cmdline is:
Code: [Select]
MP4Box [option] input [option]

In Batchenc, I use:
Code: [Select]
mp4box -add <infile> -sbr <outfile.m4a>

From the DOS helpscreens:
Code: [Select]
MP4Box [option] input [option]

 -h general:          general options help
 -h hint:            hinting options help
 -h import:          import options help
 -h encode:          encode options help
 -h meta:            meta handling options help
 -h extract:          extraction options help
 -h dump:            dump options help
 -h swf:              Flash (SWF) options help
 -h crypt:            ISMA E&A options help
 -h format:          supported formats help

 -nodes:              lists supported MPEG4 nodes
 -node NodeName:      gets MPEG4 node syntax and QP info
 -xnodes:            lists supported X3D nodes
 -xnode NodeName:    gets X3D node syntax

 -version:            gets build version

General Options:
 -inter time_in_ms    interleaves file data (track chunks of time_in_ms)
                       * Note 1: Interleaving is 0.5s by default
                       * Note 2: a value of 0 disables interleaving
 -flat                stores file with all media data first, non-interleaved
 -frag time_in_ms    fragments file (track fragments of time_in_ms)
                       * Note: Always disables interleaving
 -out filename        specifies output file name
                       * Note: By default input (MP4,3GP) file is overwritten
 -tmp dirname        specifies directory for temporary file creation
                       * Note: Default temp dir is OS-dependent
 -nosys              removes all MPEG-4 Systems info except IOD (profiles)
                       * Note: Set by default whith '-add' and '-cat'
 -isma                rewrites the file as an ISMA 1.0 AV file
 -ismax              same as '-isma' and removes all clock references
 -3gp                rewrites as 3GPP(2) file (no more MPEG-4 Systems Info)
                       * Note 1: some tracks may be removed in the process
                       * Note 2: always on for *.3gp *.3g2 *.3gpp
 -brand ABCD          sets major brand of file
 -ab ABCD            adds given brand to file's alternate brand list
 -rb ABCD            removes given brand from file's alternate brand list
 -cprt string        adds copyright string to movie
 -chap file          adds chapter information contained in file
 -rem trackID:        removes track from file
 -new:                forces creation of a new destination file
 -rem trackID:        removes track from file
 -lang [tkID=]LAN:    sets track language. LAN is the ISO 639-2 code (eng, und)
 -delay tkID=TIME:    sets track start delay in ms.
 -split time_sec      splits in files of time_sec max duration
                       * Note: this removes all MPEG-4 Systems media
 -splits filesize    splits in files of max filesize kB.
                       * Note: this removes all MPEG-4 Systems media
 -splitx start:end    extracts a new file from start to end (in seconds)
                       * Note: this removes all MPEG-4 Systems media


Hinting Options
 -hint:              hints the file for RTP/RTSP
 -mtu size:          specifies MTU size in bytes. Default size is 1500
 -copy:              copies media data to hint track rather than reference
                       * Note: speeds up server but takes much more space
 -tight:              performs tight interleaving (sample based) of hinted file
                       * Note: reduces server disk seek but increases file size
 -multi [maxptime]:  enables frame concatenation in RTP packets if possible
       maxptime:    max packet duration in ms (optional, default 100ms)
 -rate ck_rate:      specifies rtp rate in Hz when no default for payload
                       * Note: default value is 90000 (MPEG rtp rates)
 -mpeg4:              forces MPEG-4 generic payload whenever possible
 -latm:              forces MPG4-LATM transport for AAC streams
 -static:            enables static RTP payload IDs whenever possible
                       * By default, dynamic payloads are always used

MPEG-4 Generic Payload Options
 -ocr:                forces all streams to be synchronized
                       * Most RTSP servers only support synchronized streams
 -rap:                signals random access points in RTP packets
 -ts:                signals AU Time Stamps in RTP packets
 -size:              signals AU size in RTP packets
 -idx:                signals AU sequence numbers in RTP packets
 -iod:                prevents systems tracks embedding in IOD
                       * Note: shouldn't be used with -isma option

 -sdp_ex string:      adds sdp string to (hint) track ("-sdp_ex tkID:string")
                     or movie. This will take care of SDP lines ordering
                       * WARNING: You cannot add anything to SDP, cf rfc2327.
 -unhint:            removes all hinting information.

Suppported raw formats and file extensions:
 NHNT                .media .nhnt .info
 MPEG Audio          .mp3
 ADTS-AAC            .aac
 MPEG-4 Visual        .cmp .m4v
 H263 Video          .263 .h263
 AVC/H264 Video      .h264 .h26L .264 .26L
 JPEG Images          .jpg .jpeg
 PNG Images          .png
 AMR(WB) Audio        .amr .awb
 EVRC Audio          .evc
 SMV Audio            .smv

Supported containers and file extensions:
 AVI                  .avi
 MPEG-PS              .mpg .mpeg .vob .vcd .svcd
 QCP                  .qcp
 OGG                  .ogg
 ISO-Media files      no extension checking

Supported text formats:
 SRT Subtitles        .srt
 SUB Subtitles        .sub
 GPAC Timed Text      .ttxt
 QuickTime TeXML Text  .xml  (cf QT documentation)

Supported Scene formats:
 MPEG-4 XMT-A        .xmt .xmta .xmt.gz .xmta.gz
 MPEG-4 BT            .bt .bt.gz
 VRML                .wrl .wrl.gz
 X3D-XML              .x3d .x3d.gz
 X3D-VRML            .x3dv .x3dv.gz
 MacroMedia Flash    .swf (very limitted import support only)


MPEG-4 Scene Encoding Options
 -mp4:                specify input file is for encoding.
 -def:                encode DEF names
 -sync time_in_ms:    forces BIFS sync sample generation every time_in_ms
                       * Note: cannot be used with -shadow
 -shadow time_ms:    forces BIFS sync shadow sample generation every time_ms.
                       * Note: cannot be used with -sync
 -log:                generates BIFS encoder log file
 -ms file:            specifies file for track importing

Chunk Processing
 -inctx file:        specifies initial context (MP4/BT/XMT)
                       * Note: input file must be a commands-only file
 -outctx:            specifies storage of updated context (MP4/BT/XMT)


Meta handling Options
 -set-meta args:      sets given meta type - syntax: "ABCD[:tk=ID]"
                       * ABCD: four char meta type (NULL or 0 to remove meta)
                       * [:tk=ID]: if not set use root (file) meta
                               if ID is 0 use moov meta
                               if ID is not 0 use track meta
 -add-item args:      adds resource to meta
                       * syntax: file_path + options (':' separated):
                       tk=ID: meta adressing (file, moov, track)
                       name=str: item name
                       mime=mtype: item mime type
                       encoding=enctype: item content-encoding type
                       * file_path "this" or "self": item is the file itself
 -rem-item args:      removes resource from meta - syntax: item_ID[:tk=ID]
 -set-primary args:  sets item as primary for meta - syntax: item_ID[:tk=ID]
 -set-xml args:      sets meta XML data
                       * syntax: xml_file_path[:tk=ID][:binary]
 -rem-xml [tk=ID]:    removes meta XML data
 -dump-xml args:      dumps meta XML to file - syntax file_path[:tk=ID]
 -dump-item args:    dumps item to file - syntax item_ID[:tk=ID][:path=fileName]


Extracting Options
 -raw TrackID:        extracts track in raw format when supported
 -raws TrackID:      extract each track sample to a file
                       * Note: "TrackID:N" extracts Nth sample
 -nhnt TrackID:      extracts track in nhnt format
 -single TrackID:    extracts track to a new mp4 file
 -avi TrackID:        extracts visual track to an avi file
 -qcp TrackID:        same as '-raw' but defaults to QCP file for EVRC/SMV
 -aviraw TK:          extracts AVI track in raw format
                     $TK can be one of "video" "audio" "audioN"


Importing Options

File importing syntax:
 "#video" "#audio":  base import for most AV files
 "#trackID=ID":      track import for IsoMedia and other files
 ":dur=D":            imports only the first D seconds
 ":lang=LAN":        sets imported media language code
 ":delay=delay_ms":  sets imported media initial delay in ms

 -add file:          add file tracks to (new) output file
 -cat file:          concatenates file samples to (new) output file
                       * Note: creates tracks if needed
 -keepsys:            keeps all MPEG-4 Systems info when using '-add' / 'cat'

All the following options can be specified as default or for each track.
When specified by track the syntax is ":opt" or ":opt=val".

 -dref:              keeps media data in original file
 -nodrop:            forces constant FPS when importing AVI video
 -packed:            forces packed bitstream when importing raw ASP
 -sbr:                backward compatible signaling of AAC-SBR
 -sbrx:              non-backward compatible signaling of AAC-SBR
                       * Note: SBR AAC cannot be detected at import time
 -fps FPS:            forces frame rate for video and SUB subtitles import
                       * For raw H263 import, default FPS is 15
                       * For all other imports, default FPS is 25
 -mpeg4:              forces MPEG-4 sample descriptions when possible (3GPP2)
 -agg N:              aggregates N audio frames in 1 sample (3GP media only)
                       * Note: Maximum value is 15 - Disabled by default
WavPack 4.31 / LAME 3.98 alpha 3 -V9 -vbr-new

  • optimus
  • [*][*][*][*]
Batch transcoding to HE-AAC-PS with this tool
Reply #11
Just integrated Helix Producer support in MEnc. The screenshot:

Download it here.
This includes:
MEnc executable
MPlayer (latest CVS version)
Helix Producer (stripped for audio encoding only and added aacplus audience files)
Winamp AAC+V2 encoder
Lame MP3 encoder (latest CVS version)
  • Last Edit: 02 April, 2007, 09:20:45 AM by optimus
MediaCoder the transcoder
http://mediacoder.sourceforge.net

  • optimus
  • [*][*][*][*]
Batch transcoding to HE-AAC-PS with this tool
Reply #12
FLAC is supported by the CVS version of MPlayer. I've just re-compiled a latest and full MPlayer binary and included in the package. You may download it and try it out.

Quote
Does this utility support FLAC to AACPlus v2 encoding? I didn't see FLAC as a source file format for audio?
[a href="index.php?act=findpost&pid=325487"][{POST_SNAPBACK}][/a]
MediaCoder the transcoder
http://mediacoder.sourceforge.net

  • optimus
  • [*][*][*][*]
Batch transcoding to HE-AAC-PS with this tool
Reply #13
I just found that MP4Box will remove PS part from AAC. The resulting MP4 will be detected as HE-AAC without PS (by foobar2000).

Quote
The general cmdline is:
Code: [Select]
MP4Box [option] input [option]
MediaCoder the transcoder
http://mediacoder.sourceforge.net

  • M
  • [*][*][*][*][*]
Batch transcoding to HE-AAC-PS with this tool
Reply #14
optimus, you've put together a nice GUI. I've assembled a small wish-list of things that would make my own encodes easier, and I thought I would mention them here on the off chance some of them might sound good to you, too.

  1) Is there any chance you could implement drag-and-drop? It would be nice to be able to select a group of files/directories in the explorer, and simply add them to Menc.

  2) What about an option to encode a group of files as a single track, with chapters? (Or even a way to encode a WAV/Cue sheet pair, so that the CD-Text was transferred to appropriate indices?) Might be wishful thinking, but it would be nice. 

  3) Currently when transcoding from a FLAC file, if there is silence at the end of the file, it will be truncated in the resultant AAC. When transcoding from WAV the actual length of the original audio is preserved. Would it be possible to optionally include the appropriate amount of silence when transcoding from FLAC?

  4) The method used by the AudioCoding.com "in_mp4" Winamp plugin - hosted at RareWares - for converting AAC to MP4/M4A seems to preserve PS data. (At least, TCPMP on my cell phone still recognizes and plays the PS content!) Perhaps, since you are using a Winamp plugin for the actual encode, you could pair that with the AudioCoding plugin to accomplish conversion/tagging?

  Just thoughts....

    - M.

  • kindofblue
  • [*][*][*]
Batch transcoding to HE-AAC-PS with this tool
Reply #15
Quote
I just found that MP4Box will remove PS part from AAC. The resulting MP4 will be detected as HE-AAC without PS (by foobar2000).

Quote
The general cmdline is:
Code: [Select]
MP4Box [option] input [option]

[{POST_SNAPBACK}][/a]


Hmm. Didn't notice that. I guess Helix is a better way to go with aacplus then. I assume the included Helix producer has the modified racp.dll for 32-48kbps encoding? (The screenshot shows a 128kbps encode.)

EDIT: Defsac's post in [a href="http://www.hydrogenaudio.org/forums/index.php?showtopic=36772&view=findpost&p=324812]here[/url] describes how you can use foo_mpeg4u to wrap the aac stream in mp4. It shows up correctly as HE-AAC PS in foobar2000 0.9b8 but not in 0.8.3 (which reports the file as LC-AAC. The problem is the file doesn't play in iTunes, if that's a consideration. (it is for me.) I can play Helix AACplus files in iTunes.
  • Last Edit: 07 September, 2005, 11:23:20 PM by kindofblue
WavPack 4.31 / LAME 3.98 alpha 3 -V9 -vbr-new

  • Duble0Syx
  • [*][*][*][*]
Batch transcoding to HE-AAC-PS with this tool
Reply #16
I'd like to add a vote for drap & drop as well.  Would make things a lot easier.  So far this tool is becoming quite useful, especially now that transcoding from FLAC works.

  • M
  • [*][*][*][*][*]
Batch transcoding to HE-AAC-PS with this tool
Reply #17
Quote
I can play Helix AACplus files in iTunes.
[a href="index.php?act=findpost&pid=325747"][{POST_SNAPBACK}][/a]

  When you do, does iTunes play the HE portion of the file, or only the LC portion? And are you using PS at all?

    - M.

Batch transcoding to HE-AAC-PS with this tool
Reply #18
Thanks for the tool. Another request here for drag & drop. Also, any chance of adding wavpack support?

  • optimus
  • [*][*][*][*]
Batch transcoding to HE-AAC-PS with this tool
Reply #19
Quote
  1) Is there any chance you could implement drag-and-drop? It would be nice to be able to select a group of files/directories in the explorer, and simply add them to Menc.


I would like to implement drag-and-drop. But I wrote this program totally with SDK and up to now I still don't know how to do drag-and-drop with SDK. Anyway, I have enabled multi-file selection with "Add File", this may help a bit.

Quote
  2) What about an option to encode a group of files as a single track, with chapters? (Or even a way to encode a WAV/Cue sheet pair, so that the CD-Text was transferred to appropriate indices?) Might be wishful thinking, but it would be nice.


Encoding into a single track should be easy to implement. I will do it later.

Quote
  3) Currently when transcoding from a FLAC file, if there is silence at the end of the file, it will be truncated in the resultant AAC. When transcoding from WAV the actual length of the original audio is preserved. Would it be possible to optionally include the appropriate amount of silence when transcoding from FLAC?


This issue should refer to MPlayer's document on FLAC.

Quote
  4) The method used by the AudioCoding.com "in_mp4" Winamp plugin - hosted at RareWares - for converting AAC to MP4/M4A seems to preserve PS data. (At least, TCPMP on my cell phone still recognizes and plays the PS content!) Perhaps, since you are using a Winamp plugin for the actual encode, you could pair that with the AudioCoding plugin to accomplish conversion/tagging?


in_mp4 is a input plugin isn't it? It can do conversion?
  • Last Edit: 08 September, 2005, 09:58:20 PM by optimus
MediaCoder the transcoder
http://mediacoder.sourceforge.net

  • M
  • [*][*][*][*][*]
Batch transcoding to HE-AAC-PS with this tool
Reply #20
Quote
in_mp4 is a input plugin isn't it? It can do conversion?
[a href="index.php?act=findpost&pid=325942"][{POST_SNAPBACK}][/a]

Yes, it can. When playing an AAC file in Winamp, using the AudioCoding.com in_mp4 plugin, calling the "File Info" dialog will show the following:
Quote
Convert to MP4

You can convert this file to MP4 if you like. This does not involve
re-encoding, only the container format is changed. Advantages of
MP4 files are that they are playable by a lot more players and they
will have a lot of support in the future.

Under that is a button that says "Convert Now!" When pressed, a copy of the AAC file is inserted into an MP4 container of the same name.

  Note that the version of this plugin available at RareWares does not (for whatever reason) currently display any notification of HE or PS content, but it does still appear to properly reproduce that content when playing HE/PS encoded files.

  Great news about the other possibilities - especially single-file output! Is there any chance of also being able to implement chapters at the appropriate index points when that revision appears?

    - M.

Edit: Spelling.
  • Last Edit: 08 September, 2005, 10:11:14 PM by M

  • optimus
  • [*][*][*][*]
Batch transcoding to HE-AAC-PS with this tool
Reply #21
Just added single file mode to MEnc. Please download the update from the top. To enable this mode, set File -> Preference -> Audio Options -> Single File Mode to "Yes". The resulting file is named with the first file in the list.

And, in this release, multiple file selection is enabled with "Add File".
  • Last Edit: 02 April, 2007, 09:26:31 AM by optimus
MediaCoder the transcoder
http://mediacoder.sourceforge.net

  • optimus
  • [*][*][*][*]
Batch transcoding to HE-AAC-PS with this tool
Reply #22
Just a remind, you can use audio filters provided by MPlayer to filter the audio data. Audio filter settings is also in the "Preference" dialog.
MediaCoder the transcoder
http://mediacoder.sourceforge.net

  • optimus
  • [*][*][*][*]
Batch transcoding to HE-AAC-PS with this tool
Reply #23
I will add wavpack support in next release.

Quote
Thanks for the tool. Another request here for drag & drop. Also, any chance of adding wavpack support?
[a href="index.php?act=findpost&pid=325815"][{POST_SNAPBACK}][/a]
MediaCoder the transcoder
http://mediacoder.sourceforge.net

  • optimus
  • [*][*][*][*]
Batch transcoding to HE-AAC-PS with this tool
Reply #24
Added support for x264, matroska container, generic CLI program as audio encoder. Download the update at top.
  • Last Edit: 14 September, 2005, 10:50:29 AM by optimus
MediaCoder the transcoder
http://mediacoder.sourceforge.net