Video playback to a texture stalling
Posted: 05 May 2016 16:00
I am using libvlc_video_set_callbacks and libvlc_video_set_format to playback a video to a D3D 11 texture.
I can then apply the texture to some geometry and see the texture. At the moment I'm allowing LibVLC to handle the audio playback directly to the system sound driver itself, so I can hear the audio too.
The video plays nicely, however if I increase the size of the target texture above about 2k or I use a high res video (4k x 2k) then after the first few frames the video stalls and I get no more frames of video.
Debug code indicates that LibVLC is still calling Lock, Unlock and Display but I'm not seeing the later frames appear on my texture.
My CPU and GPU don't appear to be maxed out, but I'm at a loss as to why it should work for a bit and then video completely stall.
I have added code to test whether the problem is in my rendering side, I can write to the texture after the Display callback and I see the texture updating dynamically.
I've also turned on LibVLC logging (see below) and the problem appears to be that the frames are taking too long to decode and so playback is failing.
However if I don't use libvlc_video_set_callbacks then LibVLC creates a window and plays back the video successfully without stalling, which would suggest it does have the capability to play the video without stalling and there must be something causing it to be much more expensive than it should be.
Can anyone suggest what could cause this? Or how to debug.
Thanks
Jules
I can then apply the texture to some geometry and see the texture. At the moment I'm allowing LibVLC to handle the audio playback directly to the system sound driver itself, so I can hear the audio too.
The video plays nicely, however if I increase the size of the target texture above about 2k or I use a high res video (4k x 2k) then after the first few frames the video stalls and I get no more frames of video.
Debug code indicates that LibVLC is still calling Lock, Unlock and Display but I'm not seeing the later frames appear on my texture.
My CPU and GPU don't appear to be maxed out, but I'm at a loss as to why it should work for a bit and then video completely stall.
I have added code to test whether the problem is in my rendering side, I can write to the texture after the Display callback and I see the texture updating dynamically.
I've also turned on LibVLC logging (see below) and the problem appears to be that the frames are taking too long to decode and so playback is failing.
However if I don't use libvlc_video_set_callbacks then LibVLC creates a window and plays back the video successfully without stalling, which would suggest it does have the capability to play the video without stalling and there must be something causing it to be much more expensive than it should be.
Can anyone suggest what could cause this? Or how to debug.
Thanks
Jules
Code: Select all
LibVLCWrapper: VLCMediaPlayer::SetSurface(texture=2a7932e0, width=4096, height=2048, format=RGBA)
LibVLCWrapper: VLCMediaPlayer::SetDataSource(path=E:\FPVR\360Videos\JamesEGray.360_tb.mp4)
LibVLCWrapper: VLCMediaPlayer::PrepareAsync()
LibVLCWrapper: VLC media player - 2.2.2 Weatherwax
LibVLCWrapper: Copyright © 1996-2016 the VideoLAN team
LibVLCWrapper: revision 2.2.2-0-g6259d80
LibVLCWrapper: configured with ../extras/package/win32/../../../configure '--enable-update-check' '--enable-lua' '--enable-faad' '--enable-flac' '--enable-theora' '--enable-twolame' '--enable-quicktime' '--enable-avcodec' '--enable-merge-ffmpeg' '--enable-dca' '--enable-mpc' '--enable-libass' '--enable-x264' '--enable-schroedinger' '--enable-realrtsp' '--enable-live555' '--enable-dvdread' '--enable-shout' '--enable-goom' '--enable-caca' '--disable-sdl' '--enable-qt' '--enable-skins2' '--enable-sse' '--enable-mmx' '--enable-libcddb' '--enable-zvbi' '--disable-telx' '--enable-nls' '--host=x86_64-w64-mingw32' 'host_alias=x86_64-w64-mingw32'
LibVLCWrapper: Creating an input for 'JamesEGray.360_tb.mp4'
LibVLCWrapper: using timeshift granularity of 50 MiB, in path 'C:\Users\jules\AppData\Local\Temp'
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerOpening) -
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerBuffering) - cache=0.000000
LibVLCWrapper: `file:///E:/FPVR/360Videos/JamesEGray.360_tb.mp4' gives access `file' demux `' path `/E:/FPVR/360Videos/JamesEGray.360_tb.mp4'
LibVLCWrapper: specified demux `any'
LibVLCWrapper: creating demux: access='file' demux='any' location='/E:/FPVR/360Videos/JamesEGray.360_tb.mp4' file='E:\FPVR\360Videos\JamesEGray.360_tb.mp4'
LibVLCWrapper: looking for access_demux module matching "file": 10 candidates
LibVLCWrapper: no access_demux modules matched
LibVLCWrapper: creating access 'file' location='/E:/FPVR/360Videos/JamesEGray.360_tb.mp4', path='E:\FPVR\360Videos\JamesEGray.360_tb.mp4'
LibVLCWrapper: looking for access module matching "file": 20 candidates
LibVLCWrapper: opening file `E:\FPVR\360Videos\JamesEGray.360_tb.mp4'
LibVLCWrapper: using access module "filesystem"
LibVLCWrapper: Using stream method for AStream*
LibVLCWrapper: starting pre-buffering
LibVLCWrapper: received first data after 0 ms
LibVLCWrapper: pre-buffering done 1024 bytes in 0s - 499 KiB/s
LibVLCWrapper: looking for stream_filter module matching "any": 5 candidates
LibVLCWrapper: no stream_filter modules matched
LibVLCWrapper: looking for stream_filter module matching "record": 5 candidates
LibVLCWrapper: using stream_filter module "record"
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerPausableChanged) - pausable=1
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerSeekableChanged) - seekable=1
LibVLCWrapper: creating demux: access='file' demux='any' location='/E:/FPVR/360Videos/JamesEGray.360_tb.mp4' file='E:\FPVR\360Videos\JamesEGray.360_tb.mp4'
LibVLCWrapper: looking for demux module matching "mp4": 62 candidates
LibVLCWrapper: Unknown uuid type box
LibVLCWrapper: unknown box type hdlr (incompletely loaded)
LibVLCWrapper: unknown box type hdlr (incompletely loaded)
LibVLCWrapper: unknown box type cTIM (incompletely loaded)
LibVLCWrapper: unknown box type cTSC (incompletely loaded)
LibVLCWrapper: unknown box type cTSZ (incompletely loaded)
LibVLCWrapper: added fragment moov
LibVLCWrapper: dumping root Box "root"
LibVLCWrapper: | + ftyp size 24 offset 0
LibVLCWrapper: | + uuid size 4063 offset 24
LibVLCWrapper: | + free size 145340 offset 4087
LibVLCWrapper: | + mdat size 956165606 offset 149427
LibVLCWrapper: | + moov size 149461 offset 956315033
LibVLCWrapper: | | + mvhd size 108 offset 956315041
LibVLCWrapper: | | + trak size 84379 offset 956315149
LibVLCWrapper: | | | + tkhd size 92 offset 956315157
LibVLCWrapper: | | | + edts size 36 offset 956315249
LibVLCWrapper: | | | | + elst size 28 offset 956315257
LibVLCWrapper: | | | + mdia size 84243 offset 956315285
LibVLCWrapper: | | | | + mdhd size 32 offset 956315293
LibVLCWrapper: | | | | + hdlr size 64 offset 956315325
LibVLCWrapper: | | | | + minf size 84139 offset 956315389
LibVLCWrapper: | | | | | + vmhd size 20 offset 956315397
LibVLCWrapper: | | | | | + hdlr size 64 offset 956315417
LibVLCWrapper: | | | | | + dinf size 36 offset 956315481
LibVLCWrapper: | | | | | | + dref size 28 offset 956315489
LibVLCWrapper: | | | | | | | + url size 12 offset 956315505
LibVLCWrapper: | | | | | + stbl size 84011 offset 956315517
LibVLCWrapper: | | | | | | + stsd size 181 offset 956315525
LibVLCWrapper: | | | | | | | + avc1 size 165 offset 956315541
LibVLCWrapper: | | | | | | | | + avcC size 79 offset 956315627
LibVLCWrapper: | | | | | | + stts size 24 offset 956315706
LibVLCWrapper: | | | | | | + stss size 932 offset 956315730
LibVLCWrapper: | | | | | | + sdtp size 7542 offset 956316662
LibVLCWrapper: | | | | | | + stsc size 28 offset 956324204
LibVLCWrapper: | | | | | | + stsz size 30140 offset 956324232
LibVLCWrapper: | | | | | | + stco size 3028 offset 956354372
LibVLCWrapper: | | | | | | + ctts size 42128 offset 956357400
LibVLCWrapper: | | + trak size 64908 offset 956399528
LibVLCWrapper: | | | + tkhd size 92 offset 956399536
LibVLCWrapper: | | | + edts size 36 offset 956399628
LibVLCWrapper: | | | | + elst size 28 offset 956399636
LibVLCWrapper: | | | + mdia size 64772 offset 956399664
LibVLCWrapper: | | | | + mdhd size 32 offset 956399672
LibVLCWrapper: | | | | + hdlr size 68 offset 956399704
LibVLCWrapper: | | | | + minf size 64664 offset 956399772
LibVLCWrapper: | | | | | + smhd size 16 offset 956399780
LibVLCWrapper: | | | | | + hdlr size 68 offset 956399796
LibVLCWrapper: | | | | | + dinf size 36 offset 956399864
LibVLCWrapper: | | | | | | + dref size 28 offset 956399872
LibVLCWrapper: | | | | | | | + url size 12 offset 956399888
LibVLCWrapper: | | | | | + stbl size 64536 offset 956399900
LibVLCWrapper: | | | | | | + stsd size 100 offset 956399908
LibVLCWrapper: | | | | | | | + mp4a size 84 offset 956399924
LibVLCWrapper: | | | | | | | | + esds size 48 offset 956399960
LibVLCWrapper: | | | | | | + stts size 376 offset 956400008
LibVLCWrapper: | | | | | | + stsc size 4528 offset 956400384
LibVLCWrapper: | | | | | | + stsz size 56496 offset 956404912
LibVLCWrapper: | | | | | | + stco size 3028 offset 956461408
LibVLCWrapper: | | + udta size 58 offset 956464436
LibVLCWrapper: | | | + cTIM size 23 offset 956464444
LibVLCWrapper: | | | + cTSC size 14 offset 956464467
LibVLCWrapper: | | | + cTSZ size 13 offset 956464481
LibVLCWrapper: unrecognized major file specification (mp42).
LibVLCWrapper: found 2 tracks
LibVLCWrapper: elst box found
LibVLCWrapper: - [0] duration=301200ms media time=0ms) rate=1.0
LibVLCWrapper: track[Id 0x1] read 753 chunk
LibVLCWrapper: STTS table of 1 entries
LibVLCWrapper: CTTS table of 5264 entries
LibVLCWrapper: track[Id 0x1] read 7530 samples length:301s
LibVLCWrapper: selecting program id=0
LibVLCWrapper: adding track[Id 0x1] video (enable) language eng
LibVLCWrapper: elst box found
LibVLCWrapper: - [0] duration=301200ms media time=0ms) rate=1.0
LibVLCWrapper: track[Id 0x2] read 753 chunk
LibVLCWrapper: STTS table of 45 entries
LibVLCWrapper: track[Id 0x2] read 14119 samples length:301s
LibVLCWrapper: adding track[Id 0x2] audio (enable) language eng
LibVLCWrapper: fragment offset 956315033, data 149443<->956315033, duration 0
LibVLCWrapper: using demux module "mp4"
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerLengthChanged) - length=301205
LibVLCWrapper: looking for a subtitle file in E:\FPVR\360Videos\
LibVLCWrapper: looking for decoder module matching "any": 43 candidates
LibVLCWrapper: CPU flags: 0x010013db
LibVLCWrapper: trying to use direct rendering
LibVLCWrapper: allowing 4 thread(s) for decoding
LibVLCWrapper: avcodec codec (H264 - MPEG-4 AVC (part 10)) started
LibVLCWrapper: using frame thread mode with 4 threads
LibVLCWrapper: using decoder module "avcodec"
LibVLCWrapper: looking for decoder module matching "any": 43 candidates
LibVLCWrapper: using decoder module "faad"
LibVLCWrapper: looking for meta reader module matching "any": 1 candidates
LibVLCWrapper: Trying Lua scripts in C:\Users\jules\AppData\Roaming\vlc\lua\meta\reader
LibVLCWrapper: Trying Lua scripts in E:\Dev\UbietyVR\Assets\Plugins\x86_64\lua\meta\reader
LibVLCWrapper: no meta reader modules matched
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaParsedChanged) - parsed=1, w=4096, h=2048
LibVLCWrapper: `file:///E:/FPVR/360Videos/JamesEGray.360_tb.mp4' successfully opened
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerPlaying) -
LibVLCWrapper: elst (0) gives 0ms (movie)-> 0ms (track)
LibVLCWrapper: track[Id 0x1] using Sync Sample Box (stss)
LibVLCWrapper: stss gives 0 --> 0 (sample number)
LibVLCWrapper: elst (0) gives 0ms (movie)-> 0ms (track)
LibVLCWrapper: track[Id 0x2] does not provide Sync Sample Box (stss)
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerBuffering) - cache=0.000000
LibVLCWrapper: Buffering 0%
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerBuffering) - cache=0.000000
LibVLCWrapper: decoded zero sample
LibVLCWrapper: Buffering 0%
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerBuffering) - cache=7.000000
LibVLCWrapper: available hardware decoder output format 61 (dxva2_vld)
LibVLCWrapper: Buffering 7%
ware decoder output format 0 (yuv420p)
LibVLCWrapper: looking for hw decoder module matching "none": 1 candidates
.000000
LibVLCWrapper: reusing audio output
LibVLCWrapper: Opening DirectSound Audio Output
LibVLCWrapper: Buffering 13%
LibVLCWrapper: no hw decoder modules matched
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerBuffering) - cache=14.000000
LibVLCWrapper: looking for text renderer module matching "any": 2 candidates
LibVLCWrapper: Buffering 14%
LibVLCWrapper: Windows speaker config: Stereo and stream has 2 channels, using 2 channels
LibVLCWrapper: Using Arial as font from file C:\WINDOWS\Fonts\arial.ttf
LibVLCWrapper: Using Courier New as mono-font from file C:\WINDOWS\Fonts\cour.ttf
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerBuffering) - cache=21.000000
LibVLCWrapper: Buffering 21%
LibVLCWrapper: output 'f32l' 48000 Hz Stereo frame=1 samples/8 bytes
LibVLCWrapper: looking for audio volume module matching "any": 2 candidates
LibVLCWrapper: using text renderer module "freetype"
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerBuffering) - cache=26.000000
LibVLCWrapper: looking for video filter2 module matching "any": 57 candidates
LibVLCWrapper: using audio volume module "float_mixer"
LibVLCWrapper: VideoFrame::VideoFrame()
LibVLCWrapper: input 'f32l' 48000 Hz Stereo frame=1 samples/8 bytes
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerBuffering) - cache=28.000000
LibVLCWrapper: VideoFrame::Initialize(width=4096, height=2048, format=1) returns true (hr=00000000)
LibVLCWrapper: 32x32 (32x32) chroma: YUVA -> 16x16 (16x16) chroma: RGBA with scaling using Bicubic (good quality)
LibVLCWrapper: Buffering 28%
ter2 module "swscale"
2048, format=1) returns 2a8f03f0
LibVLCWrapper: looking for audio filter module matching "scaletempo": 13 candidates
LibVLCWrapper: looking for video filter2 module matching "any": 57 candidates
LibVLCWrapper: VideoFrame::VideoFrame()
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerBuffering) - cache=35.000000
LibVLCWrapper: format: 48000 rate, 2 nch, 4 bps, fl32
LibVLCWrapper: Buffering 35%
de, 0.200 overlap, 14 search
LibVLCWrapper: VideoFrame::Initialize(width=4096, height=2048, format=1) returns true (hr=00000000)
LibVLCWrapper: YUVP to YUVA converter
=4096, height=2048, format=1) returns 2a8eff90
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerBuffering) - cache=40.000000
LibVLCWrapper: 1.000 scale, 1440.000 stride_in, 1440 stride_out, 1152 standing, 288 overlap, 672 search, 2400 queue, fl32 mode
LibVLCWrapper: using video filter2 module "yuvp"
LibVLCWrapper: Buffering 40%
LibVLCWrapper: using audio filter module "scaletempo"
LibVLCWrapper: conversion: 'f32l'->'f32l' 48000 Hz->48000 Hz Stereo->Stereo
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerBuffering) - cache=42.000000
LibVLCWrapper: Deinterlacing available
LibVLCWrapper: Buffering 42%
LibVLCWrapper: conversion pipeline complete
LibVLCWrapper: deinterlace 0, mode blend, is_needed 0
LibVLCWrapper: conversion: 'f32l'->'f32l' 48000 Hz->48000 Hz Stereo->Stereo
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerBuffering) - cache=49.000000
LibVLCWrapper: Opening vout display wrapper
LibVLCWrapper: looking for vout display module matching "vmem": 11 candidates
LibVLCWrapper: conversion pipeline complete
LibVLCWrapper: looking for audio resampler module matching "any": 3 candidates
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerBuffering) - cache=53.000000
LibVLCWrapper: VoutDisplayEvent 'fullscreen' 0
LibVLCWrapper: Buffering 53%
LibVLCWrapper: VoutDisplayEvent 'resize' 4096x2048 window
LibVLCWrapper: using audio resampler module "samplerate"
LibVLCWrapper: End of audio preroll
LibVLCWrapper: using vout display module "vmem"
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerBuffering) - cache=56.000000
LibVLCWrapper: Buffering 56%
pt decoder to display is needed
LibVLCWrapper: looking for video filter2 module matching "any": 57 candidates
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerBuffering) - cache=64.000000
LibVLCWrapper: Buffering 64%
LibVLCWrapper: 4096x2048 (4096x2050) chroma: I420 -> 4096x2048 (4096x2048) chroma: RGBA with scaling using Bicubic (good quality)
LibVLCWrapper: using video filter2 module "swscale"
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerBuffering) - cache=66.000000
LibVLCWrapper: Buffering 66%
' (000000004196F4F0) appended to chain
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerBuffering) - cache=71.000000
LibVLCWrapper: original format sz 4096x2050, of (0,0), vsz 4096x2048, 4cc I420, sar 1:1, msk r0x0 g0x0 b0x0
LibVLCWrapper: Failed to change zoom
LibVLCWrapper: removing module "freetype"
LibVLCWrapper: Buffering 71%
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerBuffering) - cache=78.000000
LibVLCWrapper: Failed to set on top
LibVLCWrapper: looking for text renderer module matching "any": 2 candidates
LibVLCWrapper: Buffering 78%
LibVLCWrapper: Failed to change source AR
LibVLCWrapper: Using Arial as font from file C:\WINDOWS\Fonts\arial.ttf
LibVLCWrapper: Using Courier New as mono-font from file C:\WINDOWS\Fonts\cour.ttf
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerBuffering) - cache=80.000000
LibVLCWrapper: Buffering 80%
LibVLCWrapper: using fontsize: 2
LibVLCWrapper: using text renderer module "freetype"
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerBuffering) - cache=85.000000
LibVLCWrapper: Buffering 85%
gned
LibVLCWrapper: disabling direct rendering
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerBuffering) - cache=92.000000
LibVLCWrapper: Buffering 92%
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerBuffering) - cache=93.000000
LibVLCWrapper: Buffering 93%
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerBuffering) - cache=99.000000
LibVLCWrapper: Buffering 99%
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerBuffering) - cache=100.000000
LibVLCWrapper: End of video preroll
LibVLCWrapper: Received first picture
LibVLCWrapper: Stream buffering done (320 ms in 188 ms)
LibVLCWrapper: Decoder wait done in 169 ms
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerTimeChanged) - new_time=0
LibVLCWrapper: VideoFrame::VideoFrame()
LibVLCWrapper: VideoFrame::Initialize(width=4096, height=2048, format=1) returns true (hr=00000000)
LibVLCWrapper: VideoFrame::Create(width=4096, height=2048, format=1) returns 2acca8d0
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerTimeChanged) - new_time=280
LibVLCWrapper: picture is too late to be displayed (missing 207 ms)
LibVLCWrapper: picture is too late to be displayed (missing 178 ms)
LibVLCWrapper: picture is too late to be displayed (missing 155 ms)
LibVLCWrapper: picture is too late to be displayed (missing 257 ms)
LibVLCWrapper: picture is too late to be displayed (missing 231 ms)
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerTimeChanged) - new_time=520
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerTimeChanged) - new_time=795
LibVLCWrapper: picture is too late to be displayed (missing 77 ms)
LibVLCWrapper: picture is too late to be displayed (missing 43 ms)
LibVLCWrapper: picture might be displayed late (missing 9 ms)
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerTimeChanged) - new_time=1040
LibVLCWrapper: picture is too late to be displayed (missing 77 ms)
LibVLCWrapper: picture is too late to be displayed (missing 47 ms)
LibVLCWrapper: picture might be displayed late (missing 19 ms)
LibVLCWrapper: picture is too late to be displayed (missing 100 ms)
LibVLCWrapper: picture is too late to be displayed (missing 71 ms)
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerTimeChanged) - new_time=1285
LibVLCWrapper: picture is too late to be displayed (missing 146 ms)
LibVLCWrapper: picture is too late to be displayed (missing 117 ms)
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerTimeChanged) - new_time=1560
LibVLCWrapper: picture is too late to be displayed (missing 35 ms)
LibVLCWrapper: picture might be displayed late (missing 5 ms)
LibVLCWrapper: picture is too late to be displayed (missing 73 ms)
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerTimeChanged) - new_time=1801
LibVLCWrapper: picture is too late to be displayed (missing 143 ms)
LibVLCWrapper: picture is too late to be displayed (missing 117 ms)
LibVLCWrapper: picture is too late to be displayed (missing 186 ms)
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerTimeChanged) - new_time=2074
LibVLCWrapper: picture is too late to be displayed (missing 274 ms)
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerTimeChanged) - new_time=2320
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerTimeChanged) - new_time=2565
LibVLCWrapper: picture is too late to be displayed (missing 139 ms)
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerTimeChanged) - new_time=2840
LibVLCWrapper: picture is too late to be displayed (missing 299 ms)
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerTimeChanged) - new_time=3080
LibVLCWrapper: picture is too late to be displayed (missing 457 ms)
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerTimeChanged) - new_time=3355
LibVLCWrapper: picture is too late to be displayed (missing 620 ms)
LibVLCWrapper: picture is too late to be displayed (missing 782 ms)
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerTimeChanged) - new_time=3600
LibVLCWrapper: picture is too late to be displayed (missing 846 ms)
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerTimeChanged) - new_time=3845
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerTimeChanged) - new_time=4121
LibVLCWrapper: More than 4 late frames, dropping frame
LibVLCWrapper: More than 4 late frames, dropping frame
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerTimeChanged) - new_time=4360
LibVLCWrapper: More than 4 late frames, dropping frame
LibVLCWrapper: More than 4 late frames, dropping frame
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerTimeChanged) - new_time=4634
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerTimeChanged) - new_time=4880
LibVLCWrapper: More than 4 late frames, dropping frame
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerTimeChanged) - new_time=5125
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerTimeChanged) - new_time=5401
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerTimeChanged) - new_time=5641
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerTimeChanged) - new_time=5914
LibVLCWrapper: More than 4 late frames, dropping frame
LibVLCWrapper: More than 4 late frames, dropping frame
LibVLCWrapper: More than 4 late frames, dropping frame
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerTimeChanged) - new_time=6160
LibVLCWrapper: More than 4 late frames, dropping frame
LibVLCWrapper: More than 4 late frames, dropping frame
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerTimeChanged) - new_time=6405
LibVLCWrapper: More than 4 late frames, dropping frame
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerTimeChanged) - new_time=6680
LibVLCWrapper: More than 4 late frames, dropping frame
LibVLCWrapper: More than 4 late frames, dropping frame
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerTimeChanged) - new_time=6920
LibVLCWrapper: More than 4 late frames, dropping frame
LibVLCWrapper: More than 4 late frames, dropping frame
LibVLCWrapper: More than 4 late frames, dropping frame
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerTimeChanged) - new_time=7195
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerTimeChanged) - new_time=7440
LibVLCWrapper: More than 4 late frames, dropping frame
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerTimeChanged) - new_time=7685
LibVLCWrapper: more than 5 seconds of late video -> dropping frame (computer too slow ?)
LibVLCWrapper: more than 5 seconds of late video -> dropping frame (computer too slow ?)
LibVLCWrapper: more than 5 seconds of late video -> dropping frame (computer too slow ?)
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerTimeChanged) - new_time=7960
LibVLCWrapper: more than 5 seconds of late video -> dropping frame (computer too slow ?)
LibVLCWrapper: more than 5 seconds of late video -> dropping frame (computer too slow ?)
LibVLCWrapper: more than 5 seconds of late video -> dropping frame (computer too slow ?)
LibVLCWrapper: more than 5 seconds of late video -> dropping frame (computer too slow ?)
LibVLCWrapper: more than 5 seconds of late video -> dropping frame (computer too slow ?)
LibVLCWrapper: more than 5 seconds of late video -> dropping frame (computer too slow ?)
LibVLCWrapper: more than 5 seconds of late video -> dropping frame (computer too slow ?)
LibVLCWrapper: more than 5 seconds of late video -> dropping frame (computer too slow ?)
LibVLCWrapper: control: stopping input
LibVLCWrapper: can't get output picture
LibVLCWrapper: can't get output picture
LibVLCWrapper: can't get output picture
LibVLCWrapper: removing module "avcodec"
LibVLCWrapper: can't get output picture
LibVLCWrapper: ffmpeg codec (H264 - MPEG-4 AVC (part 10)) stopped
LibVLCWrapper: killing decoder fourcc `h264', 18 PES in FIFO
LibVLCWrapper: saving a free vout
LibVLCWrapper: reusing provided vout
LibVLCWrapper: removing module "faad"
LibVLCWrapper: killing decoder fourcc `mp4a', 0 PES in FIFO
LibVLCWrapper: removing module "samplerate"
LibVLCWrapper: removing module "scaletempo"
LibVLCWrapper: closing audio device
LibVLCWrapper: removing module "float_mixer"
LibVLCWrapper: keeping audio output
LibVLCWrapper: removing module "mp4"
LibVLCWrapper: freeing all memory
LibVLCWrapper: removing module "record"
LibVLCWrapper: removing module "filesystem"
LibVLCWrapper: Program doesn't contain anymore ES
LibVLCWrapper: VLCMediaPlayer::OnMediaEvent(MediaPlayerStopped) -
LibVLCWrapper: removing module "directsound"
LibVLCWrapper: destroying useless vout
LibVLCWrapper: Filter 000000004196F4F0 removed from chain
LibVLCWrapper: removing module "swscale"
LibVLCWrapper: removing module "vmem"
LibVLCWrapper: removing module "freetype"
LibVLCWrapper: removing module "yuvp"
LibVLCWrapper: removing module "swscale"
LibVLCWrapper: VLCMediaPlayer::Destroy()
LibVLCWrapper: VLCMediaPlayer::Shutdown()
LibVLCWrapper: VideoFrame::Release()
LibVLCWrapper: VideoFrame::~VideoFrame()
LibVLCWrapper: VideoFrame::Release()
LibVLCWrapper: VideoFrame::~VideoFrame()
LibVLCWrapper: VideoFrame::Release()
LibVLCWrapper: VideoFrame::~VideoFrame()
LibVLCWrapper: removing all interfaces
LibVLCWrapper: exiting
LibVLCWrapper: no exit handler
LibVLCWrapper: VLCMediaPlayer::~VLCMediaPlayer()