Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Black screen (audio and subs work) #147

Open
JosephScript opened this issue Oct 21, 2021 · 2 comments
Open

Black screen (audio and subs work) #147

JosephScript opened this issue Oct 21, 2021 · 2 comments
Assignees

Comments

@JosephScript
Copy link

I'm able to cast to my Chromecast plugged into my TV, there is sound and I can see the subtitles, however the video is a black screen. I have made sure all NPM modules are installed, checked that ffmpeg and ffprobe are also installed and in the correct paths.

Ubuntu 20.04.3 LTS 64-bit
Gnome 3.36.8
CPU: Intel® Core™ i7-10750H CPU @ 2.60GHz × 12
GPU: NVIDIA Corporation / NVIDIA GeForce RTX 2070/PCIe/SSE2
Using NVIDIA driver metapackage from nvidia-driver-470 (proprierary, tested)

Here is an example of a few seconds of the stream in debug mode:

Debug Output:

DEBUG=bridge,chromecast* node server
  bridge Full playlist: ["/home/joseph/Videos/video.720p.mkv"] +0ms
  bridge New selection contents: {"streamType":"VIDEO","subsPath":"","filePath":"/home/joseph/Videos/video.720p.mkv"} +1ms
  bridge Processing video file... +1ms
  bridge Found reusable subtitles file +2ms
  bridge File processed successfully +0ms
  chromecast NEW SELECTION +0ms
  chromecast Generated new session id: 85oxFdj2U4 +13ms
  chromecast Media title: Video 720p +0ms
  chromecast Setting media: {"contentId":"http://192.168.86.23:4000/cast?session=85oxFdj2U4","contentType":"video/*","streamType":"BUFFERED","metadata":{"metadataType":1,"images":[{"url":""}],"title":"Video 720p"},"textTrackStyle":{"backgroundColor":"#00000000","foregroundColor":"#FFFFFFFF","edgeType":"OUTLINE","edgeColor":"#000000FF","fontScale":"1.0","fontStyle":"NORMAL","fontFamily":"Droid Sans","fontGenericFamily":"SANS_SERIF","windowType":"NONE"},"tracks":[{"trackId":1,"type":"TEXT","trackContentType":"text/vtt","name":"Subtitles","subtype":"SUBTITLES","trackContentId":"http://192.168.86.23:4000/subswebplayer?session=85oxFdj2U4"}]} +0ms
  chromecast Setting opts: {"autoplay":false,"activeTrackIds":[1],"name":"b0c71ef4-2768-809b-2338-da41131a8be5.local","ip":null} +0ms
  chromecast Casting... +1ms
  chromecast-controller Player check: inactive +0ms
  chromecast-controller Starting new cast session... +0ms
  chromecast-controller Searching for device: b0c71ef4-2768-809b-2338-da41131a8be5.local +0ms
  chromecast-controller Found device ip: 192.168.86.33 +366ms
  chromecast-controller Player check: active +2s
  chromecast-controller Loaded new media in current session +724ms
  chromecast Cast started +3s
  chromecast Starting delayed playback... +2ms
  chromecast Obtained volume value: 1 +15ms
  chromecast:status Got Chromecast status +0ms
  chromecast:status {
  chromecast:status   mediaSessionId: 1,
  chromecast:status   playbackRate: 1,
  chromecast:status   playerState: 'PAUSED',
  chromecast:status   currentTime: 0.003,
  chromecast:status   supportedMediaCommands: 12303,
  chromecast:status   volume: { level: 1, muted: false },
  chromecast:status   activeTrackIds: [ 1 ],
  chromecast:status   currentItemId: 1,
  chromecast:status   repeatMode: 'REPEAT_OFF'
  chromecast:status } +0ms
  chromecast:status Got Chromecast status +2s
  chromecast:status {
  chromecast:status   mediaSessionId: 1,
  chromecast:status   playbackRate: 1,
  chromecast:status   playerState: 'BUFFERING',
  chromecast:status   currentTime: 0.003,
  chromecast:status   supportedMediaCommands: 12303,
  chromecast:status   volume: { level: 1, muted: false },
  chromecast:status   activeTrackIds: [ 1 ],
  chromecast:status   currentItemId: 1,
  chromecast:status   repeatMode: 'REPEAT_OFF'
  chromecast:status } +0ms
  chromecast Playback started +3s
  chromecast Started status interval +1ms
  chromecast:status Got Chromecast status +453ms
  chromecast:status {
  chromecast:status   mediaSessionId: 1,
  chromecast:status   playbackRate: 1,
  chromecast:status   playerState: 'PLAYING',
  chromecast:status   currentTime: 0.43217,
  chromecast:status   supportedMediaCommands: 12303,
  chromecast:status   volume: { level: 1, muted: false },
  chromecast:status   activeTrackIds: [ 1 ],
  chromecast:status   currentItemId: 1,
  chromecast:status   repeatMode: 'REPEAT_OFF'
  chromecast:status } +0ms
  chromecast:status Got Chromecast status +585ms
  chromecast:status {
  chromecast:status   mediaSessionId: 1,
  chromecast:status   playbackRate: 1,
  chromecast:status   playerState: 'PLAYING',
  chromecast:status   currentTime: 0.985444,
  chromecast:status   supportedMediaCommands: 12303,
  chromecast:status   volume: { level: 1, muted: false },
  chromecast:status   activeTrackIds: [ 1 ],
  chromecast:status   media: {
  chromecast:status     contentId: 'http://192.168.86.23:4000/cast?session=85oxFdj2U4',
  chromecast:status     contentType: 'video/*',
  chromecast:status     streamType: 'BUFFERED',
  chromecast:status     metadata: {
  chromecast:status       metadataType: 1,
  chromecast:status       images: [Array],
  chromecast:status       title: 'Video 720p'
  chromecast:status     },
  chromecast:status     textTrackStyle: {
  chromecast:status       backgroundColor: '#00000000',
  chromecast:status       foregroundColor: '#FFFFFFFF',
  chromecast:status       edgeType: 'OUTLINE',
  chromecast:status       edgeColor: '#000000FF',
  chromecast:status       fontScale: '1.0',
  chromecast:status       fontStyle: 'NORMAL',
  chromecast:status       fontFamily: 'Droid Sans',
  chromecast:status       fontGenericFamily: 'SANS_SERIF',
  chromecast:status       windowType: 'NONE'
  chromecast:status     },
  chromecast:status     tracks: [ [Object], [Object] ],
  chromecast:status     mediaCategory: 'VIDEO',
  chromecast:status     duration: 1311.069,
  chromecast:status     breakClips: [],
  chromecast:status     breaks: []
  chromecast:status   },
  chromecast:status   currentItemId: 1,
  chromecast:status   items: [
  chromecast:status     {
  chromecast:status       itemId: 1,
  chromecast:status       media: [Object],
  chromecast:status       autoplay: false,
  chromecast:status       activeTrackIds: [Array],
  chromecast:status       orderId: 0
  chromecast:status     }
  chromecast:status   ],
  chromecast:status   repeatMode: 'REPEAT_OFF'
  chromecast:status } +1ms
  chromecast:status Got Chromecast status +984ms
  chromecast:status {
  chromecast:status   mediaSessionId: 1,
  chromecast:status   playbackRate: 1,
  chromecast:status   playerState: 'PLAYING',
  chromecast:status   currentTime: 2.006414,
  chromecast:status   supportedMediaCommands: 12303,
  chromecast:status   volume: { level: 1, muted: false },
  chromecast:status   activeTrackIds: [ 1 ],
  chromecast:status   media: {
  chromecast:status     contentId: 'http://192.168.86.23:4000/cast?session=85oxFdj2U4',
  chromecast:status     contentType: 'video/*',
  chromecast:status     streamType: 'BUFFERED',
  chromecast:status     metadata: {
  chromecast:status       metadataType: 1,
  chromecast:status       images: [Array],
  chromecast:status       title: 'Video 720p'
  chromecast:status     },
  chromecast:status     textTrackStyle: {
  chromecast:status       backgroundColor: '#00000000',
  chromecast:status       foregroundColor: '#FFFFFFFF',
  chromecast:status       edgeType: 'OUTLINE',
  chromecast:status       edgeColor: '#000000FF',
  chromecast:status       fontScale: '1.0',
  chromecast:status       fontStyle: 'NORMAL',
  chromecast:status       fontFamily: 'Droid Sans',
  chromecast:status       fontGenericFamily: 'SANS_SERIF',
  chromecast:status       windowType: 'NONE'
  chromecast:status     },
  chromecast:status     tracks: [ [Object], [Object] ],
  chromecast:status     mediaCategory: 'VIDEO',
  chromecast:status     duration: 1311.069,
  chromecast:status     breakClips: [],
  chromecast:status     breaks: []
  chromecast:status   },
  chromecast:status   currentItemId: 1,
  chromecast:status   items: [
  chromecast:status     {
  chromecast:status       itemId: 1,
  chromecast:status       media: [Object],
  chromecast:status       autoplay: false,
  chromecast:status       activeTrackIds: [Array],
  chromecast:status       orderId: 0
  chromecast:status     }
  chromecast:status   ],
  chromecast:status   repeatMode: 'REPEAT_OFF'
  chromecast:status } +0ms
  chromecast:status Got Chromecast status +1s
  chromecast:status {
  chromecast:status   mediaSessionId: 1,
  chromecast:status   playbackRate: 1,
  chromecast:status   playerState: 'PLAYING',
  chromecast:status   currentTime: 2.879155,
  chromecast:status   supportedMediaCommands: 12303,
  chromecast:status   volume: { level: 1, muted: false },
  chromecast:status   activeTrackIds: [ 1 ],
  chromecast:status   media: {
  chromecast:status     contentId: 'http://192.168.86.23:4000/cast?session=85oxFdj2U4',
  chromecast:status     contentType: 'video/*',
  chromecast:status     streamType: 'BUFFERED',
  chromecast:status     metadata: {
  chromecast:status       metadataType: 1,
  chromecast:status       images: [Array],
  chromecast:status       title: 'Video 720p'
  chromecast:status     },
  chromecast:status     textTrackStyle: {
  chromecast:status       backgroundColor: '#00000000',
  chromecast:status       foregroundColor: '#FFFFFFFF',
  chromecast:status       edgeType: 'OUTLINE',
  chromecast:status       edgeColor: '#000000FF',
  chromecast:status       fontScale: '1.0',
  chromecast:status       fontStyle: 'NORMAL',
  chromecast:status       fontFamily: 'Droid Sans',
  chromecast:status       fontGenericFamily: 'SANS_SERIF',
  chromecast:status       windowType: 'NONE'
  chromecast:status     },
  chromecast:status     tracks: [ [Object], [Object] ],
  chromecast:status     mediaCategory: 'VIDEO',
  chromecast:status     duration: 1311.069,
  chromecast:status     breakClips: [],
  chromecast:status     breaks: []
  chromecast:status   },
  chromecast:status   currentItemId: 1,
  chromecast:status   items: [
  chromecast:status     {
  chromecast:status       itemId: 1,
  chromecast:status       media: [Object],
  chromecast:status       autoplay: false,
  chromecast:status       activeTrackIds: [Array],
  chromecast:status       orderId: 0
  chromecast:status     }
  chromecast:status   ],
  chromecast:status   repeatMode: 'REPEAT_OFF'
  chromecast:status } +1ms
  chromecast:status Got Chromecast status +1s
  chromecast:status {
  chromecast:status   mediaSessionId: 1,
  chromecast:status   playbackRate: 1,
  chromecast:status   playerState: 'PLAYING',
  chromecast:status   currentTime: 4.09406,
  chromecast:status   supportedMediaCommands: 12303,
  chromecast:status   volume: { level: 1, muted: false },
  chromecast:status   activeTrackIds: [ 1 ],
  chromecast:status   media: {
  chromecast:status     contentId: 'http://192.168.86.23:4000/cast?session=85oxFdj2U4',
  chromecast:status     contentType: 'video/*',
  chromecast:status     streamType: 'BUFFERED',
  chromecast:status     metadata: {
  chromecast:status       metadataType: 1,
  chromecast:status       images: [Array],
  chromecast:status       title: 'Video 720p'
  chromecast:status     },
  chromecast:status     textTrackStyle: {
  chromecast:status       backgroundColor: '#00000000',
  chromecast:status       foregroundColor: '#FFFFFFFF',
  chromecast:status       edgeType: 'OUTLINE',
  chromecast:status       edgeColor: '#000000FF',
  chromecast:status       fontScale: '1.0',
  chromecast:status       fontStyle: 'NORMAL',
  chromecast:status       fontFamily: 'Droid Sans',
  chromecast:status       fontGenericFamily: 'SANS_SERIF',
  chromecast:status       windowType: 'NONE'
  chromecast:status     },
  chromecast:status     tracks: [ [Object], [Object] ],
  chromecast:status     mediaCategory: 'VIDEO',
  chromecast:status     duration: 1311.069,
  chromecast:status     breakClips: [],
  chromecast:status     breaks: []
  chromecast:status   },
  chromecast:status   currentItemId: 1,
  chromecast:status   items: [
  chromecast:status     {
  chromecast:status       itemId: 1,
  chromecast:status       media: [Object],
  chromecast:status       autoplay: false,
  chromecast:status       activeTrackIds: [Array],
  chromecast:status       orderId: 0
  chromecast:status     }
  chromecast:status   ],
  chromecast:status   repeatMode: 'REPEAT_OFF'
  chromecast:status } +0ms
  chromecast:status Got Chromecast status +913ms
  chromecast:status {
  chromecast:status   mediaSessionId: 1,
  chromecast:status   playbackRate: 1,
  chromecast:status   playerState: 'PLAYING',
  chromecast:status   currentTime: 4.958411,
  chromecast:status   supportedMediaCommands: 12303,
  chromecast:status   volume: { level: 1, muted: false },
  chromecast:status   activeTrackIds: [ 1 ],
  chromecast:status   media: {
  chromecast:status     contentId: 'http://192.168.86.23:4000/cast?session=85oxFdj2U4',
  chromecast:status     contentType: 'video/*',
  chromecast:status     streamType: 'BUFFERED',
  chromecast:status     metadata: {
  chromecast:status       metadataType: 1,
  chromecast:status       images: [Array],
  chromecast:status       title: 'Video 720p'
  chromecast:status     },
  chromecast:status     textTrackStyle: {
  chromecast:status       backgroundColor: '#00000000',
  chromecast:status       foregroundColor: '#FFFFFFFF',
  chromecast:status       edgeType: 'OUTLINE',
  chromecast:status       edgeColor: '#000000FF',
  chromecast:status       fontScale: '1.0',
  chromecast:status       fontStyle: 'NORMAL',
  chromecast:status       fontFamily: 'Droid Sans',
  chromecast:status       fontGenericFamily: 'SANS_SERIF',
  chromecast:status       windowType: 'NONE'
  chromecast:status     },
  chromecast:status     tracks: [ [Object], [Object] ],
  chromecast:status     mediaCategory: 'VIDEO',
  chromecast:status     duration: 1311.069,
  chromecast:status     breakClips: [],
  chromecast:status     breaks: []
  chromecast:status   },
  chromecast:status   currentItemId: 1,
  chromecast:status   items: [
  chromecast:status     {
  chromecast:status       itemId: 1,
  chromecast:status       media: [Object],
  chromecast:status       autoplay: false,
  chromecast:status       activeTrackIds: [Array],
  chromecast:status       orderId: 0
  chromecast:status     }
  chromecast:status   ],
  chromecast:status   repeatMode: 'REPEAT_OFF'
  chromecast:status } +1ms
  bridge New remote contents: {"action":"STOP"} +11s
  chromecast Signal from remote. ACTION: STOP +6s
  chromecast:status Got Chromecast status +890ms
  chromecast:status {
  chromecast:status   mediaSessionId: 1,
  chromecast:status   playbackRate: 1,
  chromecast:status   playerState: 'IDLE',
  chromecast:status   currentTime: 0,
  chromecast:status   supportedMediaCommands: 12303,
  chromecast:status   volume: { level: 1, muted: false },
  chromecast:status   currentItemId: 1,
  chromecast:status   idleReason: 'CANCELLED'
  chromecast:status } +0ms
  chromecast Stopped status interval +55ms
  chromecast Closing cast session... +1ms
  chromecast-controller Closing client... +9s
  chromecast-controller Player check: active +0ms
  chromecast-controller Closed client +100ms
  chromecast Session closed +101ms
  chromecast Cast finished! +1ms
^C
Cast to TV: closing node app...
  bridge Closing node server +4s
Cast to TV: closed successfully

@Rafostar
Copy link
Owner

Rafostar commented Nov 2, 2021

This sounds like video is in a format that Chromecast does not support. Have you tried casting with transcode video option?

@JosephScript
Copy link
Author

I think you're probably right. I'll try that.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants