mirror of
https://github.com/outbackdingo/UltraGrid.git
synced 2026-03-21 17:40:23 +00:00
lavc audio enc: improved error reporting
- print error if:
1. `uv -s testcard -A Opus --param audio-lavc-encoder=nonsense`
2. `uv -s testcard -A Opus --param audio-lavc-encoder=libopus` but libopus
was not compiled in
- print requested encoder name if not suitable to encode the codec,
eg. `uv -t testcard -A Opus --param audio-lavc-encoder=AAC`
This commit is contained in:
@@ -144,8 +144,10 @@ static void print_libav_audio_error(int verbosity, const char *msg, int rc) {
|
||||
static const struct AVCodec *
|
||||
init_encoder(enum AVCodecID codec_id, const char *preferred_encoder)
|
||||
{
|
||||
if (get_commandline_param("audio-lavc-encoder") != NULL) {
|
||||
preferred_encoder = get_commandline_param("audio-lavc-encoder");
|
||||
const char *const requested_encoder =
|
||||
get_commandline_param("audio-lavc-encoder");
|
||||
if (requested_encoder != NULL) {
|
||||
preferred_encoder = requested_encoder;
|
||||
}
|
||||
const struct AVCodec *ret = NULL;
|
||||
if (preferred_encoder) {
|
||||
@@ -155,6 +157,12 @@ init_encoder(enum AVCodecID codec_id, const char *preferred_encoder)
|
||||
"Requested encoder %s cannot handle "
|
||||
"specified codec!\n",
|
||||
preferred_encoder);
|
||||
assert(preferred_encoder == requested_encoder);
|
||||
return NULL;
|
||||
}
|
||||
if (ret == NULL && requested_encoder != NULL) {
|
||||
MSG(ERROR, "Requested encoder %s was not found!\n",
|
||||
requested_encoder);
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user