summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorKarl 'vollmerk' Vollmer <vollmer@ampache.org>2006-06-09 16:41:27 +0000
committerKarl 'vollmerk' Vollmer <vollmer@ampache.org>2006-06-09 16:41:27 +0000
commit547494de2924c9709a03db6f0b596e9d5a6540eb (patch)
tree0fe26dc5fa2785dce23ad25c37c524124b89891a /lib
parent7e5654af67f1f24211c9cde4136cd396a71903b7 (diff)
downloadampache-547494de2924c9709a03db6f0b596e9d5a6540eb.tar.gz
ampache-547494de2924c9709a03db6f0b596e9d5a6540eb.tar.bz2
ampache-547494de2924c9709a03db6f0b596e9d5a6540eb.zip
some logic fixes for auto-transcoding
Diffstat (limited to 'lib')
-rw-r--r--lib/class/song.class.php37
1 files changed, 28 insertions, 9 deletions
diff --git a/lib/class/song.class.php b/lib/class/song.class.php
index bc86c922..d85e0a53 100644
--- a/lib/class/song.class.php
+++ b/lib/class/song.class.php
@@ -48,6 +48,9 @@ class Song {
var $addition_time;
var $update_time;
+ /* Setting Variables */
+ var $_transcoded = false;
+
/*!
@function Song
@discussion Song class, for modifing a song.
@@ -744,23 +747,32 @@ class Song {
*/
function native_stream() {
+ if ($this->_transcode) { return false; }
+
switch ($this->type) {
//TODO: fill out these cases once we have it working for m4a
- case "m4a":
- $return = conf('transcode_m4a');
+ case 'm4a':
+ if (conf('transcode_m4a')) { break; }
+ return true;
break;
case 'flac':
- $return = conf('transcode_flac');
+ if (conf('transcode_flac')) { break; }
+ return true;
break;
case 'mpc':
- $return = conf('transcode_mpc');
+ if (conf('transcode_mpc')) { break; }
+ return true;
break;
default:
- $return = true;
+ return true;
break;
} // end switch
- return $return;
+ /* If we've made it this far then we must be trying to transcode */
+ $this->_transcode = true;
+ $this->format_type();
+
+ return false;
} // end native_stream
@@ -775,16 +787,23 @@ class Song {
if (!$this->native_stream()) {
switch ($this->type) {
- case "m4a":
- $return = "stream_cmd_m4a";
+ case 'm4a':
+ $return = 'stream_cmd_m4a';
+ break;
+ case 'flac':
+ $return = 'stream_cmd_flac';
+ break;
+ case 'mpc':
+ $return = 'stream_cmd_mpc';
break;
default:
- $return = "downsample_cmd";
+ $return = 'downsample_cmd';
break;
} // end switch
} // end if not native_stream
return $return;
+
} // end stream_cmd
} // end of song class