mpv-player / mpv

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

m4a file with no embeded picture cause mpv player to run in backgroud #2855

Closed rezad1393 closed 8 years ago

rezad1393 commented 8 years ago

steps to reproduce: open m4a file with no image embeded in it with mpv. the mpv process play the audio but there is no window to see the it and move the slider around.

ghost commented 8 years ago

It's a feature.

kevmitch commented 8 years ago

You probably want --profile=pseudo-gui.

rezad1393 commented 8 years ago

this is a feature??? hiding the mpv player only when playing m4a file with no picture is a feature? then why doesn't this "feature" doesn't happen with mp3 file with no embedded image? maybe the "feature" only happen for m4a files?

kevmitch commented 8 years ago

Yes, the default configuration for mpv is only to open a window if there is video data to output. There are however tricks for various platforms to automatically enable --profile=pseudo-gui if it seems like mpv has been started from a file-explorer rather than the command line.

However, if you are starting mpv in a way not anticipated by these tricks you will get the usual command line behaviour. In these cases, you must somehow add --profile=pseudo-gui to mpv's options yourself if you want to always see a window.

If you provide more information on how you are starting mpv, how you have set it up and what operating system you are using, we might be able to offer more help.

rezad1393 commented 8 years ago

OS archlinux 64bit and yes I was a bit unspecific. but when I said this happens only for m4a I meant when I open the files in the same way then this happens only for m4a files.

but you were right. it seems some time ago I set the option to open the m4a in dolphin file manager with mpv, but because of how kde file type management work this is different from choosing the mpv in file open dialog from multimedia menu. so it would use the mpv bare command instead of all the nice options added by kde packager.

so it does what it does here and hide.

I had set it to open with the nice kde provided mpv from open file dialog correctly but because of a bug in kde it would reset it to the last one (bare mpv command).

thanks again for helping me fix my issue.

mia-0 commented 8 years ago

You should be able to change the association in systemsettings → Applications → File Associations (audio/mp4). If that doesn’t help either, delete the duplicate mpv-*.desktop files from ~/.local/share/applications, run kbuildsycoca(4/5) and restart dolphin. Next time you create a new file type association, instead of entering a command, select Multimedia → mpv Media Player from the application tree. If an association already exists and you simply want to change the priority, use systemsettings.

rezad1393 commented 8 years ago

it seems that I was wrong again. as in the bug still exists.

i used this "mpv --profile=pseudo-gui ./Future_Self.m4a" and still didn't get a gui shown but the process is running and the sound is playing. what now?

this is the audio file for those who want to check it http://traffic.libsyn.com/iprocrastinate/Future_Self.m4a

mia-0 commented 8 years ago

Paste log with -v added.

mia-0 commented 8 years ago

Okay, actually this file DOES have cover art, but it’s broken.

ghost commented 8 years ago

It has a normal video track, but FFmpeg doesn't demux a single packet for it. --force-window should help.

rezad1393 commented 8 years ago

mpv --profile=pseudo-gui ./Future_Self.m4a -v [cplayer] Command line options: '--profile=pseudo-gui' './Future_Self.m4a' '-v' [cplayer] mpv 0.15.0 (C) 2000-2016 mpv/MPlayer/mplayer2 projects [cplayer] built on Mon Jan 18 09:01:10 CET 2016 [cplayer] ffmpeg library versions: [cplayer] libavutil 54.31.100 [cplayer] libavcodec 56.60.100 [cplayer] libavformat 56.40.101 [cplayer] libswscale 3.1.101 [cplayer] libavfilter 5.40.101 [cplayer] libswresample 1.2.101 [cplayer] ffmpeg version: 2.8.6 [cplayer] [cplayer] Configuration: ./waf configure --prefix=/usr --confdir=/etc/mpv --enable-zsh-comp --enable-libmpv-shared --enable-cdda [cplayer] List of enabled features: alsa asm atomics audio-input av-pix-fmt-mmal av-version-info avcodec-chroma-pos-api avframe-metadata avframe-skip-samples build-date c11-tls caca cdda cplayer debug-build dlopen drm dvbin dvdnav dvdread egl-drm egl-helpers egl-x11 enca encoding fchmod gbm gbm.h gl gl-wayland gl-x11 glibc-thread-name glob iconv jack jpeg lcms2 libass libass-osd libav libavdevice libavfilter libbluray libdl libguess libm libmpv-shared librt libsmbclient libswresample libv4l2 linux-fstatfs lua nanosleep optimize oss-audio oss-audio-native posix posix-or-mingw posix-spawn pthreads pulse resampler rubberband shm sse4-intrinsics stdatomic subprocess termios tv tv-v4l2 vaapi vaapi-egl vaapi-glx vaapi-hwaccel vaapi-wayland vaapi-x-egl vaapi-x11 vdpau vdpau-gl-x11 vdpau-hwaccel videodev vt.h wayland x11 xext xinerama xrandr xss xv zlib zsh-comp
[global] config path: '' -> '/home/me/.config/mpv'
[global] config path: 'mpv.conf' -/-> '/home/me/.config/mpv/mpv.conf'
[global] config path: 'config' -> '/home/me/.config/mpv/config'
[global] config path: 'mpv.conf' -/-> '/home/me/.mpv/mpv.conf'
[global] config path: 'config' -/-> '/home/me/.mpv/config'
[global] config path: 'mpv.conf' -/-> '/etc/mpv/mpv.conf'
[global] config path: 'config' -/-> '/etc/mpv/config'
[cplayer] Reading config file /home/me/.config/mpv/config
[cplayer] Setting option 'force-window' = '' (flags = 4)
[cplayer] Setting option 'osd-bar-align-y' = '-1' (flags = 4)
[cplayer] Setting option 'osd-fractions' = '' (flags = 4) [cplayer] Setting option 'osd-duration' = '100' (flags = 4) [cplayer] Setting option 'geometry' = '50%:50%' (flags = 4) [cplayer] Setting option 'slang' = 'en' (flags = 4) [cplayer] Setting option 'sub-codepage' = 'utf8:cp1256' (flags = 4) [cplayer] Setting option 'hwdec' = 'auto' (flags = 4) [cplayer] Setting option 'save-position-on-quit' = '' (flags = 4) [cplayer] Setting option 'profile' = 'pseudo-gui' (flags = 8) [cplayer] Setting option 'terminal' = 'no' (flags = 12) libva info: VA-API version 0.38.1 libva info: va_getDriverName() returns 0 libva info: Trying to open /usr/lib/dri/i965_drv_video.so libva info: Found init function __vaDriverInit_0_38 libva info: va_openDriver() returns 0

rezad1393 commented 8 years ago

if the cover is broken then why vlc can play it and show the cover art? and why a broken cover hides the mpv window. usually input file should change a program behaviour , so maybe this actually is a bug.

ghost commented 8 years ago

It doesn't here. Besides, VLC doesn't even use the same demuxer. This is a corner case of a corner case, putting energy into this is stupid.

ghost commented 8 years ago

Changed it so that --force-window is respected in these situations (it wasn't a big change after all).