     
     @objc override public var description: String {
         get {
-            return "id : \(self.id), sources: \(String(describing: self.sources))"
+            return "id : \(self.id)," +
+                "\n sources: \(String(describing: self.sources))," +
+                "\n duration: \(duration)," +
+                "\n mediaType: \(mediaType.description)," +
+                "\n metadata: \(String(describing: metadata))," +
+                "\n name: \(String(describing: name))"
         }
     }
     

    case live
    case vod
    case unknown
}

fileprivate let idKey = "id"

    @objc public var duration: TimeInterval = 0
    @objc public var mediaType: MediaType = .unknown
    @objc public var metadata: [String: String]?
    @objc public var name: String?
   
    var vrData: VRData?
    public var tags: String? {
