diff options
-rw-r--r-- | Android.mk | 47 | ||||
-rw-r--r-- | Android_bp (renamed from Android.bp) | 24 | ||||
-rw-r--r-- | CleanSpec.mk | 4 | ||||
-rw-r--r-- | compress.c | 5 | ||||
-rw-r--r-- | include/tinycompress/tinycompress.h | 14 |
5 files changed, 93 insertions, 1 deletions
diff --git a/Android.mk b/Android.mk new file mode 100644 index 0000000..6242708 --- /dev/null +++ b/Android.mk @@ -0,0 +1,47 @@ +ifneq ($(AUDIO_USE_STUB_HAL), true) +LOCAL_PATH := $(call my-dir) + +include $(CLEAR_VARS) +LOCAL_CFLAGS := -Wno-macro-redefined -Wno-unused-function +ifeq ($(strip $(AUDIO_FEATURE_ENABLED_EXTENDED_COMPRESS_FORMAT)), true) +LOCAL_CFLAGS += -DENABLE_EXTENDED_COMPRESS_FORMAT +endif +LOCAL_C_INCLUDES := $(LOCAL_PATH)/include +LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/include +LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/techpack/audio/include +LOCAL_ADDITIONAL_DEPENDENCIES := $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr +LOCAL_SRC_FILES := compress.c utils.c +LOCAL_MODULE := libtinycompress +LOCAL_SHARED_LIBRARIES := libcutils libutils +LOCAL_MODULE_TAGS := optional +LOCAL_VENDOR_MODULE := true +include $(BUILD_SHARED_LIBRARY) + +include $(CLEAR_VARS) +LOCAL_CFLAGS := -Wno-macro-redefined -Wno-unused-function +LOCAL_C_INCLUDES := $(LOCAL_PATH)/include +LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/include +LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/techpack/audio/include +LOCAL_ADDITIONAL_DEPENDENCIES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr +LOCAL_SRC_FILES := cplay.c +LOCAL_MODULE := cplay +LOCAL_VENDOR_MODULE := true +LOCAL_SHARED_LIBRARIES := libcutils libutils libtinycompress +LOCAL_MODULE_TAGS := optional +include $(BUILD_EXECUTABLE) + +include $(CLEAR_VARS) +LOCAL_CFLAGS := -Wno-macro-redefined -Wno-unused-function +LOCAL_C_INCLUDES := $(LOCAL_PATH)/include +LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/include +LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/techpack/audio/include +LOCAL_ADDITIONAL_DEPENDENCIES := $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr +LOCAL_SRC_FILES := compress.c utils.c +LOCAL_CFLAGS += -DUSE_VENDOR_EXTN +LOCAL_CFLAGS += -DENABLE_EXTENDED_COMPRESS_FORMAT +LOCAL_MODULE := libtinycompress_vendor +LOCAL_SHARED_LIBRARIES := libcutils libutils +LOCAL_MODULE_TAGS := optional +LOCAL_VENDOR_MODULE := true +include $(BUILD_SHARED_LIBRARY) +endif @@ -25,6 +25,30 @@ cc_library_shared { ], } +cc_library_shared { + name: "libtinycompress_vendor", + vendor: true, + + cflags: [ + "-Wall", + "-Werror", + "-Wno-macro-redefined", + "-Wno-unused-function", + ], + export_include_dirs: ["include"], + srcs: [ + "compress.c", + "utils.c", + ], + shared_libs: [ + "libcutils", + "libutils", + ], + header_libs: [ + "device_kernel_headers", + ], +} + cc_binary { name: "cplay", vendor: true, diff --git a/CleanSpec.mk b/CleanSpec.mk index f7dec23..9eab8b3 100644 --- a/CleanSpec.mk +++ b/CleanSpec.mk @@ -44,7 +44,9 @@ #$(call add-clean-step, find $(OUT_DIR) -type f -name "IGTalkSession*" -print0 | xargs -0 rm -f) #$(call add-clean-step, rm -rf $(PRODUCT_OUT)/data/*) -$(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/bin/cplay) +$(call add-clean-step, rm -rf $(PRODUCT_OUT)/vendor/bin/cplay) +$(call add-clean-step, rm -rf $(PRODUCT_OUT)/vendor/lib64/libtinycompress.so) +$(call add-clean-step, rm -rf $(PRODUCT_OUT)/vendor/lib/libtinycompress.so) # ************************************************ # NEWER CLEAN STEPS MUST BE AT THE END OF THE LIST @@ -552,8 +552,13 @@ int compress_set_next_track_param(struct compress *compress, if (!is_compress_running(compress)) return oops(compress, ENODEV, "device not ready"); + if (codec_options == NULL) + return oops(compress, ENODEV, "codec_option NULL"); + +#ifdef SNDRV_COMPRESS_SET_NEXT_TRACK_PARAM if (ioctl(compress->fd, SNDRV_COMPRESS_SET_NEXT_TRACK_PARAM, codec_options)) return oops(compress, errno, "cannot set next track params\n"); +#endif return 0; } #endif diff --git a/include/tinycompress/tinycompress.h b/include/tinycompress/tinycompress.h index 0ab7134..62dcade 100644 --- a/include/tinycompress/tinycompress.h +++ b/include/tinycompress/tinycompress.h @@ -81,6 +81,8 @@ struct compr_gapless_mdata { struct compress; struct snd_compr_tstamp; +union snd_codec_options; +struct snd_compr_metadata; #ifdef ENABLE_EXTENDED_COMPRESS_FORMAT union snd_codec_options; @@ -254,6 +256,18 @@ int compress_set_next_track_param(struct compress *compress, #endif /* + * compress_set_next_track_param: set params of next compress stream in gapless + * + * return 0 on success, negative on error + * + * @compress: compress stream for which codec options has to be set + * @codec_options: codec options of compress stream based on codec type + */ + +int compress_set_next_track_param(struct compress *compress, + union snd_codec_options *codec_options); + +/* * is_codec_supported:check if the given codec is supported * returns true when supported, false if not * |