diff options
author | jstebbins <[email protected]> | 2011-08-01 18:06:22 +0000 |
---|---|---|
committer | jstebbins <[email protected]> | 2011-08-01 18:06:22 +0000 |
commit | 76d480815a9c6773e0fa5bcffaded04646279b8a (patch) | |
tree | 01fb72f321632a8bfb928bb3cfc40448f371eb0c /test/test.c | |
parent | 7a083edaa1a8d331ca8eb2878f051a4fc1966d43 (diff) |
add more audio passthru options
adds aac and mp3 passthru for mp4 and mkv containers
adds dts and dtshd for mp4 container (mkv already had it)
Note: The only player known (to me) to support dts(hd) in mp4 is ff/avplay
In LinGui there is a new option to limit which passthru codecs
will be used by the "Auto Passthru" audio codec options. The CLI
already has this ability with "--audio_copy-mask" which is use
in conjunction with the "copy" audio codec option.
Also corrects some A/V sync issues when video frames are dropped due to
a gap detected in the audio.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4149 b64f7644-9d1e-0410-96f1-a4d463321fa5
Diffstat (limited to 'test/test.c')
-rw-r--r-- | test/test.c | 46 |
1 files changed, 40 insertions, 6 deletions
diff --git a/test/test.c b/test/test.c index d9f360dec..4fd728537 100644 --- a/test/test.c +++ b/test/test.c @@ -2563,17 +2563,39 @@ static void ShowHelp() #ifdef __APPLE_CC__ fprintf( out, " -E, --aencoder <string> Audio encoder(s)\n" - " (ca_aac/ca_haac/faac/lame/vorbis/ac3/copy/copy:ac3/copy:dts)\n" - " copy, copy:ac3 and copy:dts meaning passthrough.\n" - " copy will passthrough either ac3 or dts.\n" + " ca_aac\n" + " ca_haac\n" + " faac\n" + " lame\n" + " vorbis\n" + " ac3\n" + " copy\n" + " copy:aac\n" + " copy:ac3\n" + " copy:dts\n" + " copy:dtshd\n" + " copy:mp3\n" + " copy* will passthrough the corresponding\n" + " audio unmodified to the muxer if it is a\n" + " supported passthrough audio type.\n" " Separated by commas for more than one audio track.\n" " (default: ca_aac)\n" ); #else fprintf( out, " -E, --aencoder <string> Audio encoder(s):\n" - " (faac/lame/vorbis/ac3/copy/copy:ac3/copy:dts)\n" - " copy, copy:ac3 and copy:dts meaning passthrough.\n" - " copy will passthrough either ac3 or dts.\n" + " faac\n" + " lame\n" + " vorbis\n" + " ac3\n" + " copy\n" + " copy:aac\n" + " copy:ac3\n" + " copy:dts\n" + " copy:dtshd\n" + " copy:mp3\n" + " copy* will passthrough the corresponding\n" + " audio unmodified to the muxer if it is a\n" + " supported passthrough audio type.\n" " Separated by commas for more than one audio track.\n" " (default: faac for mp4, lame for mkv)\n" ); #endif @@ -3427,6 +3449,10 @@ static int ParseOptions( int argc, char ** argv ) allowed_audio_copy |= HB_ACODEC_DCA; if ( !strcmp( allowed[i], "dtshd" ) ) allowed_audio_copy |= HB_ACODEC_DCA_HD; + if ( !strcmp( allowed[i], "mp3" ) ) + allowed_audio_copy |= HB_ACODEC_MP3; + if ( !strcmp( allowed[i], "aac" ) ) + allowed_audio_copy |= HB_ACODEC_FFAAC; } str_vfree( allowed ); } break; @@ -3600,6 +3626,10 @@ static int get_acodec_for_string( char *codec ) { return (HB_ACODEC_PASS_MASK & allowed_audio_copy) | HB_ACODEC_PASS_FLAG; } + else if( !strcasecmp( codec, "copy:aac" ) ) + { + return HB_ACODEC_AAC_PASS; + } else if( !strcasecmp( codec, "copy:ac3" ) ) { return HB_ACODEC_AC3_PASS; @@ -3612,6 +3642,10 @@ static int get_acodec_for_string( char *codec ) { return HB_ACODEC_DCA_HD_PASS; } + else if( !strcasecmp( codec, "copy:mp3" ) ) + { + return HB_ACODEC_MP3_PASS; + } else if( !strcasecmp( codec, "lame" ) ) { return HB_ACODEC_LAME; |