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

Resolution/frame is not correct when streaming from OSX #20

Open
insane-c0der opened this issue Dec 13, 2020 · 7 comments
Open

Resolution/frame is not correct when streaming from OSX #20

insane-c0der opened this issue Dec 13, 2020 · 7 comments

Comments

@insane-c0der
Copy link

When we stream from OSX with OBS studio version 25.0.7-38-g09e3e6ed, the resolution/frame is not correct.

To repro:

  • start with a portrait canvas 405x720

expected:

  • see full frame on the client side

actually:

  • only see the center part of the video. top, bottom, left & right are cut out of the video frame on the client side.
@insane-c0der
Copy link
Author

See
https://imgur.com/a/teiCNRs

The bottom image is the client's view.

@sbd021
Copy link
Contributor

sbd021 commented Dec 25, 2020

Do you remember the channel name?
Can you get agora sdk log located in %localAppdata%/Agora/obs32(or obs64)?

@sbd021
Copy link
Contributor

sbd021 commented Dec 25, 2020

Check osx render mode whether it's fit mode

@insane-c0der
Copy link
Author

insane-c0der commented Jan 7, 2021

~/Library/Application Support/obs-studio/logs/cat "2020-12-17 21-00-38.txt"

21:00:38.419: CPU Name: Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz
21:00:38.419: CPU Speed: 2700MHz
21:00:38.419: Physical Cores: 4, Logical Cores: 8
21:00:38.419: Physical Memory: 16384MB Total
21:00:38.419: OS Name: Mac OS X (NSMACHOperatingSystem)
21:00:38.419: OS Version: Version 10.15.7 (Build 19H2)
21:00:38.419: Kernel Version: 19.6.0
21:00:38.423: hotkeys-cocoa: Getting keyboard keys failed
21:00:38.423: hotkeys-cocoa: Getting keyboard keys failed
21:00:38.423: hotkeys-cocoa: Using layout 'com.apple.keylayout.US'
21:00:38.424: Portable mode: false
21:00:38.545: OBS 25.0.7-38-g09e3e6ed (mac)
21:00:38.545: ---------------------------------
21:00:38.546: ---------------------------------
21:00:38.546: audio settings reset:
21:00:38.546: samples per sec: 44100
21:00:38.546: speakers: 2
21:00:38.547: ---------------------------------
21:00:38.547: Initializing OpenGL...
21:00:39.442: Loading up OpenGL on adapter ATI Technologies Inc. AMD Radeon Pro 455 OpenGL Engine
21:00:39.442: OpenGL loaded successfully, version 4.1 ATI-3.10.18, shading language 4.10
21:00:39.548: ---------------------------------
21:00:39.548: video settings reset:
21:00:39.548: base resolution: 405x720
21:00:39.548: output resolution: 404x720
21:00:39.548: downscale filter: Bicubic
21:00:39.548: fps: 24000/1001
21:00:39.548: format: NV12
21:00:39.548: YUV mode: 601/Partial
21:00:39.548: NV12 texture support not available
21:00:39.548: Audio monitoring device:
21:00:39.548: name: Default
21:00:39.548: id: default
21:00:39.549: ---------------------------------
21:00:39.550: Failed to load 'en-US' text for module: 'decklink-ouput-ui.so'
21:00:39.557: os_dlopen(libpython3.7m.dylib->libpython3.7m.dylib): dlopen(libpython3.7m.dylib, 257): image not found
21:00:39.557:
21:00:39.557: [Python] Could not load library: libpython3.7m.dylib
21:00:39.563: agora_loaded
21:00:39.616: A DeckLink iterator could not be created. The DeckLink drivers may not be installed
21:00:39.616: No blackmagic support
21:00:39.671: [VideoToolbox encoder]: Adding VideoToolbox H264 encoders
21:00:39.720: [obs-browser]: Version 2.8.6
21:00:39.729: VLC found, VLC video source enabled
21:00:39.729: ---------------------------------
21:00:39.729: Loaded Modules:
21:00:39.729: vlc-video.so
21:00:39.729: text-freetype2.so
21:00:39.729: rtmp-services.so
21:00:39.729: obs-x264.so
21:00:39.729: obs-vst.so
21:00:39.729: obs-transitions.so
21:00:39.729: obs-outputs.so
21:00:39.729: obs-libfdk.so
21:00:39.729: obs-filters.so
21:00:39.729: obs-ffmpeg.so
21:00:39.729: obs-browser.so
21:00:39.729: mac-vth264.so
21:00:39.729: mac-syphon.so
21:00:39.729: mac-decklink.so
21:00:39.729: mac-capture.so
21:00:39.729: mac-avcapture.so
21:00:39.729: mac-agora.so
21:00:39.729: linux-jack.so
21:00:39.729: image-source.so
21:00:39.729: frontend-tools.so
21:00:39.729: decklink-ouput-ui.so
21:00:39.729: coreaudio-encoder.so
21:00:39.729: ---------------------------------
21:00:39.729: os_dlopen(../obs-plugins/obs-browser->../obs-plugins/obs-browser.so): dlopen(../obs-plugins/obs-browser.so, 257): image not found
21:00:39.729:
21:00:39.729: ==== Startup complete ===============================================
21:00:39.740: All scene data cleared
21:00:39.740: ------------------------------------------------
21:00:39.763: coreaudio: device 'Built-in Microphone' initialized
21:00:39.763: [Loaded global audio device]: 'Mic/Aux'
21:00:39.792: Video Capture Device: Selected device 'FaceTime HD Camera (Built-in)'
21:00:39.793: Video Capture Device: Using preset 1280x720
21:00:39.826: Switched to scene 'Scene'
21:00:39.826: ------------------------------------------------
21:00:39.826: Loaded scenes:
21:00:39.826: - scene 'Scene':
21:00:39.834: - source: 'Text (FreeType 2)' (text_ft2_source_v2)
21:00:39.834: - source: 'Video Capture Device' (av_capture_input)
21:00:39.834: - source: 'Window Capture' (window_capture)
21:00:39.834: ------------------------------------------------
21:00:40.411: adding 23 milliseconds of audio buffering, total audio buffering is now 23 milliseconds (source: Mic/Aux)
21:00:40.411:
21:01:17.965: ---------------------------------
21:01:17.965: video settings reset:
21:01:17.965: base resolution: 1280x720
21:01:17.965: output resolution: 1280x720
21:01:17.965: downscale filter: Bicubic
21:01:17.965: fps: 24000/1001
21:01:17.965: format: NV12
21:01:17.965: YUV mode: 601/Partial
21:01:17.965: NV12 texture support not available
21:01:17.969: Settings changed (outputs, video)
21:01:17.969: ------------------------------------------------
21:01:30.437: ---------------------------------
21:01:30.437: video settings reset:
21:01:30.437: base resolution: 720x1280
21:01:30.437: output resolution: 720x1280
21:01:30.437: downscale filter: Bicubic
21:01:30.437: fps: 24000/1001
21:01:30.437: format: NV12
21:01:30.437: YUV mode: 601/Partial
21:01:30.437: NV12 texture support not available
21:01:30.438: Settings changed (outputs, video)
21:01:30.438: ------------------------------------------------
21:02:56.082: ==== Shutting down ==================================================
21:02:56.085: Switched to scene '(null)'
21:02:56.346: All scene data cleared
21:02:56.346: ------------------------------------------------
21:02:56.352: Output 'simple_agora_raw_output_info': stopping
21:02:56.353: Output 'simple_agora_raw_output_info': Total frames output: 1552
21:02:56.353: Output 'simple_agora_raw_output_info': Total drawn frames: 1553
21:02:56.468: Freeing OBS context data
21:02:56.471: [Scripting] Total detached callbacks: 0
21:02:56.476: == Profiler Results =============================
21:02:56.476: run_program_init: 1583.83 ms
21:02:56.476: ┣OBSApp::AppInit: 4.301 ms
21:02:56.476: ┃ ┗OBSApp::InitLocale: 2.132 ms
21:02:56.476: ┗OBSApp::OBSInit: 1469.27 ms
21:02:56.476: ┣obs_startup: 4.729 ms
21:02:56.476: ┗OBSBasic::OBSInit: 1342.58 ms
21:02:56.476: ┣OBSBasic::InitBasicConfig: 0.256 ms
21:02:56.476: ┣OBSBasic::ResetAudio: 0.084 ms
21:02:56.476: ┣OBSBasic::ResetVideo: 1002.31 ms
21:02:56.476: ┣OBSBasic::InitOBSCallbacks: 0.012 ms
21:02:56.476: ┣OBSBasic::InitHotkeys: 0.08 ms
21:02:56.476: ┣obs_load_all_modules: 180.036 ms
21:02:56.476: ┃ ┣obs_init_module(coreaudio-encoder.so): 0.006 ms
21:02:56.476: ┃ ┣obs_init_module(decklink-ouput-ui.so): 0.698 ms
21:02:56.476: ┃ ┣obs_init_module(frontend-tools.so): 3.952 ms
21:02:56.476: ┃ ┣obs_init_module(image-source.so): 0.009 ms
21:02:56.476: ┃ ┣obs_init_module(linux-jack.so): 0.002 ms
21:02:56.476: ┃ ┣obs_init_module(mac-agora.so): 0.038 ms
21:02:56.476: ┃ ┣obs_init_module(mac-avcapture.so): 51.16 ms
21:02:56.476: ┃ ┣obs_init_module(mac-capture.so): 0.004 ms
21:02:56.476: ┃ ┣obs_init_module(mac-decklink.so): 0.11 ms
21:02:56.476: ┃ ┣obs_init_module(mac-syphon.so): 0.002 ms
21:02:56.476: ┃ ┣obs_init_module(mac-vth264.so): 53.608 ms
21:02:56.476: ┃ ┣obs_init_module(obs-browser.so): 0.072 ms
21:02:56.476: ┃ ┣obs_init_module(obs-ffmpeg.so): 0.01 ms
21:02:56.476: ┃ ┣obs_init_module(obs-filters.so): 0.028 ms
21:02:56.476: ┃ ┣obs_init_module(obs-libfdk.so): 0.002 ms
21:02:56.476: ┃ ┣obs_init_module(obs-outputs.so): 0.006 ms
21:02:56.476: ┃ ┣obs_init_module(obs-transitions.so): 0.009 ms
21:02:56.476: ┃ ┣obs_init_module(obs-vst.so): 0.015 ms
21:02:56.476: ┃ ┣obs_init_module(obs-x264.so): 0.002 ms
21:02:56.476: ┃ ┣obs_init_module(rtmp-services.so): 1.052 ms
21:02:56.476: ┃ ┣obs_init_module(text-freetype2.so): 0.015 ms
21:02:56.476: ┃ ┗obs_init_module(vlc-video.so): 0.781 ms
21:02:56.476: ┣OBSBasic::ResetOutputs: 10.306 ms
21:02:56.476: ┣OBSBasic::CreateHotkeys: 0.052 ms
21:02:56.476: ┣OBSBasic::InitService: 0.158 ms
21:02:56.476: ┣OBSBasic::InitPrimitives: 0.103 ms
21:02:56.476: ┗OBSBasic::Load: 99.671 ms
21:02:56.476: obs_hotkey_thread(25 ms): min=0 ms, median=0 ms, max=0.061 ms, 99th percentile=0.001 ms, 100% below 25 ms
21:02:56.476: audio_thread(Audio): min=0.008 ms, median=0.05 ms, max=3.628 ms, 99th percentile=0.573 ms
21:02:56.476: obs_graphics_thread(41.7083 ms): min=0.116 ms, median=1.168 ms, max=35.594 ms, 99th percentile=3.22 ms, 100% below 41.708 ms
21:02:56.476: ┣tick_sources: min=0.001 ms, median=0.018 ms, max=26.905 ms, 99th percentile=0.072 ms
21:02:56.476: ┣output_frame: min=0.103 ms, median=0.678 ms, max=10.159 ms, 99th percentile=1.215 ms
21:02:56.476: ┃ ┗gs_context(video->graphics): min=0.103 ms, median=0.678 ms, max=10.158 ms, 99th percentile=1.214 ms
21:02:56.476: ┃ ┣render_video: min=0.017 ms, median=0.626 ms, max=9.995 ms, 99th percentile=1.125 ms
21:02:56.476: ┃ ┃ ┗render_main_texture: min=0.013 ms, median=0.622 ms, max=9.992 ms, 99th percentile=1.118 ms
21:02:56.476: ┃ ┗gs_flush: min=0.025 ms, median=0.045 ms, max=1.476 ms, 99th percentile=0.262 ms
21:02:56.476: ┗render_displays: min=0 ms, median=0.435 ms, max=23.717 ms, 99th percentile=2.241 ms
21:02:56.476: OBSBasic::ResetOutputs: min=0.161 ms, median=0 ms, max=0.2 ms, 99th percentile=0.2 ms
21:02:56.476: OBSBasic::ResetVideo: min=56.129 ms, median=0 ms, max=74.044 ms, 99th percentile=74.044 ms
21:02:56.476: obs_graphics_thread(41.7083 ms): min=0.592 ms, median=1.119 ms, max=4.26 ms, 99th percentile=3.408 ms, 100% below 41.708 ms
21:02:56.476: ┣tick_sources: min=0.012 ms, median=0.017 ms, max=0.094 ms, 99th percentile=0.074 ms
21:02:56.476: ┣output_frame: min=0.197 ms, median=0.653 ms, max=1.195 ms, 99th percentile=1.104 ms
21:02:56.476: ┃ ┗gs_context(video->graphics): min=0.197 ms, median=0.652 ms, max=1.194 ms, 99th percentile=1.104 ms
21:02:56.476: ┃ ┣render_video: min=0.092 ms, median=0.61 ms, max=1.142 ms, 99th percentile=1.053 ms
21:02:56.476: ┃ ┃ ┗render_main_texture: min=0.089 ms, median=0.606 ms, max=1.137 ms, 99th percentile=1.048 ms
21:02:56.476: ┃ ┗gs_flush: min=0.026 ms, median=0.037 ms, max=0.168 ms, 99th percentile=0.13 ms
21:02:56.476: ┗render_displays: min=0.273 ms, median=0.406 ms, max=3.112 ms, 99th percentile=2.496 ms
21:02:56.476: obs_graphics_thread(41.7083 ms): min=0.146 ms, median=1.501 ms, max=10.89 ms, 99th percentile=3.531 ms, 100% below 41.708 ms
21:02:56.476: ┣tick_sources: min=0.002 ms, median=0.017 ms, max=0.193 ms, 99th percentile=0.059 ms
21:02:56.476: ┣output_frame: min=0.128 ms, median=0.895 ms, max=10.339 ms, 99th percentile=1.384 ms
21:02:56.476: ┃ ┣gs_context(video->graphics): min=0.128 ms, median=0.735 ms, max=10.338 ms, 99th percentile=1.186 ms
21:02:56.476: ┃ ┃ ┣render_video: min=0.019 ms, median=0.718 ms, max=10.331 ms, 99th percentile=1.173 ms
21:02:56.476: ┃ ┃ ┃ ┣render_main_texture: min=0.015 ms, median=0.611 ms, max=1.54 ms, 99th percentile=0.999 ms
21:02:56.476: ┃ ┃ ┃ ┣render_convert_texture: min=0.021 ms, median=0.028 ms, max=9.022 ms, 99th percentile=0.096 ms, 0.753152 calls per parent call
21:02:56.476: ┃ ┃ ┃ ┗stage_output_texture: min=0.058 ms, median=0.082 ms, max=0.726 ms, 99th percentile=0.341 ms, 0.753152 calls per parent call
21:02:56.476: ┃ ┃ ┣gs_flush: min=0 ms, median=0.001 ms, max=0.557 ms, 99th percentile=0.108 ms
21:02:56.476: ┃ ┃ ┗download_frame: min=0 ms, median=0.003 ms, max=0.044 ms, 99th percentile=0.006 ms, 0.753152 calls per parent call
21:02:56.476: ┃ ┗output_video_data: min=0.136 ms, median=0.177 ms, max=1.663 ms, 99th percentile=0.326 ms, 0.752667 calls per parent call
21:02:56.476: ┗render_displays: min=0.001 ms, median=0.545 ms, max=8.2 ms, 99th percentile=2.484 ms
21:02:56.476: video_thread(video): min=0.18 ms, median=0.955 ms, max=2.793 ms, 99th percentile=1.494 ms
21:02:56.476: =================================================
21:02:56.476: == Profiler Time Between Calls ==================
21:02:56.476: obs_hotkey_thread(25 ms): min=25.015 ms, median=28.452 ms, max=32.275 ms, 12.5633% within ±2% of 25 ms (0% lower, 87.4367% higher)
21:02:56.476: obs_graphics_thread(41.7083 ms): min=36.767 ms, median=41.711 ms, max=46.736 ms, 30.8696% within ±2% of 41.708 ms (35.4348% lower, 33.6957% higher)
21:02:56.476: obs_graphics_thread(41.7083 ms): min=37.001 ms, median=41.538 ms, max=46.542 ms, 31.5436% within ±2% of 41.708 ms (36.2416% lower, 32.2148% higher)
21:02:56.476: obs_graphics_thread(41.7083 ms): min=36.867 ms, median=41.67 ms, max=46.718 ms, 48.8113% within ±2% of 41.708 ms (25.6186% lower, 25.5701% higher)
21:02:56.476: =================================================
21:02:56.503: Number of memory leaks: 3

@insane-c0der
Copy link
Author

How can we check "osx render mode"?

@insane-c0der
Copy link
Author

"YXxByxvZpVZlREmAyCVZ" is one of the channels we tested.

@plutoless
Copy link
Contributor

@b2bear we see from backend you are using websdk. while you are playing the stream it has an option to decide if you want the video fit the container or fill the container, maybe you can check that out?

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

3 participants