SWITCH_FILE_DATA_DOUBLE = (1 << 6) - Read data in doubles
SWITCH_FILE_DATA_RAW = (1 << 7) - Read data as is
SWITCH_FILE_PAUSE = (1 << 8) - Pause
+SWITCH_FILE_NATIVE = (1 << 8) - File is in native format (no transcoding)
</pre>
*/
typedef enum {
SWITCH_FILE_DATA_FLOAT = (1 << 5),
SWITCH_FILE_DATA_DOUBLE = (1 << 6),
SWITCH_FILE_DATA_RAW = (1 << 7),
- SWITCH_FILE_PAUSE = (1 << 8)
+ SWITCH_FILE_PAUSE = (1 << 8),
+ SWITCH_FILE_NATIVE = (1 << 9)
} switch_file_flag_t;
typedef enum {
handle->seekable = 1;
handle->speed = 0;
handle->private_info = context;
+ handle->flags |= SWITCH_FILE_NATIVE;
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_INFO, "Opening File [%s] %dhz\n", path, handle->samplerate);
switch_core_session_reset(session);
return SWITCH_STATUS_NOTFOUND;
}
+ if (switch_test_flag(fh, SWITCH_FILE_NATIVE)) {
+ asis = 1;
+ }
write_frame.data = abuf;