mpv-player / mpv

🎥 Command line video player
https://mpv.io
Other
28.81k stars 2.93k forks source link

online .avi files take too long to start playing #12455

Open braymarco opened 1 year ago

braymarco commented 1 year ago

Important Information

Provide following Information:

https://github.com/mpv-player/mpv/releases/tag/v0.36.0

Reproduction steps

I have a simple local file server and uploaded a shorter example avi file. bigsample.avi size is 2GB

mpv -v --no-config http://127.0.0.1/bigsample.avi or mpv -v --no-config http://127.0.0.1/sample.avi

with uploaded file sample mpv -v --no-config https://0x0.st/HO0Z.avi

Expected behavior

play files .avi online as soon as there is data to play and the time finder works to be able to jump to a certain minute

Actual behavior

It takes too long to start playing large files as it takes a while to search for a certain section of video information using '[ffmpeg] stream level seek from x to y'.

If I use --stream-lavf-o=seekable=0 it starts playing as soon as there is data but it is not possible to use the time seek bar, if I use --force-seekable=yes it only searches the previously played data.

I try from vlc and this problem does not seem to occur.

If the 0x0.st test file is used, the waiting time may be a little shorter due to its small size, however there is a few seconds of delay.

Log file

bigsample.avi

[cplayer] Command line options: '-v' '--no-config' 'http://127.0.0.1/bigsample.avi' [cplayer] mpv 0.36.0 Copyright © 2000-2023 mpv/MPlayer/mplayer2 projects [cplayer] built on Tue Aug 01 10:56:31 2023 [cplayer] libplacebo version: v6.292.0-78-gabf34ba-dirty [cplayer] FFmpeg version: N-111661-g567e78b28 [cplayer] FFmpeg library versions: [cplayer] libavutil 58.14.100 [cplayer] libavcodec 60.22.100 [cplayer] libavformat 60.10.100 [cplayer] libswscale 7.3.100 [cplayer] libavfilter 9.10.100 [cplayer] libswresample 4.11.100 [cplayer] [cplayer] Configuration: -Db_lto=true -Db_ndebug=true -Dlibmpv=true -Dpdf-build=enabled -Dlua=enabled -Djavascript=enabled -Dsdl2=enabled -Dlibarchive=enabled -Dlibbluray=enabled -Ddvdnav=enabled -Duchardet=enabled -Drubberband=enabled -Dlcms2=enabled -Dopenal=enabled -Dspirv-cross=enabled -Dvulkan=enabled -Dlibplacebo=enabled -Dvapoursynth=enabled -Degl-angle=enabled -Dprefix=/w/mpv-winbuild-cmake/mpv-winbuild-cmake/build64/install/mingw -Dlibdir=/w/mpv-winbuild-cmake/mpv-winbuild-cmake/build64/install/mingw/lib -Dbuildtype=release -Ddefault_library=shared -Dprefer_static=True --cross-file=/__w/mpv-winbuild-cmake/mpv-winbuild-cmake/build64/meson_cross.txt [cplayer] List of enabled features: av-channel-layout avif_muxer build-date cuda-hwaccel cuda-interop d3d-hwaccel d3d11 d3d9-hwaccel direct3d dos-paths dvdnav egl-angle egl-angle-win32 egl-helpers ffmpeg ffnvcodec gl gl-dxinterop gl-dxinterop-d3d9 gl-win32 glob glob-win32 gpl iconv javascript jpeg jpegxl lcms2 libarchive libass libavdevice libbluray libm libplacebo libplacebo-next luajit manpage-build noexecstack openal pdf-build rubberband rubberband-3 sdl2 sdl2-audio sdl2-gamepad sdl2-video shaderc spirv-cross stdatomic threads uchardet vapoursynth vector vk_khr_display vulkan vulkan-interop wasapi win32 win32-desktop win32-executable win32-internal-pthreads zimg zimg-st428 zlib [cplayer] Built with NDEBUG. [cplayer] Setting option 'v' = '' (flags = 8) [cplayer] Setting option 'config' = 'no' (flags = 8) [cplayer] Waiting for scripts... [osd/libass] libass API version: 0x1701000 [osd/libass] libass source: commit: 0.17.0-51-g91422bdb9497e8484b3248f5ae7eb50d41e2555d [osd/libass] Shaper: FriBidi 1.0.13 (SIMPLE) HarfBuzz-ng 8.1.0 (COMPLEX) [osd/libass] Setting up fonts... [osd/libass] Using font provider directwrite (with GDI) [osd/libass] Done. [cplayer] Set property: shared-script-properties -> 1 [cplayer] Set property: user-data/osc/visibility="auto" -> 1 [cplayer] Set property: shared-script-properties -> 1 [cplayer] Set property: user-data/osc/margins={"b":0,"t":0,"l":0,"r":0} -> 1 [cplayer] Done loading scripts. [cplayer] Running hook: ytdl_hook/on_load [ytdl_hook] ytdl:// hook [cplayer] Set property: shared-script-properties -> 1 [cplayer] Set property: user-data/osc/margins={"b":0,"t":0,"l":0,"r":0} -> 1 [ytdl_hook] not a ytdl:// url [cplayer] Set property: shared-script-properties -> 1 [cplayer] Set property: user-data/osc/margins={"b":0,"t":0,"l":0,"r":0} -> 1 [osd/libass] libass API version: 0x1701000 [osd/libass] libass source: commit: 0.17.0-51-g91422bdb9497e8484b3248f5ae7eb50d41e2555d [ffmpeg] Opening http://127.0.0.1/bigsample.avi [osd/libass] Shaper: FriBidi 1.0.13 (SIMPLE) HarfBuzz-ng 8.1.0 (COMPLEX) [osd/libass] Setting up fonts... [osd/libass] Using font provider directwrite (with GDI) [osd/libass] Done. [ffmpeg] Could not set AVOption tls_verify='0' [ffmpeg] Mime-type: 'video/x-msvideo' [demux] Trying demuxers for level=normal. [lavf] Found 'avi' at score=100 size=2048. [ffmpeg] stream level seek from 7843 to 3086393736 [ffmpeg] stream level seek from 3086434341 to 260 [ffmpeg] stream level seek from 8101 to 3086418344 [ffmpeg] stream level seek from 3086458949 to 276 [ffmpeg] stream level seek from 8117 to 3086442952 [ffmpeg] stream level seek from 3086483557 to 292 [ffmpeg] stream level seek from 8133 to 3086467560 [ffmpeg] stream level seek from 3086508165 to 308 [ffmpeg] stream level seek from 8149 to 3086492168 [ffmpeg] stream level seek from 3086532773 to 324 [ffmpeg] stream level seek from 8165 to 3086516776 [ffmpeg] stream level seek from 3086557381 to 340 [ffmpeg] stream level seek from 8181 to 3086541384 [ffmpeg] stream level seek from 3086581989 to 356 [ffmpeg] stream level seek from 8197 to 3086565992 [ffmpeg] stream level seek from 3086606597 to 372 [ffmpeg] stream level seek from 8213 to 3086590600 [ffmpeg] stream level seek from 3086631205 to 388 [ffmpeg] stream level seek from 8229 to 3086615208 [ffmpeg] stream level seek from 3086655813 to 404 [ffmpeg] stream level seek from 8245 to 3086639816 [ffmpeg] stream level seek from 3086680421 to 420 [ffmpeg] stream level seek from 8261 to 3086664424 [ffmpeg] stream level seek from 3086705029 to 436 [ffmpeg] stream level seek from 8277 to 3086689032 [ffmpeg] stream level seek from 3086729637 to 452 [ffmpeg] stream level seek from 8293 to 3086713640 [ffmpeg] stream level seek from 3086754245 to 468 [ffmpeg] stream level seek from 8309 to 3086738248 [ffmpeg] stream level seek from 3086778853 to 484 [ffmpeg] stream level seek from 8325 to 3086762856 [ffmpeg] stream level seek from 3086803461 to 500 [ffmpeg] stream level seek from 8341 to 3086787464 [ffmpeg] stream level seek from 3086828069 to 516 [ffmpeg] stream level seek from 8357 to 3086812072 [ffmpeg] stream level seek from 3086852677 to 532 [ffmpeg] stream level seek from 8373 to 3086836680 [ffmpeg] stream level seek from 3086877285 to 548 [ffmpeg] stream level seek from 8389 to 3086861288 [ffmpeg] stream level seek from 3086901893 to 564 [ffmpeg] stream level seek from 8405 to 3086885896 [ffmpeg] stream level seek from 3086926501 to 580 [ffmpeg] stream level seek from 8421 to 3086910504 [ffmpeg] stream level seek from 3086951109 to 596 [ffmpeg] stream level seek from 8437 to 3086935112 [ffmpeg] stream level seek from 3086975717 to 612 [ffmpeg] stream level seek from 8453 to 3086959720 [ffmpeg] stream level seek from 3087000325 to 628 [ffmpeg] stream level seek from 8469 to 3086984328 [ffmpeg] stream level seek from 3087024933 to 644 [ffmpeg] stream level seek from 8485 to 3087008936 [ffmpeg] stream level seek from 3087049541 to 660 [ffmpeg] stream level seek from 8501 to 3087033544 [ffmpeg] stream level seek from 3087074149 to 676 [ffmpeg] stream level seek from 8517 to 3087058152 [ffmpeg] stream level seek from 3087098757 to 692 [ffmpeg] stream level seek from 8533 to 3087082760 [ffmpeg] stream level seek from 3087123365 to 708 [ffmpeg] stream level seek from 8549 to 3087107368 [ffmpeg] stream level seek from 3087147973 to 724 [ffmpeg] stream level seek from 8565 to 3087131976 [ffmpeg] stream level seek from 3087172581 to 740 [ffmpeg] stream level seek from 8581 to 3087156584 [ffmpeg] stream level seek from 3087197189 to 756 [ffmpeg] stream level seek from 8597 to 3087181192 [ffmpeg] stream level seek from 3087221797 to 772 [ffmpeg] stream level seek from 8613 to 3087205800 [ffmpeg] stream level seek from 3087246405 to 788 [ffmpeg] stream level seek from 8629 to 3087230408 [ffmpeg] stream level seek from 3087271013 to 804 [ffmpeg] stream level seek from 8645 to 3087255016 [ffmpeg] stream level seek from 3087295621 to 820 [ffmpeg] stream level seek from 8661 to 3087279624 [ffmpeg] stream level seek from 3087320229 to 836 [ffmpeg] stream level seek from 8677 to 3087304232 [ffmpeg] stream level seek from 3087344837 to 852 [ffmpeg] stream level seek from 8693 to 3087328840 [ffmpeg] stream level seek from 3087369445 to 868 [ffmpeg] stream level seek from 8709 to 3087353448 [ffmpeg] stream level seek from 3087394053 to 884 [ffmpeg] stream level seek from 8725 to 3087378056 [ffmpeg] stream level seek from 3087418661 to 900 [ffmpeg] stream level seek from 8741 to 3087402664 [ffmpeg] stream level seek from 3087443269 to 916 [ffmpeg] stream level seek from 8757 to 3087427272 [ffmpeg] stream level seek from 3087467877 to 932 [ffmpeg] stream level seek from 8773 to 3087451880 [ffmpeg] stream level seek from 3087492485 to 948 [ffmpeg] stream level seek from 8789 to 3087476488 [ffmpeg] stream level seek from 3087517093 to 964 [ffmpeg] stream level seek from 8805 to 3087501096 [ffmpeg] stream level seek from 3087541701 to 980 [ffmpeg] stream level seek from 8821 to 3087525704 [ffmpeg] stream level seek from 3087566309 to 996 [ffmpeg] stream level seek from 8837 to 3087550312 [ffmpeg] stream level seek from 3087590917 to 1012 [ffmpeg] stream level seek from 8852 to 3087574920 [ffmpeg] stream level seek from 3087615525 to 1028 [ffmpeg] stream level seek from 8868 to 3087599528 [ffmpeg] stream level seek from 3087640133 to 1044 [ffmpeg] stream level seek from 8884 to 3087624136 [ffmpeg] stream level seek from 3087664741 to 1060 [ffmpeg] stream level seek from 8900 to 3087648744 [ffmpeg] stream level seek from 3087689349 to 1076 [ffmpeg] stream level seek from 8916 to 3087673352 [ffmpeg] stream level seek from 3087713957 to 1092 [ffmpeg] stream level seek from 8932 to 3087697960 [ffmpeg] stream level seek from 3087738565 to 1108 [ffmpeg] stream level seek from 8948 to 3087722568 [ffmpeg] stream level seek from 3087763173 to 1124 [ffmpeg] stream level seek from 8964 to 3087747176 [ffmpeg] stream level seek from 3087787781 to 1140 [ffmpeg] stream level seek from 8980 to 3087771784 [ffmpeg] stream level seek from 3087812389 to 1156 [ffmpeg] stream level seek from 8996 to 3087796392 [ffmpeg] stream level seek from 3087836997 to 1172 [ffmpeg] stream level seek from 9012 to 3087821000 [ffmpeg] stream level seek from 3087861605 to 1188 [ffmpeg] stream level seek from 9028 to 3087845608 [ffmpeg] stream level seek from 3087886213 to 1204 [ffmpeg] stream level seek from 9044 to 3087870216 [ffmpeg] stream level seek from 3087910821 to 1220 [ffmpeg] stream level seek from 9060 to 3087894824 [ffmpeg] stream level seek from 3087935429 to 1236 [ffmpeg] stream level seek from 9076 to 3087919432 [ffmpeg] stream level seek from 3087960037 to 1252 [ffmpeg] stream level seek from 9092 to 3087944040 [ffmpeg] stream level seek from 3087984645 to 1268 [ffmpeg] stream level seek from 9108 to 3087968648 [ffmpeg] stream level seek from 3088009253 to 1284 [ffmpeg] stream level seek from 9124 to 3087993256 [ffmpeg] stream level seek from 3088033861 to 1300 [ffmpeg] stream level seek from 9140 to 3088017864 [ffmpeg] stream level seek from 3088058469 to 1316 [ffmpeg] stream level seek from 9156 to 3088042472 [ffmpeg] stream level seek from 3088083077 to 1332 [ffmpeg] stream level seek from 9172 to 3088067080 [ffmpeg] stream level seek from 3088107685 to 1348 [ffmpeg] stream level seek from 9188 to 3088091688 [ffmpeg] stream level seek from 3088132293 to 1364 [ffmpeg] stream level seek from 9204 to 3088116296 [ffmpeg] stream level seek from 3088156901 to 1380 [ffmpeg] stream level seek from 9220 to 3088140904 [ffmpeg] stream level seek from 3088181509 to 1396 [ffmpeg] stream level seek from 9236 to 3088165512 [ffmpeg] stream level seek from 3088206117 to 1412 [ffmpeg] stream level seek from 9252 to 3088190120 [ffmpeg] stream level seek from 3088230725 to 1428 [ffmpeg] stream level seek from 9268 to 3088214728 [ffmpeg] stream level seek from 3088255333 to 1444 [ffmpeg] stream level seek from 9284 to 3088239336 [ffmpeg] stream level seek from 3088279941 to 1460 [ffmpeg] stream level seek from 9300 to 3088263944 [ffmpeg] stream level seek from 3088304549 to 1476 [ffmpeg] stream level seek from 9316 to 3088288552 [ffmpeg] stream level seek from 3088329157 to 1492 [ffmpeg] stream level seek from 9332 to 3088313160 [ffmpeg] stream level seek from 3088353765 to 1508 [ffmpeg] stream level seek from 9348 to 3088337768 [ffmpeg] stream level seek from 3088378373 to 1524 [ffmpeg] stream level seek from 9364 to 3088362376 [ffmpeg] stream level seek from 3088402981 to 1540 [ffmpeg] stream level seek from 9380 to 3088386984 [ffmpeg] stream level seek from 3088427589 to 1556 [ffmpeg] stream level seek from 9396 to 3088411592 [ffmpeg] stream level seek from 3088452197 to 1572 [ffmpeg] stream level seek from 9412 to 3088435160 [ffmpeg] stream level seek from 3088475765 to 4490 [ffmpeg] stream level seek from 12330 to 3088459768 [ffmpeg] stream level seek from 3088500373 to 4506 [ffmpeg] stream level seek from 12346 to 3088484376 [ffmpeg] stream level seek from 3088524981 to 4522 [ffmpeg] stream level seek from 12362 to 3088508984 [ffmpeg] stream level seek from 3088549589 to 4538 [ffmpeg] stream level seek from 12378 to 3088533592 [ffmpeg] stream level seek from 3088574197 to 4554 [ffmpeg] stream level seek from 12394 to 3088558200 [ffmpeg] stream level seek from 3088598805 to 4570 [ffmpeg] stream level seek from 12410 to 3088582808 [ffmpeg] stream level seek from 3088623413 to 4586 [ffmpeg] stream level seek from 12426 to 3088607416 [ffmpeg] stream level seek from 3088648021 to 4602 [ffmpeg] stream level seek from 12442 to 3088632024 [ffmpeg] stream level seek from 3088672629 to 4618 [ffmpeg] stream level seek from 12458 to 3088656632 [ffmpeg] stream level seek from 3088697237 to 4634 [ffmpeg] stream level seek from 12474 to 3088681240 [ffmpeg] stream level seek from 3088721845 to 4650 [ffmpeg] stream level seek from 12490 to 3088705848 [ffmpeg] stream level seek from 3088746453 to 4666 [ffmpeg] stream level seek from 12506 to 3088730456 [ffmpeg] stream level seek from 3088771061 to 4682 [ffmpeg] stream level seek from 12522 to 3088755064 [ffmpeg] stream level seek from 3088795669 to 4698 [ffmpeg] stream level seek from 12538 to 3088779672 [ffmpeg] stream level seek from 3088820277 to 4714 [ffmpeg] stream level seek from 12554 to 3088804280 [ffmpeg] stream level seek from 3088844885 to 4730 [ffmpeg] stream level seek from 12570 to 3088828888 [ffmpeg] stream level seek from 3088869493 to 4746 [ffmpeg] stream level seek from 12586 to 3088853496 [ffmpeg] stream level seek from 3088894101 to 4762 [ffmpeg] stream level seek from 12602 to 3088878104 [ffmpeg] stream level seek from 3088918709 to 4778 [ffmpeg] stream level seek from 12618 to 3088902712 [ffmpeg] stream level seek from 3088943317 to 4794 [ffmpeg] stream level seek from 12634 to 3088927320 [ffmpeg] stream level seek from 3088967925 to 4810 [ffmpeg] stream level seek from 12650 to 3088951928 [ffmpeg] stream level seek from 3088992533 to 4826 [ffmpeg] stream level seek from 12666 to 3088976536 [ffmpeg] stream level seek from 3089017141 to 4842 [ffmpeg] stream level seek from 12682 to 3089001144 [ffmpeg] stream level seek from 3089041749 to 4858 [ffmpeg] stream level seek from 12698 to 3089025752 [ffmpeg] stream level seek from 3089066357 to 4874 [ffmpeg] stream level seek from 12714 to 3089050360 [ffmpeg] stream level seek from 3089090965 to 4890 [ffmpeg] stream level seek from 12730 to 3089074968 [ffmpeg] stream level seek from 3089115573 to 4906 [ffmpeg] stream level seek from 12746 to 3089099576 [ffmpeg] stream level seek from 3089140181 to 4922 [ffmpeg] stream level seek from 12762 to 3089124184 [ffmpeg] stream level seek from 3089164789 to 4938 [ffmpeg] stream level seek from 12778 to 3089148792 [ffmpeg] stream level seek from 3089189397 to 4954 [ffmpeg] stream level seek from 12794 to 3089173400 [ffmpeg] stream level seek from 3089214005 to 4970 [ffmpeg] stream level seek from 12810 to 3089198008 [ffmpeg] stream level seek from 3089238613 to 4986 [ffmpeg] stream level seek from 12826 to 3089222616 [ffmpeg] stream level seek from 3089263221 to 5002 [ffmpeg] stream level seek from 12842 to 3089247224 [ffmpeg] stream level seek from 3089287829 to 5018 [ffmpeg] stream level seek from 12858 to 3089271832 [ffmpeg] stream level seek from 3089312437 to 5034 [ffmpeg] stream level seek from 12874 to 3089296440 [ffmpeg] stream level seek from 3089337045 to 5050 [ffmpeg] stream level seek from 12890 to 3089321048 [ffmpeg] stream level seek from 3089361653 to 5066 [ffmpeg] stream level seek from 12906 to 3089345656 [ffmpeg] stream level seek from 3089386261 to 5082 [ffmpeg] stream level seek from 12922 to 3089370264 [ffmpeg] stream level seek from 3089410869 to 5098 [ffmpeg] stream level seek from 12938 to 3089394872 [ffmpeg] stream level seek from 3089435477 to 5114 [ffmpeg] stream level seek from 12954 to 3089419480 [ffmpeg] stream level seek from 3089460085 to 5130 [ffmpeg] stream level seek from 12970 to 3089444088 [ffmpeg] stream level seek from 3089484693 to 5146 [ffmpeg] stream level seek from 12986 to 3089468696 [ffmpeg] stream level seek from 3089509301 to 5162 [ffmpeg] stream level seek from 13002 to 3089493304 [ffmpeg] stream level seek from 3089533910 to 5178 [ffmpeg] stream level seek from 13018 to 3089517912 [ffmpeg] stream level seek from 3089558518 to 5194 [ffmpeg] stream level seek from 13034 to 3089542520 [ffmpeg] stream level seek from 3089583126 to 5210 [ffmpeg] stream level seek from 13050 to 3089567128 [ffmpeg] stream level seek from 3089607734 to 5226 [ffmpeg] stream level seek from 13066 to 3089591736 [ffmpeg] stream level seek from 3089632342 to 5242 [ffmpeg] stream level seek from 13082 to 3089616344 [ffmpeg] stream level seek from 3089656950 to 5258 [ffmpeg] stream level seek from 13098 to 3089640952 [ffmpeg] stream level seek from 3089681558 to 5274 [ffmpeg] stream level seek from 13114 to 3089665560 [ffmpeg] stream level seek from 3089706166 to 5290 [ffmpeg] stream level seek from 13130 to 3089690168 [ffmpeg] stream level seek from 3089730774 to 5306 [ffmpeg] stream level seek from 13146 to 3089714776 [ffmpeg] stream level seek from 3089755382 to 5322 [ffmpeg] stream level seek from 13162 to 3089739384 [ffmpeg] stream level seek from 3089779990 to 5338 [ffmpeg] stream level seek from 13178 to 3089763992 [ffmpeg] stream level seek from 3089804598 to 5354 [ffmpeg] stream level seek from 13194 to 3089788600 [ffmpeg] stream level seek from 3089829206 to 5370 [ffmpeg] stream level seek from 13210 to 3089813208 [ffmpeg] stream level seek from 3089853814 to 5386 [ffmpeg] stream level seek from 13226 to 3089837816 [ffmpeg] stream level seek from 3089878422 to 5402 [ffmpeg] stream level seek from 13242 to 3089862424 [ffmpeg] stream level seek from 3089903030 to 5418 [ffmpeg] stream level seek from 13258 to 3089887032 [ffmpeg] stream level seek from 3089927638 to 5434 [ffmpeg] stream level seek from 13274 to 3089911640 [ffmpeg] stream level seek from 3089952246 to 5450 [ffmpeg] stream level seek from 13290 to 3089936248 [ffmpeg] stream level seek from 3089976854 to 5466 [ffmpeg] stream level seek from 13306 to 3089960856 [ffmpeg] stream level seek from 3090001462 to 5482 [ffmpeg] stream level seek from 13322 to 3089985464 [ffmpeg] stream level seek from 3090026070 to 5498 [ffmpeg] stream level seek from 13338 to 3090010072 [ffmpeg] stream level seek from 3090050678 to 5514 [ffmpeg] stream level seek from 13354 to 3090034680 [ffmpeg] stream level seek from 3090075286 to 5530 [ffmpeg] stream level seek from 13370 to 3090059288 [ffmpeg] stream level seek from 3090099894 to 5546 [ffmpeg] stream level seek from 13386 to 3090083896 [ffmpeg] stream level seek from 3090124502 to 5562 [ffmpeg] stream level seek from 13402 to 3090108504 [ffmpeg] stream level seek from 3090149110 to 5578 [ffmpeg] stream level seek from 13418 to 3090133112 [ffmpeg] stream level seek from 3090173718 to 5594 [ffmpeg] stream level seek from 13434 to 3090157720 [ffmpeg] stream level seek from 3090198326 to 5610 [ffmpeg] stream level seek from 13450 to 3090182328 [ffmpeg] stream level seek from 3090222934 to 5626 [ffmpeg] stream level seek from 13466 to 3090206936 [ffmpeg] stream level seek from 3090247542 to 5642 [ffmpeg] stream level seek from 13482 to 3090231544 [ffmpeg] stream level seek from 3090272150 to 5658 [ffmpeg] stream level seek from 13498 to 3090256152 [ffmpeg] stream level seek from 3090296758 to 5674 [ffmpeg] stream level seek from 13514 to 3090280760 [ffmpeg] stream level seek from 3090321366 to 5690 [ffmpeg] stream level seek from 13530 to 3090305368 [ffmpeg] stream level seek from 3090345974 to 5706 [ffmpeg] stream level seek from 13546 to 3090329976 [ffmpeg] stream level seek from 3090370582 to 5722 [ffmpeg] stream level seek from 13562 to 3090354584 [ffmpeg] stream level seek from 3090395190 to 5738 [ffmpeg] stream level seek from 13578 to 3090379192 [ffmpeg] stream level seek from 3090419799 to 5754 [ffmpeg] stream level seek from 13594 to 3090403800 [ffmpeg] stream level seek from 3090444407 to 5770 [ffmpeg] stream level seek from 13610 to 3090428408 [ffmpeg] stream level seek from 3090469015 to 5786 [ffmpeg] stream level seek from 13626 to 3090453016 [ffmpeg] stream level seek from 3090477056 to 5802 [ffmpeg] stream level seek from 46410 to 0 [lavf] avformat_find_stream_info() finished after 73379 bytes. [demux] Detected file format: avi (libavformat) [cplayer] Opening done: http://127.0.0.1/bigsample.avi [cplayer] Running hook: ytdl_hook/on_preloaded [lavf] select track 0 [lavf] select track 1 [cplayer] (+) Video --vid=1 (mpeg4 720x400 23.976fps) [cplayer] (+) Audio --aid=1 (ac3 6ch 48000Hz) [vo/gpu] Probing for best GPU context. [vo/gpu/d3d11] Initializing GPU context 'd3d11' [vo/gpu/d3d11] Using Direct3D 11 feature level 12_1 [vo/gpu/d3d11] Device Name: Intel(R) HD Graphics 530 [vo/gpu/d3d11] Device ID: 8086:1912 (rev 06) [vo/gpu/d3d11] Subsystem ID: 1043:8694 [vo/gpu/d3d11] LUID: 00000000000105c5 [vo/gpu/d3d11] Initializing SPIR-V compiler 'shaderc' [vo/gpu/d3d11] Using Direct3D 11.1 runtime [vo/gpu/d3d11] Maximum Texture2D size: 16384x16384 [vo/gpu/d3d11] D3DCompiler version: 10.0.22000.653 [vo/gpu/d3d11] Using DXGI 1.2+ [vo/gpu/d3d11] Queried output: \.\DISPLAY1, 1600x900 @ 8 bits, colorspace: RGB_FULL_G22_NONE_P709 (0) [vo/gpu/d3d11] Selected swapchain format R8G8B8A8_UNORM (28), attempting to utilize it. [vo/gpu/d3d11] Selected swapchain color space RGB_FULL_G22_NONE_P709 (0), attempting to utilize it. [vo/gpu/d3d11] Swapchain capabilities for color space RGB_FULL_G22_NONE_P709 (0): normal: yes, overlay: yes [vo/gpu/d3d11] Swapchain successfully configured to color space RGB_FULL_G22_NONE_P709 (0)! [vo/gpu/d3d11] Using flip-model presentation [vo/gpu] Testing FBO format rgba16hf [vo/gpu] Using FBO format rgba16hf. [vo/gpu] No advanced processing required. Enabling dumb mode. [vo/gpu/win32] DPI detected from the new API: 96 [vo/gpu/win32] display-fps: 60.000000 [vo/gpu/win32] color-profile: C:\WINDOWS\system32\spool\drivers\color\sRGB Color Space Profile.icm [vo/gpu] Assuming 60.000000 FPS for display sync. [vd] Container reported FPS: 23.976043 [vd] Codec list: [vd] mpeg4 - MPEG-4 part 2 [vd] mpeg4_cuvid (mpeg4) - Nvidia CUVID MPEG4 decoder [vd] Opening decoder mpeg4 [vd] No hardware decoding requested. [vd] Using software decoding. [vd] Detected 4 logical cores. [vd] Requesting 5 threads for decoding. [vd] Selected codec: mpeg4 (MPEG-4 part 2) [vf] User filter list: [vf] (empty) [ad] Codec list: [ad] ac3 - ATSC A/52A (AC-3) [ad] ac3_fixed (ac3) - ATSC A/52A (AC-3) [ad] Opening decoder ac3 [ad] Requesting 1 threads for decoding. [ad] Selected codec: ac3 (ATSC A/52A (AC-3)) [af] User filter list: [af] (empty) [cplayer] Starting playback... [af] [in] 48000Hz 5.1(side) 6ch floatp [af] [userspeed] 48000Hz 5.1(side) 6ch floatp [af] [userspeed] (disabled) [af] [convert] 48000Hz 5.1(side) 6ch floatp [vd] DR failed - disabling. [vd] Using software decoding. [vd] Decoder format: 720x400 yuv420p auto/auto/auto/auto/auto CL=mpeg2/4/h264 [vf] [in] 720x400 yuv420p bt.601/bt.709/bt.1886/limited/display SP=1.000000 CL=mpeg2/4/h264 [vf] [userdeint] 720x400 yuv420p bt.601/bt.709/bt.1886/limited/display SP=1.000000 CL=mpeg2/4/h264 [vf] [userdeint] (disabled) [vf] [autorotate] 720x400 yuv420p bt.601/bt.709/bt.1886/limited/display SP=1.000000 CL=mpeg2/4/h264 [vf] [autorotate] (disabled) [vf] [convert] 720x400 yuv420p bt.601/bt.709/bt.1886/limited/display SP=1.000000 CL=mpeg2/4/h264 [vf] [convert] (disabled) [vf] [out] 720x400 yuv420p bt.601/bt.709/bt.1886/limited/display SP=1.000000 CL=mpeg2/4/h264 [ao] Trying audio driver 'wasapi' [ao/wasapi] requested format: 48000 Hz, 5.1(side) channels, floatp [ao/wasapi] No device specified. Selecting default. [ao/wasapi] Selecting device '{93939c59-13a5-4126-8a9a-7dc148c1a2d0}' (Altavoces (High Definition Audio Device)) [ao/wasapi] Monitoring changes in device {0.0.0.00000000}.{93939c59-13a5-4126-8a9a-7dc148c1a2d0} [ao/wasapi] Trying 5.1(side) float (32/32 bits) @ 48000hz (shared) -> close [ao/wasapi] Closest match is stereo float (32/32 bits) @ 48000hz [ao/wasapi] Accepted as stereo float @ 48000hz -> stereo float (32/32 bits) @ 48000hz (shared) [ao/wasapi] Device period: 10 ms [ao/wasapi] Buffer frame count: 2400 (50 ms) [ao/wasapi] IAudioClock::GetFrequency gave a frequency of 384000. [ao/wasapi] device buffer: 2400 samples. [ao/wasapi] using soft-buffer of 9600 samples. [cplayer] AO: [wasapi] 48000Hz stereo 2ch float [cplayer] AO: Description: Windows WASAPI audio output (event mode) [autoconvert] inserting resampler [swresample] format change, reinitializing resampler [swresample] 48000Hz 5.1(side) floatp -> 48000Hz stereo float [swresample] Remix: 5.1(side) -> stereo [af] [out] 48000Hz stereo 2ch float [cplayer] VO: [gpu] 720x400 yuv420p [cplayer] VO: Description: Shader-based GPU Renderer [vo/gpu] reconfig to 720x400 yuv420p bt.601/bt.709/bt.1886/limited/display SP=1.000000 CL=mpeg2/4/h264 [vo/gpu/win32] reset window bounds: 440:237:720:400 [vo/gpu/win32] resize window: 720:400 [vo/gpu/win32] resize window: 720:400 [vo/gpu] Resize: 720x400 [vo/gpu] Window size: 720x400 (Borders: l=0 t=0 r=0 b=0) [vo/gpu] Video source: 720x400 (1:1) [vo/gpu] Video display: (0, 0) 720x400 -> (0, 0) 720x400 [vo/gpu] Video scale: 1.000000/1.000000 [vo/gpu] OSD borders: l=0 t=0 r=0 b=0 [vo/gpu] Video borders: l=0 t=0 r=0 b=0 [vo/gpu] Reported display depth: 8 [vo/gpu] Texture for plane 0: 720x400 [vo/gpu] Texture for plane 1: 360x200 [vo/gpu] Texture for plane 2: 360x200 [vo/gpu] Testing FBO format rgba16hf [vo/gpu] Using FBO format rgba16hf. [vo/gpu] No advanced processing required. Enabling dumb mode. [vo/gpu] Resize: 720x400 [vo/gpu] Window size: 720x400 (Borders: l=0 t=0 r=0 b=0) [vo/gpu] Video source: 720x400 (1:1) [vo/gpu] Video display: (0, 0) 720x400 -> (0, 0) 720x400 [vo/gpu] Video scale: 1.000000/1.000000 [vo/gpu] OSD borders: l=0 t=0 r=0 b=0 [vo/gpu] Video borders: l=0 t=0 r=0 b=0 [vo/gpu] Reported display depth: 8 [vo/gpu/d3d11] shaderc compile status 'success' (0 errors, 0 warnings) [vo/gpu/d3d11] Compiled a vertex shader in 168078us [vo/gpu/d3d11] shaderc: 163835us, SPIRV-Cross: 835us, D3DCompile: 3408us [vo/gpu/d3d11] shaderc compile status 'success' (0 errors, 0 warnings) [vo/gpu/d3d11] Compiled a fragment shader in 10211us [vo/gpu/d3d11] shaderc: 5148us, SPIRV-Cross: 465us, D3DCompile: 4598us [cplayer] first video frame after restart shown [cplayer] Set property: shared-script-properties -> 1 [cplayer] Set property: user-data/osc/margins={"b":0,"t":0,"l":0,"r":0} -> 1 [cplayer] audio ready [cplayer] delaying audio start 0.000000 vs. -0.000000, diff=0.000000 [cplayer] playback restart complete @ -0.000000, audio=ready, video=playing [statusline] AV: -00:00:00 / 02:57:09 (0%) A-V: 0.000 Cache: 426s/79MB [cplayer] starting audio playback [cplayer] Set property: shared-script-properties -> 1 [cplayer] Set property: user-data/osc/margins={"b":0,"t":0,"l":0,"r":0} -> 1 [statusline] AV: 00:00:00 / 02:57:09 (0%) A-V: 0.000 Cache: 559s/150MB [cplayer] Set property: shared-script-properties -> 1 [cplayer] Set property: user-data/osc/margins={"b":0,"t":0,"l":0,"r":0} -> 1 [statusline] AV: 00:00:00 / 02:57:09 (0%) A-V: 0.000 Cache: 559s/150MB [osd/libass] fontselect: (sans-serif, 400, 0) -> ArialMT, 0, ArialMT [osd/libass] fontselect: (mpv-osd-symbols, 400, 0) -> mpv-osd-symbols-Regular, 0, mpv-osd-symbols-Regular [vo/gpu] Reallocating OSD texture to 1024x128. [vo/gpu/d3d11] shaderc compile status 'success' (0 errors, 0 warnings) [vo/gpu/d3d11] Compiled a vertex shader in 7287us [vo/gpu/d3d11] shaderc: 3800us, SPIRV-Cross: 236us, D3DCompile: 3251us [vo/gpu/d3d11] shaderc compile status 'success' (0 errors, 0 warnings) [vo/gpu/d3d11] Compiled a fragment shader in 8231us [vo/gpu/d3d11] shaderc: 4985us, SPIRV-Cross: 268us, D3DCompile: 2978us [statusline] AV: 00:00:00 / 02:57:09 (0%) A-V: 0.000 Cache: 559s/150MB [cplayer] Set property: shared-script-properties -> 1 [cplayer] Set property: user-data/osc/margins={"b":0,"t":0,"l":0,"r":0} -> 1 ^Ctatusline] AV: 00:00:01 / 02:57:09 (0%) A-V: 0.000 Cache: 559s/150MB

Sample files

https://0x0.st/HO0Z.avi

Thanks!

po5 commented 1 year ago

What web server is 127.0.0.1 running? Does the issue still happen with mpv -v --no-config https://0x0.st/HO0Z.avi?

Can't reproduce on Arch Linux.

mpv v0.36.0-315-g7a76cf4d65 Copyright © 2000-2023 mpv/MPlayer/mplayer2 projects
libplacebo version: v6.292.0-335-gd548232d
FFmpeg version: N-111995-g5f8c113b75
FFmpeg library versions:
   libavutil       58.19.100
   libavcodec      60.26.100
   libavformat     60.11.100
   libswscale      7.3.100
   libavfilter     9.11.100
   libswresample   4.11.100

Log: issue-12455-po5.txt

llyyr commented 1 year ago

I don't think avi is the container you're looking for as far as playback over network is concerned, consider using a sane container for network playback instead

sfan5 commented 1 year ago

As you can see ffmpeg is seeking back and forth in the file for some reason, which takes time. This is not something we can fix.

Though since the offets are so close together surely ffmpeg should just overread and cache the stuff between offsets 8000-12000, then that wouldn't be an issue.

braymarco commented 1 year ago

As you can see ffmpeg is seeking back and forth in the file for some reason, which takes time. This is not something we can fix.

