mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-11-26 19:01:44 +02:00
change management of "ab" option in ffmpeg.c, so that it works as "b" option.
patch by Benoit Fouet % benoit P fouet A purplelabs P com % Original thread: Subj: [Ffmpeg-devel] [PATCH] use new way to handle "ab" option Date: 03/03/2007 10:51 PM Originally committed as revision 8244 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
c544ded699
commit
066a81a80f
14
ffmpeg.c
14
ffmpeg.c
@ -137,7 +137,6 @@ static int qp_hist = 0;
|
|||||||
|
|
||||||
static int intra_only = 0;
|
static int intra_only = 0;
|
||||||
static int audio_sample_rate = 44100;
|
static int audio_sample_rate = 44100;
|
||||||
static int audio_bit_rate = 64000;
|
|
||||||
#define QSCALE_NONE -99999
|
#define QSCALE_NONE -99999
|
||||||
static float audio_qscale = QSCALE_NONE;
|
static float audio_qscale = QSCALE_NONE;
|
||||||
static int audio_disable = 0;
|
static int audio_disable = 0;
|
||||||
@ -2323,11 +2322,6 @@ static void opt_thread_count(const char *arg)
|
|||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
static void opt_audio_bitrate(const char *arg)
|
|
||||||
{
|
|
||||||
audio_bit_rate = atoi(arg) * 1000;
|
|
||||||
}
|
|
||||||
|
|
||||||
static void opt_audio_rate(const char *arg)
|
static void opt_audio_rate(const char *arg)
|
||||||
{
|
{
|
||||||
audio_sample_rate = atoi(arg);
|
audio_sample_rate = atoi(arg);
|
||||||
@ -2906,7 +2900,6 @@ static void new_audio_stream(AVFormatContext *oc)
|
|||||||
codec_id = audio_codec_id;
|
codec_id = audio_codec_id;
|
||||||
audio_enc->codec_id = codec_id;
|
audio_enc->codec_id = codec_id;
|
||||||
|
|
||||||
audio_enc->bit_rate = audio_bit_rate;
|
|
||||||
if (audio_qscale > QSCALE_NONE) {
|
if (audio_qscale > QSCALE_NONE) {
|
||||||
audio_enc->flags |= CODEC_FLAG_QSCALE;
|
audio_enc->flags |= CODEC_FLAG_QSCALE;
|
||||||
audio_enc->global_quality = st->quality = FF_QP2LAMBDA * audio_qscale;
|
audio_enc->global_quality = st->quality = FF_QP2LAMBDA * audio_qscale;
|
||||||
@ -3392,7 +3385,7 @@ static void opt_target(const char *arg)
|
|||||||
opt_default("minrate", "1150000");
|
opt_default("minrate", "1150000");
|
||||||
opt_default("bufsize", "327680"); // 40*1024*8;
|
opt_default("bufsize", "327680"); // 40*1024*8;
|
||||||
|
|
||||||
audio_bit_rate = 224000;
|
opt_default("ab", "224000");
|
||||||
audio_sample_rate = 44100;
|
audio_sample_rate = 44100;
|
||||||
audio_channels = 2;
|
audio_channels = 2;
|
||||||
|
|
||||||
@ -3422,7 +3415,7 @@ static void opt_target(const char *arg)
|
|||||||
opt_default("flags", "+SCAN_OFFSET");
|
opt_default("flags", "+SCAN_OFFSET");
|
||||||
|
|
||||||
|
|
||||||
audio_bit_rate = 224000;
|
opt_default("ab", "224000");
|
||||||
audio_sample_rate = 44100;
|
audio_sample_rate = 44100;
|
||||||
|
|
||||||
opt_default("packetsize", "2324");
|
opt_default("packetsize", "2324");
|
||||||
@ -3445,7 +3438,7 @@ static void opt_target(const char *arg)
|
|||||||
opt_default("packetsize", "2048"); // from www.mpucoder.com: DVD sectors contain 2048 bytes of data, this is also the size of one pack.
|
opt_default("packetsize", "2048"); // from www.mpucoder.com: DVD sectors contain 2048 bytes of data, this is also the size of one pack.
|
||||||
opt_default("muxrate", "10080000"); // from mplex project: data_rate = 1260000. mux_rate = data_rate * 8
|
opt_default("muxrate", "10080000"); // from mplex project: data_rate = 1260000. mux_rate = data_rate * 8
|
||||||
|
|
||||||
audio_bit_rate = 448000;
|
opt_default("ab", "448000");
|
||||||
audio_sample_rate = 48000;
|
audio_sample_rate = 48000;
|
||||||
|
|
||||||
} else if(!strncmp(arg, "dv", 2)) {
|
} else if(!strncmp(arg, "dv", 2)) {
|
||||||
@ -3634,7 +3627,6 @@ const OptionDef options[] = {
|
|||||||
|
|
||||||
/* audio options */
|
/* audio options */
|
||||||
{ "aframes", OPT_INT | HAS_ARG | OPT_AUDIO, {(void*)&max_frames[CODEC_TYPE_AUDIO]}, "set the number of audio frames to record", "number" },
|
{ "aframes", OPT_INT | HAS_ARG | OPT_AUDIO, {(void*)&max_frames[CODEC_TYPE_AUDIO]}, "set the number of audio frames to record", "number" },
|
||||||
{ "ab", HAS_ARG | OPT_AUDIO, {(void*)opt_audio_bitrate}, "set audio bitrate (in kbit/s)", "bitrate", },
|
|
||||||
{ "aq", OPT_FLOAT | HAS_ARG | OPT_AUDIO, {(void*)&audio_qscale}, "set audio quality (codec-specific)", "quality", },
|
{ "aq", OPT_FLOAT | HAS_ARG | OPT_AUDIO, {(void*)&audio_qscale}, "set audio quality (codec-specific)", "quality", },
|
||||||
{ "ar", HAS_ARG | OPT_AUDIO, {(void*)opt_audio_rate}, "set audio sampling rate (in Hz)", "rate" },
|
{ "ar", HAS_ARG | OPT_AUDIO, {(void*)opt_audio_rate}, "set audio sampling rate (in Hz)", "rate" },
|
||||||
{ "ac", HAS_ARG | OPT_AUDIO, {(void*)opt_audio_channels}, "set number of audio channels", "channels" },
|
{ "ac", HAS_ARG | OPT_AUDIO, {(void*)opt_audio_channels}, "set number of audio channels", "channels" },
|
||||||
|
@ -411,7 +411,7 @@ static const char* context_to_name(void* ptr) {
|
|||||||
#define AV_CODEC_DEFAULT_BITRATE 200*1000
|
#define AV_CODEC_DEFAULT_BITRATE 200*1000
|
||||||
|
|
||||||
static const AVOption options[]={
|
static const AVOption options[]={
|
||||||
{"b", "set video bitrate (in bits/s)", OFFSET(bit_rate), FF_OPT_TYPE_INT, AV_CODEC_DEFAULT_BITRATE, INT_MIN, INT_MAX, V|A|E},
|
{"b", "set bitrate (in bits/s)", OFFSET(bit_rate), FF_OPT_TYPE_INT, AV_CODEC_DEFAULT_BITRATE, INT_MIN, INT_MAX, V|A|E},
|
||||||
{"bt", "set video bitrate tolerance (in bits/s)", OFFSET(bit_rate_tolerance), FF_OPT_TYPE_INT, AV_CODEC_DEFAULT_BITRATE*20, 1, INT_MAX, V|E},
|
{"bt", "set video bitrate tolerance (in bits/s)", OFFSET(bit_rate_tolerance), FF_OPT_TYPE_INT, AV_CODEC_DEFAULT_BITRATE*20, 1, INT_MAX, V|E},
|
||||||
{"flags", NULL, OFFSET(flags), FF_OPT_TYPE_FLAGS, DEFAULT, INT_MIN, INT_MAX, V|A|E|D, "flags"},
|
{"flags", NULL, OFFSET(flags), FF_OPT_TYPE_FLAGS, DEFAULT, INT_MIN, INT_MAX, V|A|E|D, "flags"},
|
||||||
{"mv4", "use four motion vector by macroblock (mpeg4)", 0, FF_OPT_TYPE_CONST, CODEC_FLAG_4MV, INT_MIN, INT_MAX, V|E, "flags"},
|
{"mv4", "use four motion vector by macroblock (mpeg4)", 0, FF_OPT_TYPE_CONST, CODEC_FLAG_4MV, INT_MIN, INT_MAX, V|E, "flags"},
|
||||||
|
@ -114,7 +114,7 @@ fi
|
|||||||
# create the data directory if it does not exist
|
# create the data directory if it does not exist
|
||||||
mkdir -p $datadir
|
mkdir -p $datadir
|
||||||
|
|
||||||
FFMPEG_OPTS="-y -flags +bitexact -dct fastint -idct simple"
|
FFMPEG_OPTS="-y -flags +bitexact -dct fastint -idct simple -ab 64k"
|
||||||
|
|
||||||
do_ffmpeg()
|
do_ffmpeg()
|
||||||
{
|
{
|
||||||
@ -192,7 +192,7 @@ do_video_encoding()
|
|||||||
do_audio_encoding()
|
do_audio_encoding()
|
||||||
{
|
{
|
||||||
file=${outfile}$1
|
file=${outfile}$1
|
||||||
do_ffmpeg $file -y -ab 128 -ac 2 -f s16le -i $pcm_src $3 $file
|
do_ffmpeg $file -y -ab 128k -ac 2 -f s16le -i $pcm_src $3 $file
|
||||||
}
|
}
|
||||||
|
|
||||||
do_audio_decoding()
|
do_audio_decoding()
|
||||||
@ -236,7 +236,7 @@ echo "ffmpeg benchmarks" > $benchfile
|
|||||||
###################################
|
###################################
|
||||||
# generate reference for quality check
|
# generate reference for quality check
|
||||||
do_ffmpeg_nocheck $raw_ref -y -f pgmyuv -i $raw_src -an -f rawvideo $raw_ref
|
do_ffmpeg_nocheck $raw_ref -y -f pgmyuv -i $raw_src -an -f rawvideo $raw_ref
|
||||||
do_ffmpeg_nocheck $pcm_ref -y -ab 128 -ac 2 -ar 44100 -f s16le -i $pcm_src -f wav $pcm_ref
|
do_ffmpeg_nocheck $pcm_ref -y -ab 128k -ac 2 -ar 44100 -f s16le -i $pcm_src -f wav $pcm_ref
|
||||||
|
|
||||||
###################################
|
###################################
|
||||||
if [ -n "$do_mpeg" ] ; then
|
if [ -n "$do_mpeg" ] ; then
|
||||||
@ -252,7 +252,7 @@ do_video_encoding mpeg2.mpg "-qscale 10" pgmyuv "-vcodec mpeg2video -f mpeg1vide
|
|||||||
do_video_decoding
|
do_video_decoding
|
||||||
|
|
||||||
# mpeg2 encoding intra vlc qprd
|
# mpeg2 encoding intra vlc qprd
|
||||||
do_video_encoding mpeg2ivlc-qprd.mpg "-b 500k -bf 2 -flags +trell+qprd+mv0 -flags2 +ivlc -cmp 2 -subcmp 2 -mbd rd" pgmyuv "-vcodec mpeg2video -f mpeg2video"
|
do_video_encoding mpeg2ivlc-qprd.mpg "-vb 500k -bf 2 -flags +trell+qprd+mv0 -flags2 +ivlc -cmp 2 -subcmp 2 -mbd rd" pgmyuv "-vcodec mpeg2video -f mpeg2video"
|
||||||
|
|
||||||
# mpeg2 decoding
|
# mpeg2 decoding
|
||||||
do_video_decoding
|
do_video_decoding
|
||||||
@ -389,7 +389,7 @@ fi
|
|||||||
###################################
|
###################################
|
||||||
if [ -n "$do_mp4psp" ] ; then
|
if [ -n "$do_mp4psp" ] ; then
|
||||||
# mp4 PSP style
|
# mp4 PSP style
|
||||||
do_video_encoding mpeg4-PSP.mp4 "-b 768k -s 320x240" psp "-ar 24000 -ab 32 -i $raw_src"
|
do_video_encoding mpeg4-PSP.mp4 "-vb 768k -s 320x240" psp "-ar 24000 -ab 32k -i $raw_src"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
###################################
|
###################################
|
||||||
@ -530,7 +530,7 @@ fi
|
|||||||
###################################
|
###################################
|
||||||
if [ -n "$do_g726" ] ; then
|
if [ -n "$do_g726" ] ; then
|
||||||
# g726
|
# g726
|
||||||
do_audio_encoding g726.wav "-ar 44100" "-ab 32 -ac 1 -ar 8000 -acodec g726"
|
do_audio_encoding g726.wav "-ar 44100" "-ab 32k -ac 1 -ar 8000 -acodec g726"
|
||||||
do_audio_decoding
|
do_audio_decoding
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user