Exemple #1
0
 /**
  * BaseStreamer constructor.
  *
  * @param $song Song|string A Song object, or its ID.
  */
 public function __construct($song)
 {
     $this->song = $song instanceof Song ? $song : Song::findOrFail($song);
     if (!file_exists($this->song->path)) {
         abort(404);
     }
     // Hard code the content type instead of relying on PHP's fileinfo()
     // or even Symfony's MIMETypeGuesser, since they appear to be wrong sometimes.
     $this->contentType = 'audio/' . pathinfo($this->song->path, PATHINFO_EXTENSION);
     // Turn off error reporting to make sure our stream isn't interfered.
     @error_reporting(0);
 }
Exemple #2
0
 /**
  * Get the lyrics of a song.
  *
  * @param $id
  *
  * @return \Illuminate\Http\JsonResponse
  */
 public function getLyrics($id)
 {
     return response()->json(Song::findOrFail($id)->lyrics);
 }