Though since the offets are so close together surely ffmpeg should just overread and cache the stuff between offsets 8000-12000, then that wouldn't be an issue.

Would there be a way to use --stream-lavf-o=seekable=0 without then not allowing navigation in time since with this flag you can avoid waiting a few minutes (in my case) before starting to play

braymarco commented 1 year ago

What web server is 127.0.0.1 running? Does the issue still happen with mpv -v --no-config https://0x0.st/HO0Z.avi?

Can't reproduce on Arch Linux.

mpv v0.36.0-315-g7a76cf4d65 Copyright © 2000-2023 mpv/MPlayer/mplayer2 projects
libplacebo version: v6.292.0-335-gd548232d
FFmpeg version: N-111995-g5f8c113b75
FFmpeg library versions:
   libavutil       58.19.100
   libavcodec      60.26.100
   libavformat     60.11.100
   libswscale      7.3.100
   libavfilter     9.11.100
   libswresample   4.11.100

Log: issue-12455-po5.txt

The server is working. When using the uploaded example file you cannot appreciate the waiting time as much, however if you perform "stream level seek from x to y" since it is small in size it happens quickly, however in a ~2GB file you have to perform ~70MB download before starting to play, in this part you can see that small setback

[ffmpeg] Mime-type: 'video/x-msvideo' [demux] Trying demuxers for level=normal. [lavf] Found 'avi' at score=100 size=2048. [ffmpeg] stream level seek from 7551 to 85618414 [ffmpeg] stream level seek from 85625961 to 5766 [ffmpeg] stream level seek from 13314 to 85618422 [ffmpeg] stream level seek from 85628950 to 5766 [lavf] avformat_find_stream_info() finished after 5198850 bytes. [demux] Detected file format: avi (libavformat) [cplayer] Opening done: https://0x0.st/HO0Z.avi [cplayer] Running hook: ytdl_hook/on_preloaded

sfan5 commented 1 year ago

Would there be a way to use --stream-lavf-o=seekable=0 without then not allowing navigation in time since with this flag you can avoid waiting a few minutes (in my case) before starting to play

Those are fundamental opposites, so no.