test.go 7.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162
  1. package emby
  2. import "time"
  3. type T struct {
  4. Name string `json:"Name"`
  5. OriginalTitle string `json:"OriginalTitle"`
  6. ServerId string `json:"ServerId"`
  7. Id string `json:"Id"`
  8. Etag string `json:"Etag"`
  9. DateCreated time.Time `json:"DateCreated"`
  10. CanDelete bool `json:"CanDelete"`
  11. CanDownload bool `json:"CanDownload"`
  12. PresentationUniqueKey string `json:"PresentationUniqueKey"`
  13. Container string `json:"Container"`
  14. SortName string `json:"SortName"`
  15. PremiereDate time.Time `json:"PremiereDate"`
  16. ExternalUrls []struct {
  17. Name string `json:"Name"`
  18. Url string `json:"Url"`
  19. } `json:"ExternalUrls"`
  20. MediaSources []struct {
  21. Protocol string `json:"Protocol"`
  22. Id string `json:"Id"`
  23. Path string `json:"Path"`
  24. Type string `json:"Type"`
  25. Container string `json:"Container"`
  26. Size int64 `json:"Size"`
  27. Name string `json:"Name"`
  28. IsRemote bool `json:"IsRemote"`
  29. RunTimeTicks int64 `json:"RunTimeTicks"`
  30. SupportsTranscoding bool `json:"SupportsTranscoding"`
  31. SupportsDirectStream bool `json:"SupportsDirectStream"`
  32. SupportsDirectPlay bool `json:"SupportsDirectPlay"`
  33. IsInfiniteStream bool `json:"IsInfiniteStream"`
  34. RequiresOpening bool `json:"RequiresOpening"`
  35. RequiresClosing bool `json:"RequiresClosing"`
  36. RequiresLooping bool `json:"RequiresLooping"`
  37. SupportsProbing bool `json:"SupportsProbing"`
  38. MediaStreams []struct {
  39. Codec string `json:"Codec"`
  40. TimeBase string `json:"TimeBase"`
  41. VideoRange string `json:"VideoRange,omitempty"`
  42. DisplayTitle string `json:"DisplayTitle"`
  43. NalLengthSize string `json:"NalLengthSize,omitempty"`
  44. IsInterlaced bool `json:"IsInterlaced"`
  45. BitRate int `json:"BitRate,omitempty"`
  46. BitDepth int `json:"BitDepth,omitempty"`
  47. RefFrames int `json:"RefFrames,omitempty"`
  48. IsDefault bool `json:"IsDefault"`
  49. IsForced bool `json:"IsForced"`
  50. Height int `json:"Height,omitempty"`
  51. Width int `json:"Width,omitempty"`
  52. AverageFrameRate int `json:"AverageFrameRate,omitempty"`
  53. RealFrameRate int `json:"RealFrameRate,omitempty"`
  54. Profile string `json:"Profile,omitempty"`
  55. Type string `json:"Type"`
  56. AspectRatio string `json:"AspectRatio,omitempty"`
  57. Index int `json:"Index"`
  58. IsExternal bool `json:"IsExternal"`
  59. IsTextSubtitleStream bool `json:"IsTextSubtitleStream"`
  60. SupportsExternalStream bool `json:"SupportsExternalStream"`
  61. Protocol string `json:"Protocol"`
  62. PixelFormat string `json:"PixelFormat,omitempty"`
  63. Level int `json:"Level,omitempty"`
  64. IsAnamorphic bool `json:"IsAnamorphic,omitempty"`
  65. CodecTag string `json:"CodecTag,omitempty"`
  66. Language string `json:"Language,omitempty"`
  67. DisplayLanguage string `json:"DisplayLanguage,omitempty"`
  68. ChannelLayout string `json:"ChannelLayout,omitempty"`
  69. Channels int `json:"Channels,omitempty"`
  70. SampleRate int `json:"SampleRate,omitempty"`
  71. } `json:"MediaStreams"`
  72. Formats []interface{} `json:"Formats"`
  73. Bitrate int `json:"Bitrate"`
  74. RequiredHttpHeaders struct {
  75. } `json:"RequiredHttpHeaders"`
  76. ReadAtNativeFramerate bool `json:"ReadAtNativeFramerate"`
  77. } `json:"MediaSources"`
  78. ProductionLocations []string `json:"ProductionLocations"`
  79. Path string `json:"Path"`
  80. Overview string `json:"Overview"`
  81. Taglines []interface{} `json:"Taglines"`
  82. Genres []string `json:"Genres"`
  83. CommunityRating float64 `json:"CommunityRating"`
  84. RunTimeTicks int64 `json:"RunTimeTicks"`
  85. ProductionYear int `json:"ProductionYear"`
  86. RemoteTrailers []interface{} `json:"RemoteTrailers"`
  87. ProviderIds struct {
  88. Tmdb string `json:"Tmdb"`
  89. Imdb string `json:"Imdb"`
  90. } `json:"ProviderIds"`
  91. IsFolder bool `json:"IsFolder"`
  92. ParentId string `json:"ParentId"`
  93. Type string `json:"Type"`
  94. People []struct {
  95. Name string `json:"Name"`
  96. Id string `json:"Id"`
  97. Role string `json:"Role"`
  98. Type string `json:"Type"`
  99. PrimaryImageTag string `json:"PrimaryImageTag,omitempty"`
  100. } `json:"People"`
  101. Studios []struct {
  102. Name string `json:"Name"`
  103. Id int `json:"Id"`
  104. } `json:"Studios"`
  105. GenreItems []struct {
  106. Name string `json:"Name"`
  107. Id int `json:"Id"`
  108. } `json:"GenreItems"`
  109. TagItems []interface{} `json:"TagItems"`
  110. LocalTrailerCount int `json:"LocalTrailerCount"`
  111. DisplayPreferencesId string `json:"DisplayPreferencesId"`
  112. PrimaryImageAspectRatio float64 `json:"PrimaryImageAspectRatio"`
  113. MediaStreams []struct {
  114. Codec string `json:"Codec"`
  115. TimeBase string `json:"TimeBase"`
  116. VideoRange string `json:"VideoRange,omitempty"`
  117. DisplayTitle string `json:"DisplayTitle"`
  118. NalLengthSize string `json:"NalLengthSize,omitempty"`
  119. IsInterlaced bool `json:"IsInterlaced"`
  120. BitRate int `json:"BitRate,omitempty"`
  121. BitDepth int `json:"BitDepth,omitempty"`
  122. RefFrames int `json:"RefFrames,omitempty"`
  123. IsDefault bool `json:"IsDefault"`
  124. IsForced bool `json:"IsForced"`
  125. Height int `json:"Height,omitempty"`
  126. Width int `json:"Width,omitempty"`
  127. AverageFrameRate int `json:"AverageFrameRate,omitempty"`
  128. RealFrameRate int `json:"RealFrameRate,omitempty"`
  129. Profile string `json:"Profile,omitempty"`
  130. Type string `json:"Type"`
  131. AspectRatio string `json:"AspectRatio,omitempty"`
  132. Index int `json:"Index"`
  133. IsExternal bool `json:"IsExternal"`
  134. IsTextSubtitleStream bool `json:"IsTextSubtitleStream"`
  135. SupportsExternalStream bool `json:"SupportsExternalStream"`
  136. Protocol string `json:"Protocol"`
  137. PixelFormat string `json:"PixelFormat,omitempty"`
  138. Level int `json:"Level,omitempty"`
  139. IsAnamorphic bool `json:"IsAnamorphic,omitempty"`
  140. CodecTag string `json:"CodecTag,omitempty"`
  141. Language string `json:"Language,omitempty"`
  142. DisplayLanguage string `json:"DisplayLanguage,omitempty"`
  143. ChannelLayout string `json:"ChannelLayout,omitempty"`
  144. Channels int `json:"Channels,omitempty"`
  145. SampleRate int `json:"SampleRate,omitempty"`
  146. } `json:"MediaStreams"`
  147. ImageTags struct {
  148. Primary string `json:"Primary"`
  149. } `json:"ImageTags"`
  150. BackdropImageTags []string `json:"BackdropImageTags"`
  151. Chapters []struct {
  152. StartPositionTicks int64 `json:"StartPositionTicks"`
  153. Name string `json:"Name"`
  154. } `json:"Chapters"`
  155. MediaType string `json:"MediaType"`
  156. LockedFields []interface{} `json:"LockedFields"`
  157. LockData bool `json:"LockData"`
  158. Width int `json:"Width"`
  159. Height int `json:"Height"`
  160. }