Add recording to aac file

It is just an alias for mp4.

PR #3978 <https://github.com/Genymobile/scrcpy/pull/3978>
This commit is contained in:
Romain Vimont 2023-05-07 12:38:32 +02:00
parent 7321db6f28
commit b11b363e8e
3 changed files with 14 additions and 1 deletions

View file

@ -1496,6 +1496,9 @@ get_record_format(const char *name) {
if (!strcmp(name, "opus")) { if (!strcmp(name, "opus")) {
return SC_RECORD_FORMAT_OPUS; return SC_RECORD_FORMAT_OPUS;
} }
if (!strcmp(name, "aac")) {
return SC_RECORD_FORMAT_AAC;
}
return 0; return 0;
} }
@ -1996,6 +1999,13 @@ parse_args_with_getopt(struct scrcpy_cli_args *args, int argc, char *argv[],
"(try with --audio-codec=opus)"); "(try with --audio-codec=opus)");
return false; return false;
} }
if (opts->record_format == SC_RECORD_FORMAT_AAC
&& opts->audio_codec != SC_CODEC_AAC) {
LOGE("Recording to AAC file requires an AAC audio stream "
"(try with --audio-codec=aac)");
return false;
}
} }
if (opts->audio_codec == SC_CODEC_RAW) { if (opts->audio_codec == SC_CODEC_RAW) {

View file

@ -24,13 +24,15 @@ enum sc_record_format {
SC_RECORD_FORMAT_M4A, SC_RECORD_FORMAT_M4A,
SC_RECORD_FORMAT_MKA, SC_RECORD_FORMAT_MKA,
SC_RECORD_FORMAT_OPUS, SC_RECORD_FORMAT_OPUS,
SC_RECORD_FORMAT_AAC,
}; };
static inline bool static inline bool
sc_record_format_is_audio_only(enum sc_record_format fmt) { sc_record_format_is_audio_only(enum sc_record_format fmt) {
return fmt == SC_RECORD_FORMAT_M4A return fmt == SC_RECORD_FORMAT_M4A
|| fmt == SC_RECORD_FORMAT_MKA || fmt == SC_RECORD_FORMAT_MKA
|| fmt == SC_RECORD_FORMAT_OPUS; || fmt == SC_RECORD_FORMAT_OPUS
|| fmt == SC_RECORD_FORMAT_AAC;
} }
enum sc_codec { enum sc_codec {

View file

@ -62,6 +62,7 @@ sc_recorder_get_format_name(enum sc_record_format format) {
switch (format) { switch (format) {
case SC_RECORD_FORMAT_MP4: case SC_RECORD_FORMAT_MP4:
case SC_RECORD_FORMAT_M4A: case SC_RECORD_FORMAT_M4A:
case SC_RECORD_FORMAT_AAC:
return "mp4"; return "mp4";
case SC_RECORD_FORMAT_MKV: case SC_RECORD_FORMAT_MKV:
case SC_RECORD_FORMAT_MKA: case SC_RECORD_FORMAT_MKA: