MEDIAMUXER_CONTAINER_FORMAT_3GP = MEDIA_FORMAT_CONTAINER_3GP, /**< The mediamuxer output format is 3GP container */
MEDIAMUXER_CONTAINER_FORMAT_WAV = MEDIA_FORMAT_CONTAINER_WAV, /**< The mediamuxer output format is WAV container */
MEDIAMUXER_CONTAINER_FORMAT_AMR_NB = MEDIA_FORMAT_AMR_NB, /**< The mediamuxer output format is ARM_NB container */
- MEDIAMUXER_CONTAINER_FORMAT_AMR_WB = MEDIA_FORMAT_AMR_WB /**< The mediamuxer output format is AMR_WB container */
+ MEDIAMUXER_CONTAINER_FORMAT_AMR_WB = MEDIA_FORMAT_AMR_WB, /**< The mediamuxer output format is AMR_WB container */
+ MEDIAMUXER_CONTAINER_FORMAT_AAC_ADTS = MEDIA_FORMAT_CONTAINER_AAC_ADTS /**< The mediamuxer output format is AAC_ADTS container */
} mediamuxer_output_format_e;
/**
&& format != MEDIAMUXER_CONTAINER_FORMAT_3GP
&& format != MEDIAMUXER_CONTAINER_FORMAT_WAV
&& format != MEDIAMUXER_CONTAINER_FORMAT_AMR_NB
- && format != MEDIAMUXER_CONTAINER_FORMAT_AMR_WB) {
+ && format != MEDIAMUXER_CONTAINER_FORMAT_AMR_WB
+ && format != MEDIAMUXER_CONTAINER_FORMAT_AAC_ADTS) {
MX_E("Unsupported Container format: %d \n", format);
handle->muxer_state = MEDIAMUXER_STATE_NONE;
return MEDIAMUXER_ERROR_INVALID_PARAMETER;
|| mimetype == MEDIA_FORMAT_AMR_NB))
|| (mx_handle_gst->muxed_format == MEDIAMUXER_CONTAINER_FORMAT_WAV
&& (mimetype == MEDIA_FORMAT_PCM))
+ || (mx_handle_gst->muxed_format == MEDIAMUXER_CONTAINER_FORMAT_AAC_ADTS
+ && (mimetype == MEDIA_FORMAT_AAC))
|| (mx_handle_gst->muxed_format == MEDIAMUXER_CONTAINER_FORMAT_AMR_NB
&& (mimetype == MEDIA_FORMAT_AMR_NB))
|| (mx_handle_gst->muxed_format == MEDIAMUXER_CONTAINER_FORMAT_AMR_WB
if (gst_handle->muxed_format != MEDIAMUXER_CONTAINER_FORMAT_MP4
&& gst_handle->muxed_format != MEDIAMUXER_CONTAINER_FORMAT_3GP
&& gst_handle->muxed_format != MEDIAMUXER_CONTAINER_FORMAT_WAV
+ && gst_handle->muxed_format != MEDIAMUXER_CONTAINER_FORMAT_AAC_ADTS
&& gst_handle->muxed_format != MEDIAMUXER_CONTAINER_FORMAT_AMR_NB
&& gst_handle->muxed_format != MEDIAMUXER_CONTAINER_FORMAT_AMR_WB) {
MX_E("Unsupported container-format. Currently suports only MP4, 3GP, WAV & AMR\n");
/* gst_handle->muxer = gst_element_factory_make("qtmux", "qtmux"); */
else if (gst_handle->muxed_format == MEDIAMUXER_CONTAINER_FORMAT_WAV)
gst_handle->muxer = gst_element_factory_make("wavenc", "wavenc");
+ else if (gst_handle->muxed_format == MEDIAMUXER_CONTAINER_FORMAT_AAC_ADTS)
+ gst_handle->muxer = gst_element_factory_make("avmux_adts", "avmux_adts");
else if (gst_handle->muxed_format == MEDIAMUXER_CONTAINER_FORMAT_AMR_NB
|| gst_handle->muxed_format == MEDIAMUXER_CONTAINER_FORMAT_AMR_WB)
gst_handle->muxer = gst_element_factory_make("avmux_amr", "avmux_amr");
MEDIA_FORMAT_ERROR_INVALID_OPERATION) {
if (mimetype == MEDIA_FORMAT_AAC_LC || mimetype == MEDIA_FORMAT_AAC_HE || mimetype == MEDIA_FORMAT_AAC_HE_PS)
current->parser = gst_element_factory_make("aacparse", str_parser);
- else if (mimetype == MEDIA_FORMAT_PCM || (mimetype == MEDIA_FORMAT_AMR_NB && gst_handle->muxed_format == MEDIAMUXER_CONTAINER_FORMAT_3GP))
- MX_I("Do Nothing, as there is no need of parser for wav & 3pg(amr-nb) \n");
+ else if (mimetype == MEDIA_FORMAT_PCM
+ || (mimetype == MEDIA_FORMAT_AAC && gst_handle->muxed_format == MEDIAMUXER_CONTAINER_FORMAT_AAC_ADTS)
+ || (mimetype == MEDIA_FORMAT_AMR_NB && gst_handle->muxed_format == MEDIAMUXER_CONTAINER_FORMAT_3GP))
+ MX_I("Do Nothing, as there is no need of parser for wav, 3gp(amr-nb) and AAC_ADTS\n");
else if (mimetype == MEDIA_FORMAT_AMR_NB || mimetype == MEDIA_FORMAT_AMR_WB)
current->parser = gst_element_factory_make("amrparse", str_parser);
} else {
}
gst_bin_add_many(GST_BIN(gst_handle->pipeline), current->appsrc, NULL);
- if (mimetype == MEDIA_FORMAT_PCM || (mimetype == MEDIA_FORMAT_AMR_NB && gst_handle->muxed_format == MEDIAMUXER_CONTAINER_FORMAT_3GP)) {
- MX_I("Do Nothing, as there is no need of parser for wav & 3pg(amr-nb) \n");
+ if (mimetype == MEDIA_FORMAT_PCM
+ || (mimetype == MEDIA_FORMAT_AAC && gst_handle->muxed_format == MEDIAMUXER_CONTAINER_FORMAT_AAC_ADTS)
+ || (mimetype == MEDIA_FORMAT_AMR_NB && gst_handle->muxed_format == MEDIAMUXER_CONTAINER_FORMAT_3GP)) {
+ MX_I("Do Nothing, as there is no need of parser for wav and AAC_ADTS\n");
} else {
if (!current->parser) {
MX_E("One element (audio-parser) could not be created. Exiting.\n");
#endif
/* For wav, wavenc is muxer */
if (gst_handle->muxed_format == MEDIAMUXER_CONTAINER_FORMAT_WAV
+ || gst_handle->muxed_format == MEDIAMUXER_CONTAINER_FORMAT_AAC_ADTS
|| gst_handle->muxed_format == MEDIAMUXER_CONTAINER_FORMAT_AMR_NB
|| gst_handle->muxed_format == MEDIAMUXER_CONTAINER_FORMAT_AMR_WB
|| (gst_handle->muxed_format == MEDIAMUXER_CONTAINER_FORMAT_3GP && mimetype == MEDIA_FORMAT_AMR_NB)) {
} else if (strncmp(data_sink, "42", 2) == 0) {
op_uri = "MuxTest_wb.amr";
ret = mediamuxer_set_data_sink(myMuxer, op_uri, MEDIAMUXER_CONTAINER_FORMAT_AMR_WB);
+ } else if (strncmp(data_sink, "51", 2) == 0) {
+ op_uri = "MuxTest_adts.aac";
+ ret = mediamuxer_set_data_sink(myMuxer, op_uri, MEDIAMUXER_CONTAINER_FORMAT_AAC_ADTS);
} else {
g_print("Invalid option choosen. Only the displayed options are valid\n");
ret = MEDIAMUXER_ERROR_INVALID_PARAMETER;
if (media_format_set_video_mime(media_format, MEDIA_FORMAT_H263) == MEDIA_FORMAT_ERROR_INVALID_OPERATION)
g_print("Problem during media_format_set_audio_mime operation\n");
} else if (strncmp(data_sink, "31", 2) == 0
- || strncmp(data_sink, "41", 2) == 0 || strncmp(data_sink, "42", 2) == 0) {
+ || strncmp(data_sink, "41", 2) == 0 || strncmp(data_sink, "42", 2) == 0
+ || strncmp(data_sink, "51", 2) == 0) {
g_print("Add video track is invalid for wav/amr\n");
return 1;
}
} else if (strncmp(data_sink, "42", 2) == 0) {
if (media_format_set_audio_mime(media_format_a, MEDIA_FORMAT_AMR_WB) == MEDIA_FORMAT_ERROR_INVALID_OPERATION)
g_print("Problem during media_format_set_audio_mime operation for amr-wb audio\n");
+ } else if (strncmp(data_sink, "51", 2) == 0) {
+ if (media_format_set_audio_mime(media_format_a, MEDIA_FORMAT_AAC) == MEDIA_FORMAT_ERROR_INVALID_OPERATION)
+ g_print("Problem during media_format_set_audio_mime operation for aac-adts audio\n");
}
if (validate_with_codec) {
g_print("(11) mp4 (h264+AAC) (12) mp4 (h263+AAC) (13) mp4 (mpeg4+AAC) \
\n(21) 3gp (h264+AAC) (22) 3gp (h263+AAC) (23) 3gp (h264+AMR) (23) 3gp (h263+AMR) \
\n(31) wav \
- \n(41) amr-nb (42) amr-wb \n");
+ \n(41) amr-nb (42) amr-wb \
+ \n(51) aac (adts)\n");
} else if (g_menu_state == CURRENT_STATUS_RAW_VIDEO_FILENAME) {
g_print("*** input raw video file name");
} else if (g_menu_state == CURRENT_STATUS_SET_VENC_INFO) {