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

feat(jukebox): use mpv over ipc as a player backend #211

Merged
merged 6 commits into from Nov 16, 2022
Merged

Conversation

sentriz
Copy link
Owner

@sentriz sentriz commented Apr 13, 2022

related #125
related #106
related #164

todo

  • check deadlocks
  • volume control
  • upgrade modules
  • update wiki about new go version
  • match ctrlsubsonic with jukebox names, update playlist names

@sentriz sentriz force-pushed the master branch 2 times, most recently from 17f5a19 to 182c96e Compare May 3, 2022 21:42
@sentriz sentriz mentioned this pull request May 20, 2022
1 task
@sentriz sentriz added this to the next release milestone Oct 18, 2022
@sentriz sentriz force-pushed the master branch 2 times, most recently from 4d584e1 to e8759cb Compare October 26, 2022 13:38
@sentriz sentriz force-pushed the master branch 2 times, most recently from 6a96be2 to 6e6404a Compare November 2, 2022 22:17
@sentriz sentriz force-pushed the jukebox branch 8 times, most recently from 70654f3 to f3ad3fd Compare November 9, 2022 21:28
@sentriz sentriz force-pushed the jukebox branch 4 times, most recently from 695a55a to 7b05545 Compare November 16, 2022 18:16
@sentriz sentriz changed the title feat(jukebox): use pure oto v2 and ffmpeg to decode to PCM feat(jukebox): use mpv with IPC as a player backend Nov 16, 2022
@sentriz sentriz changed the title feat(jukebox): use mpv with IPC as a player backend feat(jukebox): use mpv over ipc as a player backend Nov 16, 2022
@sentriz sentriz force-pushed the jukebox branch 4 times, most recently from feec3a5 to 9ec7480 Compare November 16, 2022 18:52
@marlop352
Copy link

Could the documentation on using it with docker be updated with the mpv changes? please 😅

@sentriz
Copy link
Owner Author

sentriz commented Dec 1, 2022

@marlop352 hm that shouldn't have changed. are you getting some sort of error?

@marlop352
Copy link

@marlop352 hm that shouldn't have changed. are you getting some sort of error?

@sentriz yes, I'm getting this:

2022/12/01 08:01:42 error in job: start jukebox: open connection: can't connect to mpv's socket: dial unix /tmp/gonic-jukebox-3401499550.sock: connect: connection refused

panic: error in job: start jukebox: open connection: can't connect to mpv's socket: dial unix /tmp/gonic-jukebox-3401499550.sock: connect: connection refused

goroutine 1 [running]:

log.Panicf({0xb58a91?, 0x130cd98?}, {0x4000225ca8?, 0x0?, 0x0?})

	/usr/local/go/src/log/log.go:395 +0x68

main.main()

	/src/cmd/gonic/gonic.go:158 +0x11dc

my docker compose in case I'm doing something dumb:

version: "3.5"

services:
  gonic:
    container_name: gonic
    image: sentriz/gonic
    restart: unless-stopped
    ports:
      - "4040:80"
    volumes:
      - '/container_data/gonic/data:/data'  # gonic db etc
      - '/media/music:/music:ro'            # music
      - '/media/podcasts:/podcasts:ro'      # podcasts
      - '/tmp/cache:/cache'                 # transcode cache dir
    environment:
      TZ: America/Sao_Paulo #optional - show logs in local timezone
      GONIC_JUKEBOX_ENABLED: 'true'
    networks:
      - proxy_network
    # enable if you've enabled jukebox
    group_add:
      - audio
    devices:
      - /dev/snd:/dev/snd


networks:
  proxy_network:
    name: rede
    driver: bridge

@sentriz
Copy link
Owner Author

sentriz commented Dec 1, 2022

hmm interesting, can you try make this change to your compose

--- 15,21 ----
      environment:
        TZ: America/Sao_Paulo #optional - show logs in local timezone
        GONIC_JUKEBOX_ENABLED: 'true'
+       GONIC_JUKEBOX_MPV_EXTRA_ARGS: "--log-file=/tmp/mpv_logs"
      networks:
        - proxy_network
      # enable if you've enabled jukebox

then compose up, and check the output of

docker-compose exec gonic cat /tmp/mpv_logs

?

@marlop352
Copy link

I get this error from docker when trying that exec:
Error response from daemon: Container 9b40e731746bf31be6a056f1bb0ba75b3fe21b3e78eb108ac8458aadf38f53c4 is restarting, wait until the container is running

The full log from the container logs:

2022/12/01 17:54:44 starting gonic v0.15.0
2022/12/01 17:54:44 provided config
2022/12/01 17:54:44     cache-path                /cache
2022/12/01 17:54:44     config-path               
2022/12/01 17:54:44     db-path                   /data/gonic.db
2022/12/01 17:54:44     genre-split               
2022/12/01 17:54:44     http-log                  true
2022/12/01 17:54:44     jukebox-enabled           true
2022/12/01 17:54:44     jukebox-mpv-extra-args    --log-file=/tmp/mpv_logs
2022/12/01 17:54:44     listen-addr               :80
2022/12/01 17:54:44     music-path                /music
2022/12/01 17:54:44     podcast-path              /podcasts
2022/12/01 17:54:44     podcast-purge-age         0
2022/12/01 17:54:44     proxy-prefix              
2022/12/01 17:54:44     scan-at-start-enabled     false
2022/12/01 17:54:44     scan-interval             0
2022/12/01 17:54:44     scan-watcher-enabled      false
2022/12/01 17:54:44     tls-cert                  
2022/12/01 17:54:44     tls-key                   
2022/12/01 17:54:44     version                   false
2022/12/01 17:54:44 starting job 'jukebox'
2022/12/01 17:54:44 starting job 'session clean'
2022/12/01 17:54:44 starting job 'http'
2022/12/01 17:54:44 starting job 'podcast refresher'
2022/12/01 17:54:44 error in job: start jukebox: open connection: can't connect to mpv's socket: dial unix /tmp/gonic-jukebox-393832026.sock: connect: connection refused
panic: error in job: start jukebox: open connection: can't connect to mpv's socket: dial unix /tmp/gonic-jukebox-393832026.sock: connect: connection refused
goroutine 1 [running]:
log.Panicf({0xb58a91?, 0x40002f5b30?}, {0x4000225ca8?, 0x1?, 0x0?})
	/usr/local/go/src/log/log.go:395 +0x68
main.main()
	/src/cmd/gonic/gonic.go:158 +0x11dc

The container seems stuck on a restart loop with that log been repeated +/- every 1 minute.
If I disable the jukebox feature it goes up correctly.

@marlop352
Copy link

I just managed to time the exec command between the restarts,
cat: can't open '/tmp/mpv_logs': No such file or directory
In case it's useful, I'm running this on a RPi4, aarch64.

@sentriz
Copy link
Owner Author

sentriz commented Dec 4, 2022

hmm i tried to spin up my old raspberry pi vm but it doesn't want to start. can you try another thing?

how about putting the logs in a folder mounted to your host so that we can read them. and also don't restart in a loop

--- 4,10 ----
    gonic:
      container_name: gonic
      image: sentriz/gonic
-     restart: unless-stopped
+     restart: "no"
      ports:
        - "4040:80"
      volumes:
--- 12,23 ----
        - '/media/music:/music:ro'            # music
        - '/media/podcasts:/podcasts:ro'      # podcasts
        - '/tmp/cache:/cache'                 # transcode cache dir
+       - '/tmp/gonic:/tmp/gonic'
      environment:
        TZ: America/Sao_Paulo #optional - show logs in local timezone
        GONIC_JUKEBOX_ENABLED: 'true'
+       GONIC_JUKEBOX_MPV_EXTRA_ARGS: "--log-file=/tmp/gonic/mpv_logs"
      networks:
        - proxy_network

after compose upping that, hopefully you should see some logs in /tmp/gonic/mpv_logs on your host system

@marlop352
Copy link

marlop352 commented Dec 4, 2022

Still no logs, I would guess that mpv might not even be starting for me.
I also did a test after a touch and a chmod 666 on the file just to be sure it wasn't a permission issue on the log file.
Is there any flag I can use to put gonic/mpv into debug logging mode?
Also If needed I can run a custom image, just provide the instructions.

Edit: Should we move this to an issue?

@sentriz
Copy link
Owner Author

sentriz commented Dec 4, 2022

good idea, i made #265

i'll have a look into some debug logging shortly

@Ke1i
Copy link

Ke1i commented Dec 25, 2022

So.. I tried running gonic (tag:latest) via Podman under Debian 11 (x64) and encountered the start jukebox: open connection: can't connect to mpv's socket: error like mentioned above, I switched to a nightly image (tag:2bf8595) and this error disappeared but then I can't get any sound output on the server. Playback appears to start on the client side (Ultrasonic) but then stops after a few seconds. Is this feature confirmed working?
Here's my Podman run command:

podman run -dt --user root --name=gonic 
-e TZ=Africa/Nairobi 
-e GONIC_JUKEBOX_ENABLED=true 
-e GONIC_JUKEBOX_MPV_EXTRA_ARGS=--log-file=/tmp/gonic/mpv_logs 
-p 4747:80 -v /home/xof/containers/gonic/db:/data 
-v /home/xof/containers/gonic/cache:/cache 
-v /media/Music:/music 
-v /media/Music/Podcasts:/podcasts 
--device=/dev/snd:/dev/snd 
--group-add=audio 
docker.io/sentriz/gonic:2bf8595

Looking inside the /tmp directory, there's no /gonic/mpv_logs file. Actially there's no /gonic directory. Only two directories, /gonic-jukebox-3754582045 and /pulse-YrdcuDG02b3O.
Any pointers?
Below is a section of the log output when I play a random song in jukebox mode.

2022/12/25 19:26:41 response  200  for `/rest/getArtists.view?u=admin&c=Ultrasonic&f=json&v=1.15.0&t=ff42b7a8f262ff66a026934b40eaa78e&s=97FA2E3FA8B2CD40A31D0FE2B83E7E40`
2022/12/25 19:26:43 response  200  for `/rest/getAlbumList2.view?type=newest&size=20&offset=0&u=admin&c=Ultrasonic&f=json&v=1.15.0&t=de7e897db10823d97e7110cc24b87fd7&s=F2EDD84FA23F4BDAD28CB69EEACA66AA`
2022/12/25 19:26:43 response  200  for `/rest/getRandomSongs.view?size=25&u=admin&c=Ultrasonic&f=json&v=1.15.0&t=6e31b0f7ab1c66f079c3c5a088b027fe&s=2C42509810576BC616D50EBFC1A3AA9D`
2022/12/25 19:26:43 response  200  for `/rest/getCoverArt.view?id=al-473&size=600&u=admin&c=Ultrasonic&f=json&v=1.15.0&t=527192e2b2accf7c382ac27c2dcf1df0&s=CE465BA27750E9210D851FA89D8C76DD`
2022/12/25 19:26:43 response  200  for `/rest/getCoverArt.view?id=al-243&size=600&u=admin&c=Ultrasonic&f=json&v=1.15.0&t=af8231341c36bad5504db1ec311bc04b&s=E3065EF58041B3C0F4D25B0F0D3FA554`
2022/12/25 19:26:43 response  200  for `/rest/getCoverArt.view?id=al-489&size=600&u=admin&c=Ultrasonic&f=json&v=1.15.0&t=2dcf9d2a984385d73f58dd0215ae2a76&s=AD7BDB9079470FA69EB013A556B27438`
2022/12/25 19:26:43 response  200  for `/rest/getCoverArt.view?id=al-245&size=600&u=admin&c=Ultrasonic&f=json&v=1.15.0&t=03f9ff59c61e7f5d38871b7433d87947&s=F80D853626A2AAABA81C79CA86D98A80`
2022/12/25 19:26:43 response  200  for `/rest/getCoverArt.view?id=al-536&size=600&u=admin&c=Ultrasonic&f=json&v=1.15.0&t=25b504609afa63ee74207573bc8dbb57&s=E20A05121B7633BF5490E61A1A44186F`
2022/12/25 19:26:44 response  200  for `/rest/jukeboxControl.view?action=set&u=admin&c=Ultrasonic&f=json&v=1.15.0&t=ce2d4053735666976ef017731137a82e&s=F2FB0ECFA4FA186C552552A750AB0417`
2022/12/25 19:26:45 response  200  for `/rest/jukeboxControl.view?action=set&id=tr-582&id=tr-712&id=tr-716&id=tr-578&id=tr-494&id=tr-629&id=tr-252&id=tr-219&id=tr-776&id=tr-763&id=tr-583&id=tr-364&id=tr-751&id=tr-172&id=tr-197&id=tr-215&id=tr-413&id=tr-233&id=tr-561&id=tr-377&id=tr-414&id=tr-254&id=tr-539&id=tr-127&id=tr-228&u=admin&c=Ultrasonic&f=json&v=1.15.0&t=ac55877c56add2d82ff71d5ea6bd06a5&s=FBE915712BEC185ED101B4F625D0CB1E`
2022/12/25 19:26:45 response  200  for `/rest/getUser.view?username=admin&u=admin&c=Ultrasonic&f=json&v=1.15.0&t=2c6c7f69fc0c0b74816bdded344cc682&s=7AA7E60188599B7F78C61EC07689F0F7`
2022/12/25 19:26:45 response  200  for `/rest/jukeboxControl.view?action=skip&index=0&offset=0&u=admin&c=Ultrasonic&f=json&v=1.15.0&t=dd8304a427bf20362903c5a5ee06252c&s=5AE078568AFA38EE9320D6A3C1573C10`
2022/12/25 19:26:45 response  200  for `/rest/jukeboxControl.view?action=start&u=admin&c=Ultrasonic&f=json&v=1.15.0&t=00db2f1184f3bda0ca61d1faf0930c6e&s=F8F58EE8F6F1A3A317A5B6EC7DBB72C4`
2022/12/25 19:26:45 response  200  for `/rest/scrobble.view?id=tr-582&submission=false&u=admin&c=Ultrasonic&f=json&v=1.15.0&t=56a5d8d371b505d5425acb4836846655&s=344990EDED411E8A613D5CAC3E3CB6F0`
2022/12/25 19:26:45 response  200  for `/rest/getCoverArt.view?id=al-525&size=256&u=admin&c=Ultrasonic&f=json&v=1.15.0&t=eadc835930685612c9f73a09533eae49&s=D33040D31BA91289E889521A6E54E034`
2022/12/25 19:26:45 response  200  for `/rest/getCoverArt.view?id=al-525&size=1776&u=admin&c=Ultrasonic&f=json&v=1.15.0&t=8024cd03ee84fbf4b666418c5f7d0c7f&s=FDBA9A521017B164F69126B1608CF272`
2022/12/25 19:26:45 response  200  for `/rest/getCoverArt.view?id=al-525&size=600&u=admin&c=Ultrasonic&f=json&v=1.15.0&t=275cb54dcb5d33077e75f719452eabf8&s=AEF0DBAC792E7F1672C596B6430BE5C8`
2022/12/25 19:26:49 response  200  for `/rest/jukeboxControl.view?action=status&u=admin&c=Ultrasonic&f=json&v=1.15.0&t=0ceb7d3cd7164d9bbea869e1894526c2&s=5E8AEBAC6F127B368A0CB65C2548DD66`
2022/12/25 19:26:54 response  200  for `/rest/jukeboxControl.view?action=status&u=admin&c=Ultrasonic&f=json&v=1.15.0&t=2f00b106fc4307d212497bec4e6994a9&s=F18BDD93B535888D925EFDE91D095E7B`
2022/12/25 19:26:59 response  200  for `/rest/jukeboxControl.view?action=status&u=admin&c=Ultrasonic&f=json&v=1.15.0&t=392a5a878f9f30f5054b4d63e9956e16&s=96052E0FD0D5D05425A4514B1FBCBB79`
2022/12/25 19:27:04 response  200  for `/rest/jukeboxControl.view?action=status&u=admin&c=Ultrasonic&f=json&v=1.15.0&t=a7e22805afa2a28dc70795545a322310&s=0A7B0B71CEA5276E85C0EAF0421F8ACD`
2022/12/25 19:27:09 response  200  for `/rest/jukeboxControl.view?action=status&u=admin&c=Ultrasonic&f=json&v=1.15.0&t=4e3a5c5e1bda97a9c5f8aafea0273a90&s=CEC032E09247008263B421DF267DC885`
2022/12/25 19:27:14 response  200  for `/rest/jukeboxControl.view?action=status&u=admin&c=Ultrasonic&f=json&v=1.15.0&t=bf80de81451e49ff6263ce406c6491e3&s=A6E6D4BCD0E42588A6E728BBDB29A24C`
2022/12/25 19:27:19 response  200  for `/rest/jukeboxControl.view?action=status&u=admin&c=Ultrasonic&f=json&v=1.15.0&t=c9f98064be5815e1e556e63bc024ae4f&s=73F42E43008AAF29B9BFE15D5F0A8629`
2022/12/25 19:27:24 response  200  for `/rest/jukeboxControl.view?action=status&u=admin&c=Ultrasonic&f=json&v=1.15.0&t=f22f9d6780f0cd6184a0867648368c68&s=8D6E887BF98E8DC68CC08E61554F7804`
2022/12/25 19:27:29 response  200  for `/rest/jukeboxControl.view?action=status&u=admin&c=Ultrasonic&f=json&v=1.15.0&t=60efd5e7f4b5905a8c49442f42aaeae2&s=5D476E958285768A49BCB48FF798FD42`
2022/12/25 19:27:34 response  200  for `/rest/jukeboxControl.view?action=status&u=admin&c=Ultrasonic&f=json&v=1.15.0&t=d1ca277f1b5686b3eaac7c585db1c3d7&s=CCD5D104137BBCA04C8A00B88FC2C3F6`
2022/12/25 19:27:39 response  200  for `/rest/jukeboxControl.view?action=status&u=admin&c=Ultrasonic&f=json&v=1.15.0&t=0156d4d26e8411b9644317e3881a5c94&s=DDF9EAB77DEEBCB67D4A91BD884BD336`
2022/12/25 19:27:44 response  200  for `/rest/jukeboxControl.view?action=status&u=admin&c=Ultrasonic&f=json&v=1.15.0&t=012ff513121b671d81162b87894bdc0b&s=82B56855307026C9776D8BE051C04172`
2022/12/25 19:27:49 response  200  for `/rest/jukeboxControl.view?action=status&u=admin&c=Ultrasonic&f=json&v=1.15.0&t=5cbd659d65b3e5778ab11d64cf9b160d&s=C743CA40EB945A42F1B298E788A40ED8`
2022/12/25 19:28:35 response  200  for `/rest/jukeboxControl.view?action=status&u=admin&c=Ultrasonic&f=json&v=1.15.0&t=30710fc3c7dbd3e60385bb968a585e17&s=DD848F3BBB8F50CC22EE044A5DD72751`
2022/12/25 19:29:14 response  200  for `/rest/jukeboxControl.view?action=status&u=admin&c=Ultrasonic&f=json&v=1.15.0&t=5dc83111d9d869e0c7358708995d04ee&s=CD32EE75769CEA3980DBACE91E3B75F3`
2022/12/25 19:29:48 response  200  for `/rest/jukeboxControl.view?action=status&u=admin&c=Ultrasonic&f=json&v=1.15.0&t=3c13e519eb5a1e770f213c20605466cf&s=BDD15413CB86CF401837AB39DE3DB235`
2022/12/25 19:30:18 response  200  for `/rest/jukeboxControl.view?action=status&u=admin&c=Ultrasonic&f=json&v=1.15.0&t=39f189b7b1ddb70c795ae6b2f1afe8bd&s=357F04486A18A9A3C84A9E1E7E36622F`

@sentriz
Copy link
Owner Author

sentriz commented Dec 25, 2022

hm maybe mpv doesn't like the non existing directory for the log file. can you try --log-file=/tmp/mpvlog or something, and see if it's created?

@Ke1i
Copy link

Ke1i commented Dec 25, 2022

Thanks for the tip! I can now see the mpv log. This is gonic log after starting the container:

xof@debbie:~$ podman logs -f gonic
2022/12/25 21:32:58 starting gonic v0.15.0
2022/12/25 21:32:58 provided config
2022/12/25 21:32:58     cache-path                /cache
2022/12/25 21:32:58     config-path               
2022/12/25 21:32:58     db-path                   /data/gonic.db
2022/12/25 21:32:58     genre-split               
2022/12/25 21:32:58     http-log                  true
2022/12/25 21:32:58     jukebox-enabled           true
2022/12/25 21:32:58     jukebox-mpv-extra-args    --log-file=/tmp/mpvlog
2022/12/25 21:32:58     listen-addr               :80
2022/12/25 21:32:58     music-path                /music
2022/12/25 21:32:58     podcast-path              /podcasts
2022/12/25 21:32:58     podcast-purge-age         0
2022/12/25 21:32:58     proxy-prefix              
2022/12/25 21:32:58     scan-at-start-enabled     false
2022/12/25 21:32:58     scan-interval             0
2022/12/25 21:32:58     scan-watcher-enabled      false
2022/12/25 21:32:58     tls-cert                  
2022/12/25 21:32:58     tls-key                   
2022/12/25 21:32:58     version                   false
2022/12/25 21:32:58 starting job 'session clean'
2022/12/25 21:32:58 starting job 'jukebox'
2022/12/25 21:32:58 starting job 'http'
2022/12/25 21:32:58 starting job 'podcast refresher'

And this is part (its a long one) of my /tmp/mpvlog

[ 35.691][v][ifo_dvdnav] Opening /music/Yanni/If I Could Tell You/albumart.jpg
[  35.699][d][osc] osc_init 
[  35.707][v][bdmv/bluray] Opening /music/Yanni/If I Could Tell You/albumart.jpg
[  35.715][d][cplayer] Run command: change-list, flags=64, args=[name="shared-script-properties", operation="append", value="osc-margins=0.000000,0.000000,0.000000,0.000000"]
[  35.723][v][file] Opening /music/Yanni/If I Could Tell You/albumart.jpg
[  35.731][d][file] resize stream to 131072 bytes, drop 0 bytes
[  35.739][d][file] Stream opened successfully.
[  35.747][v][demux] Trying demuxers for level=normal.
[  35.755][d][demux] Trying demuxer: disc (force-level: normal)
[  35.763][d][demux] Trying demuxer: edl (force-level: normal)
[  35.775][d][demux] Trying demuxer: cue (force-level: normal)
[  35.787][d][demux] Trying demuxer: rawaudio (force-level: normal)
[  35.800][d][demux] Trying demuxer: rawvideo (force-level: normal)
[  35.807][d][demux] Trying demuxer: mkv (force-level: normal)
[  35.819][d][demux] Trying demuxer: lavf (force-level: normal)
[  35.827][v][cplayer] Set property: shared-script-properties -> 1
[  35.835][v][lavf] Found 'jpeg_pipe' at score=26 size=2048.
[  35.843][v][lavf] avformat_find_stream_info() finished after 24214 bytes.
[  35.855][v][lavf] Assuming this is an image format.
[  35.863][v][demux] Detected file format: jpeg_pipe (libavformat)
[  35.871][v][cplayer] Running hook: ytdl_hook/on_preloaded
[  35.879][d][osc] osc_init 
[  35.887][v][lavf] select track 0
[  35.895][i][cplayer]      Video --vid=1 [P] '2001x2001' (mjpeg 500x500 1.000fps)
[  35.903][i][cplayer]      Video --vid=2 [P] 'albumart.jpg' (mjpeg 500x500 1.000fps) (external)
[  35.911][i][cplayer]  (+) Audio --aid=1 (mp3 2ch 44100Hz)
[  35.919][i][display-tags] File tags:
[  35.927][i][display-tags]  Artist: Yanni
[  35.935][i][display-tags]  Album: If I Could Tell You
[  35.943][i][display-tags]  Album_Artist: Yanni
[  35.951][i][display-tags]  Date: 2000-10-03
[  35.959][i][display-tags]  Title: A Walk in the Rain
[  35.967][i][display-tags]  Track: 7/11
[  35.975][v][ad] Codec list:
[  35.983][v][ad]     mp3float (mp3) - MP3 (MPEG audio layer 3)
[  35.991][v][ad]     mp3 - MP3 (MPEG audio layer 3)
[  35.999][v][ad] Opening decoder mp3float
[  36.007][v][ad] Requesting 1 threads for decoding.
[  36.016][v][ad] Selected codec: mp3float (MP3 (MPEG audio layer 3))
[  36.023][v][af] User filter list:
[  36.031][v][af]   (empty)
[  36.039][v][cplayer] Starting playback...
[  36.047][v][af] [in] 44100Hz stereo 2ch floatp
[  36.055][v][af] [userspeed] 44100Hz stereo 2ch floatp
[  36.063][v][af] [userspeed] (disabled)
[  36.071][v][af] [convert] 44100Hz stereo 2ch floatp
[  36.079][v][ao] Trying audio driver 'pulse'
[  36.087][v][ao/pulse] requested format: 44100 Hz, stereo channels, floatp
[  36.095][v][ao/pulse] Library version: 15.0.0
[  36.103][v][ao/pulse] Proto: 35
[  36.111][v][ao/pulse] Server proto: 4294967295
[  36.119][v][ao] Trying audio driver 'alsa'
[  36.131][v][ao/alsa] requested format: 44100 Hz, stereo channels, floatp
[  36.140][v][ao/alsa] using ALSA version: 1.2.7.2
[  36.147][v][ao/alsa] opening device 'default'
[  36.156][e][ao/alsa] Playback open error: No such file or directory
[  36.167][v][ao] Trying audio driver 'jack'
[  36.176][v][ao/jack] requested format: 44100 Hz, stereo channels, floatp
[  36.183][v][ao/jack] Channel layouts:
[  36.191][v][ao/jack]  - waveext
[  36.199][v][ao/jack] result: stereo
[  36.211][f][ao/jack] cannot open server
[  36.219][e][ao] Failed to initialize audio driver 'jack'
[  36.231][e][cplayer] Could not open/initialize audio device -> no sound.
[  36.247][d][ad] Uninit decoder.
[  36.259][v][lavf] deselect track 0
[  36.271][i][cplayer] Audio: no audio
[  36.283][v][cplayer] playback restart complete @ -9223372036854775808.000000, audio=eof, video=eof
[  36.291][v][cplayer] EOF code: 6  
[  36.300][d][cplayer] Terminating demuxers...
[  36.308][d][cplayer] Done terminating demuxers.
[  36.315][v][cplayer] finished playback, audio output initialization failed (reason 4)
[  36.324][i][cplayer] 
[  36.332][d][global] config path: 'watch_later' -> '-'
[  36.340][i][cplayer] Playing: /music/Yanni/If I Could Tell You/08 Highland.mp3
[  36.351][v][cplayer] Running hook: ytdl_hook/on_load
[  36.363][v][ytdl_hook] ytdl:// hook 
[  36.371][v][ytdl_hook] not a ytdl:// url 
[  36.379][d][cplayer] Run command: change-list, flags=64, args=[name="shared-script-properties", operation="append", value="osc-margins=0.000000,0.000000,0.000000,0.000000"]
[  36.391][v][cplayer] Set property: shared-script-properties -> 1
[  36.403][v][ifo_dvdnav] Opening /music/Yanni/If I Could Tell You/08 Highland.mp3
[  36.411][v][bdmv/bluray] Opening /music/Yanni/If I Could Tell You/08 Highland.mp3
[  36.419][v][file] Opening /music/Yanni/If I Could Tell You/08 Highland.mp3
[  36.427][d][file] resize stream to 131072 bytes, drop 0 bytes
[  36.435][d][file] Stream opened successfully.
[  36.443][v][demux] Trying demuxers for level=normal.
[  36.455][d][demux] Trying demuxer: disc (force-level: normal)
[  36.463][d][demux] Trying demuxer: edl (force-level: normal)
[  36.471][d][osc] osc_init 
[  36.479][d][demux] Trying demuxer: cue (force-level: normal)
[  36.487][d][demux] Trying demuxer: rawaudio (force-level: normal)
[  36.495][d][demux] Trying demuxer: rawvideo (force-level: normal)
[  36.507][d][demux] Trying demuxer: mkv (force-level: normal)
[  36.515][d][demux] Trying demuxer: lavf (force-level: normal)
[  36.524][d][cplayer] Run command: change-list, flags=64, args=[name="shared-script-properties", operation="append", value="osc-margins=0.000000,0.000000,0.000000,0.000000"]
[  36.532][v][cplayer] Set property: shared-script-properties -> 1
[  36.539][v][lavf] Found 'mp3' at score=12 size=2048.
[  36.547][v][lavf] Found 'mp3' at score=12 size=4096.
[  36.555][v][lavf] Found 'mp3' at score=12 size=8192.
[  36.563][v][lavf] Found 'mp3' at score=12 size=16384.
[  36.571][v][lavf] Found 'mp3' at score=12 size=32768.
[  36.583][v][lavf] Found 'mp3' at score=51 size=65536.
[  36.591][d][ffmpeg/demuxer] mp3: Skipping 0 bytes of junk at 53258.
[  36.599][w][ffmpeg/demuxer] mp3: Estimating duration from bitrate, this may be inaccurate
[  36.607][v][lavf] avformat_find_stream_info() finished after 98304 bytes.
[  36.616][v][lavf] Assuming this is an image format.
[  36.627][v][demux] Detected file format: mp3 (libavformat)
[  36.635][v][cplayer] Opening done: /music/Yanni/If I Could Tell You/08 Highland.mp3
[  36.643][v][find_files] Loading external files in /music/Yanni/If I Could Tell You/
[  36.651][d][find_files] Potential external file: "albumart.jpg"  Priority: 15
[  36.659][v][ifo_dvdnav] Opening /music/Yanni/If I Could Tell You/albumart.jpg
[  36.667][d][osc] osc_init 
[  36.675][v][bdmv/bluray] Opening /music/Yanni/If I Could Tell You/albumart.jpg
[  36.683][d][cplayer] Run command: change-list, flags=64, args=[name="shared-script-properties", operation="append", value="osc-margins=0.000000,0.000000,0.000000,0.000000"]
[  36.691][v][file] Opening /music/Yanni/If I Could Tell You/albumart.jpg
[  36.699][d][file] resize stream to 131072 bytes, drop 0 bytes
[  36.707][d][file] Stream opened successfully.
[  36.715][v][demux] Trying demuxers for level=normal.
[  36.723][d][demux] Trying demuxer: disc (force-level: normal)
[  36.731][d][demux] Trying demuxer: edl (force-level: normal)
[  36.739][v][cplayer] Set property: shared-script-properties -> 1
[  36.747][d][demux] Trying demuxer: cue (force-level: normal)
[  36.755][d][demux] Trying demuxer: rawaudio (force-level: normal)
[  36.763][d][demux] Trying demuxer: rawvideo (force-level: normal)
[  36.779][d][demux] Trying demuxer: mkv (force-level: normal)
[  36.787][d][demux] Trying demuxer: lavf (force-level: normal)
[  36.795][v][lavf] Found 'jpeg_pipe' at score=26 size=2048.
[  36.803][v][lavf] avformat_find_stream_info() finished after 24214 bytes.
[  36.811][v][lavf] Assuming this is an image format.
[  36.819][v][demux] Detected file format: jpeg_pipe (libavformat)
[  36.827][v][cplayer] Running hook: ytdl_hook/on_preloaded
[  36.835][d][osc] osc_init 
[  36.843][v][lavf] select track 0
[  36.851][i][cplayer]      Video --vid=1 [P] '2001x2001' (mjpeg 500x500 1.000fps)
[  36.859][i][cplayer]      Video --vid=2 [P] 'albumart.jpg' (mjpeg 500x500 1.000fps) (external)
[  36.867][i][cplayer]  (+) Audio --aid=1 (mp3 2ch 44100Hz)
[  36.875][i][display-tags] File tags:
[  36.883][i][display-tags]  Artist: Yanni
[  36.891][i][display-tags]  Album: If I Could Tell You
[  36.899][i][display-tags]  Album_Artist: Yanni
[  36.907][i][display-tags]  Date: 2000-10-03
[  36.915][i][display-tags]  Title: Highland
[  36.923][i][display-tags]  Track: 8/11
[  36.931][v][ad] Codec list:
[  36.939][v][ad]     mp3float (mp3) - MP3 (MPEG audio layer 3)
[  36.947][v][ad]     mp3 - MP3 (MPEG audio layer 3)
[  36.955][v][ad] Opening decoder mp3float
[  36.963][v][ad] Requesting 1 threads for decoding.
[  36.971][v][ad] Selected codec: mp3float (MP3 (MPEG audio layer 3))
[  36.979][v][af] User filter list:
[  36.987][v][af]   (empty)
[  36.995][v][cplayer] Starting playback...
[  37.003][v][af] [in] 44100Hz stereo 2ch floatp
[  37.011][v][af] [userspeed] 44100Hz stereo 2ch floatp
[  37.020][v][af] [userspeed] (disabled)
[  37.027][v][af] [convert] 44100Hz stereo 2ch floatp
[  37.036][v][ao] Trying audio driver 'pulse'
[  37.047][v][ao/pulse] requested format: 44100 Hz, stereo channels, floatp
[  37.056][v][ao/pulse] Library version: 15.0.0
[  37.063][v][ao/pulse] Proto: 35
[  37.072][v][ao/pulse] Server proto: 4294967295
[  37.079][v][ao] Trying audio driver 'alsa'
[  37.087][v][ao/alsa] requested format: 44100 Hz, stereo channels, floatp
[  37.096][v][ao/alsa] using ALSA version: 1.2.7.2
[  37.104][v][ao/alsa] opening device 'default'
[  37.112][e][ao/alsa] Playback open error: No such file or directory
[  37.123][v][ao] Trying audio driver 'jack'
[  37.131][v][ao/jack] requested format: 44100 Hz, stereo channels, floatp
[  37.139][v][ao/jack] Channel layouts:
[  37.147][v][ao/jack]  - waveext
[  37.159][v][ao/jack] result: stereo
[  37.171][f][ao/jack] cannot open server
[  37.183][e][ao] Failed to initialize audio driver 'jack'
[  37.191][e][cplayer] Could not open/initialize audio device -> no sound.
[  37.199][d][ad] Uninit decoder.
[  37.211][v][lavf] deselect track 0
[  37.219][i][cplayer] Audio: no audio
[  37.227][v][cplayer] playback restart complete @ -9223372036854775808.000000, audio=eof, video=eof
[  37.235][v][cplayer] EOF code: 6  
[  37.243][d][cplayer] Terminating demuxers...
[  37.251][d][cplayer] Done terminating demuxers.
[  37.259][v][cplayer] finished playback, audio output initialization failed (reason 4)
[  37.267][i][cplayer] 
[  37.275][d][global] config path: 'watch_later' -> '-'
[  37.283][i][cplayer] Playing: /music/Yanni/If I Could Tell You/09 If I Could Tell You.mp3
[  37.291][v][cplayer] Running hook: ytdl_hook/on_load
[  37.299][v][ytdl_hook] ytdl:// hook 
[  37.307][v][ytdl_hook] not a ytdl:// url 
[  37.315][d][cplayer] Run command: change-list, flags=64, args=[name="shared-script-properties", operation="append", value="osc-margins=0.000000,0.000000,0.000000,0.000000"]
[  37.323][v][cplayer] Set property: shared-script-properties -> 1
[  37.331][v][ifo_dvdnav] Opening /music/Yanni/If I Could Tell You/09 If I Could Tell You.mp3
[  37.339][v][bdmv/bluray] Opening /music/Yanni/If I Could Tell You/09 If I Could Tell You.mp3
[  37.347][v][file] Opening /music/Yanni/If I Could Tell You/09 If I Could Tell You.mp3
[  37.355][d][file] resize stream to 131072 bytes, drop 0 bytes
[  37.363][d][file] Stream opened successfully.
[  37.371][v][demux] Trying demuxers for level=normal.
[  37.379][d][demux] Trying demuxer: disc (force-level: normal)
[  37.399][d][demux] Trying demuxer: edl (force-level: normal)
[  37.411][d][osc] osc_init 
[  37.423][d][cplayer] Run command: change-list, flags=64, args=[name="shared-script-properties", operation="append", value="osc-margins=0.000000,0.000000,0.000000,0.000000"]
[  37.435][v][cplayer] Set property: shared-script-properties -> 1
[  37.447][d][demux] Trying demuxer: cue (force-level: normal)
[  37.459][d][demux] Trying demuxer: rawaudio (force-level: normal)
[  37.471][d][demux] Trying demuxer: rawvideo (force-level: normal)
[  37.483][d][demux] Trying demuxer: mkv (force-level: normal)
[  37.495][d][demux] Trying demuxer: lavf (force-level: normal)
[  37.507][v][lavf] Found 'mp3' at score=12 size=2048.
[  37.519][v][lavf] Found 'mp3' at score=12 size=4096.
[  37.531][v][lavf] Found 'mp3' at score=12 size=8192.
[  37.539][v][lavf] Found 'mp3' at score=12 size=16384.
[  37.547][v][lavf] Found 'mp3' at score=12 size=32768.
[  37.555][v][lavf] Found 'mp3' at score=51 size=65536.
[  37.567][d][ffmpeg/demuxer] mp3: Skipping 0 bytes of junk at 53258.
[  37.579][w][ffmpeg/demuxer] mp3: Estimating duration from bitrate, this may be inaccurate
[  37.587][v][lavf] avformat_find_stream_info() finished after 98304 bytes.
[  37.595][v][lavf] Assuming this is an image format.
[  37.603][v][demux] Detected file format: mp3 (libavformat)
[  37.615][v][cplayer] Opening done: /music/Yanni/If I Could Tell You/09 If I Could Tell You.mp3
[  37.623][v][find_files] Loading external files in /music/Yanni/If I Could Tell You/
[  37.631][d][find_files] Potential external file: "albumart.jpg"  Priority: 15
[  37.639][d][osc] osc_init 
[  37.647][v][ifo_dvdnav] Opening /music/Yanni/If I Could Tell You/albumart.jpg
[  37.659][d][cplayer] Run command: change-list, flags=64, args=[name="shared-script-properties", operation="append", value="osc-margins=0.000000,0.000000,0.000000,0.000000"]
[  37.671][v][cplayer] Set property: shared-script-properties -> 1
[  37.683][v][bdmv/bluray] Opening /music/Yanni/If I Could Tell You/albumart.jpg
[  37.691][v][file] Opening /music/Yanni/If I Could Tell You/albumart.jpg
[  37.699][d][file] resize stream to 131072 bytes, drop 0 bytes
[  37.707][d][file] Stream opened successfully.
[  37.719][v][demux] Trying demuxers for level=normal.
[  37.731][d][demux] Trying demuxer: disc (force-level: normal)
[  37.739][d][demux] Trying demuxer: edl (force-level: normal)
[  37.751][d][demux] Trying demuxer: cue (force-level: normal)
[  37.763][d][demux] Trying demuxer: rawaudio (force-level: normal)
[  37.775][d][demux] Trying demuxer: rawvideo (force-level: normal)
[  37.787][d][demux] Trying demuxer: mkv (force-level: normal)
[  37.799][d][demux] Trying demuxer: lavf (force-level: normal)
[  37.811][v][lavf] Found 'jpeg_pipe' at score=26 size=2048.
[  37.819][v][lavf] avformat_find_stream_info() finished after 24214 bytes.
[  37.831][v][lavf] Assuming this is an image format.
[  37.839][v][demux] Detected file format: jpeg_pipe (libavformat)
[  37.851][v][cplayer] Running hook: ytdl_hook/on_preloaded
[  37.859][d][osc] osc_init 
[  37.867][v][lavf] select track 0
[  37.879][i][cplayer]      Video --vid=1 [P] '2001x2001' (mjpeg 500x500 1.000fps)
[  37.891][i][cplayer]      Video --vid=2 [P] 'albumart.jpg' (mjpeg 500x500 1.000fps) (external)
[  37.899][i][cplayer]  (+) Audio --aid=1 (mp3 2ch 44100Hz)
[  37.907][i][display-tags] File tags:
[  37.915][i][display-tags]  Artist: Yanni
[  37.923][i][display-tags]  Album: If I Could Tell You
[  37.931][i][display-tags]  Album_Artist: Yanni
[  37.939][i][display-tags]  Date: 2000-10-03
[  37.947][i][display-tags]  Title: If I Could Tell You
[  37.955][i][display-tags]  Track: 9/11
[  37.967][v][ad] Codec list:
[  37.979][v][ad]     mp3float (mp3) - MP3 (MPEG audio layer 3)
[  37.988][v][ad]     mp3 - MP3 (MPEG audio layer 3)
[  37.995][v][ad] Opening decoder mp3float
[  38.004][v][ad] Requesting 1 threads for decoding.
[  38.011][v][ad] Selected codec: mp3float (MP3 (MPEG audio layer 3))
[  38.019][v][af] User filter list:
[  38.027][v][af]   (empty)
[  38.043][v][cplayer] Starting playback...
[  38.051][v][af] [in] 44100Hz stereo 2ch floatp
[  38.059][v][af] [userspeed] 44100Hz stereo 2ch floatp
[  38.067][v][af] [userspeed] (disabled)
[  38.075][v][af] [convert] 44100Hz stereo 2ch floatp
[  38.083][v][ao] Trying audio driver 'pulse'
[  38.091][v][ao/pulse] requested format: 44100 Hz, stereo channels, floatp
[  38.099][v][ao/pulse] Library version: 15.0.0
[  38.108][v][ao/pulse] Proto: 35
[  38.119][v][ao/pulse] Server proto: 4294967295
[  38.131][v][ao] Trying audio driver 'alsa'
[  38.143][v][ao/alsa] requested format: 44100 Hz, stereo channels, floatp
[  38.151][v][ao/alsa] using ALSA version: 1.2.7.2
[  38.159][v][ao/alsa] opening device 'default'
[  38.167][e][ao/alsa] Playback open error: No such file or directory
[  38.175][v][ao] Trying audio driver 'jack'
[  38.183][v][ao/jack] requested format: 44100 Hz, stereo channels, floatp
[  38.191][v][ao/jack] Channel layouts:
[  38.199][v][ao/jack]  - waveext
[  38.207][v][ao/jack] result: stereo
[  38.215][f][ao/jack] cannot open server
[  38.223][e][ao] Failed to initialize audio driver 'jack'
[  38.231][e][cplayer] Could not open/initialize audio device -> no sound.
[  38.239][d][ad] Uninit decoder.
[  38.247][v][lavf] deselect track 0
[  38.256][i][cplayer] Audio: no audio
[  38.264][v][cplayer] playback restart complete @ -9223372036854775808.000000, audio=eof, video=eof
[  38.275][v][cplayer] EOF code: 6  
[  38.284][d][cplayer] Terminating demuxers...
[  38.291][d][cplayer] Done terminating demuxers.
[  38.299][v][cplayer] finished playback, audio output initialization failed (reason 4)
[  38.307][i][cplayer] 
[  38.315][d][global] config path: 'watch_later' -> '-'
[  38.323][i][cplayer] Playing: /music/Yanni/If I Could Tell You/10 In Your Eyes.mp3
[  38.331][v][cplayer] Running hook: ytdl_hook/on_load
[  38.339][v][ytdl_hook] ytdl:// hook 
[  38.351][v][ytdl_hook] not a ytdl:// url 
[  38.363][d][cplayer] Run command: change-list, flags=64, args=[name="shared-script-properties", operation="append", value="osc-margins=0.000000,0.000000,0.000000,0.000000"]
[  38.371][v][cplayer] Set property: shared-script-properties -> 1
[  38.379][v][ifo_dvdnav] Opening /music/Yanni/If I Could Tell You/10 In Your Eyes.mp3
[  38.387][v][bdmv/bluray] Opening /music/Yanni/If I Could Tell You/10 In Your Eyes.mp3
[  38.395][v][file] Opening /music/Yanni/If I Could Tell You/10 In Your Eyes.mp3
[  38.403][d][osc] osc_init 
[  38.411][d][file] resize stream to 131072 bytes, drop 0 bytes
[  38.419][d][file] Stream opened successfully.
[  38.431][v][demux] Trying demuxers for level=normal.
[  38.443][d][demux] Trying demuxer: disc (force-level: normal)
[  38.455][d][demux] Trying demuxer: edl (force-level: normal)
[  38.463][d][cplayer] Run command: change-list, flags=64, args=[name="shared-script-properties", operation="append", value="osc-margins=0.000000,0.000000,0.000000,0.000000"]
[  38.475][v][cplayer] Set property: shared-script-properties -> 1
[  38.487][d][demux] Trying demuxer: cue (force-level: normal)
[  38.495][d][demux] Trying demuxer: rawaudio (force-level: normal)
[  38.503][d][demux] Trying demuxer: rawvideo (force-level: normal)
[  38.515][d][demux] Trying demuxer: mkv (force-level: normal)
[  38.527][d][demux] Trying demuxer: lavf (force-level: normal)
[  38.535][v][lavf] Found 'mp3' at score=12 size=2048.
[  38.543][v][lavf] Found 'mp3' at score=12 size=4096.
[  38.552][v][lavf] Found 'mp3' at score=12 size=8192.
[  38.560][v][lavf] Found 'mp3' at score=12 size=16384.
[  38.567][v][lavf] Found 'mp3' at score=12 size=32768.
[  38.575][v][lavf] Found 'mp3' at score=51 size=65536.
[  38.583][d][ffmpeg/demuxer] mp3: Skipping 0 bytes of junk at 53258.
[  38.591][w][ffmpeg/demuxer] mp3: Estimating duration from bitrate, this may be inaccurate
[  38.603][v][lavf] avformat_find_stream_info() finished after 98304 bytes.
[  38.611][v][lavf] Assuming this is an image format.
[  38.619][v][demux] Detected file format: mp3 (libavformat)
[  38.627][v][cplayer] Opening done: /music/Yanni/If I Could Tell You/10 In Your Eyes.mp3
[  38.643][v][find_files] Loading external files in /music/Yanni/If I Could Tell You/
[  38.651][d][find_files] Potential external file: "albumart.jpg"  Priority: 15
[  38.659][d][osc] osc_init 
[  38.667][v][ifo_dvdnav] Opening /music/Yanni/If I Could Tell You/albumart.jpg
[  38.675][d][cplayer] Run command: change-list, flags=64, args=[name="shared-script-properties", operation="append", value="osc-margins=0.000000,0.000000,0.000000,0.000000"]
[  38.687][v][bdmv/bluray] Opening /music/Yanni/If I Could Tell You/albumart.jpg
[  38.696][v][cplayer] Set property: shared-script-properties -> 1
[  38.707][v][file] Opening /music/Yanni/If I Could Tell You/albumart.jpg
[  38.715][d][file] resize stream to 131072 bytes, drop 0 bytes
[  38.723][d][file] Stream opened successfully.
[  38.735][v][demux] Trying demuxers for level=normal.
[  38.743][d][demux] Trying demuxer: disc (force-level: normal)
[  38.755][d][demux] Trying demuxer: edl (force-level: normal)
[  38.767][d][demux] Trying demuxer: cue (force-level: normal)
[  38.775][d][demux] Trying demuxer: rawaudio (force-level: normal)
[  38.787][d][demux] Trying demuxer: rawvideo (force-level: normal)
[  38.795][d][demux] Trying demuxer: mkv (force-level: normal)
[  38.803][d][demux] Trying demuxer: lavf (force-level: normal)
[  38.811][v][lavf] Found 'jpeg_pipe' at score=26 size=2048.
[  38.820][v][lavf] avformat_find_stream_info() finished after 24214 bytes.
[  38.827][v][lavf] Assuming this is an image format.
[  38.836][v][demux] Detected file format: jpeg_pipe (libavformat)
[  38.844][v][cplayer] Running hook: ytdl_hook/on_preloaded
[  38.851][v][lavf] select track 0
[  38.860][i][cplayer]      Video --vid=1 [P] '2001x2001' (mjpeg 500x500 1.000fps)
[  38.868][i][cplayer]      Video --vid=2 [P] 'albumart.jpg' (mjpeg 500x500 1.000fps) (external)
[  38.876][i][cplayer]  (+) Audio --aid=1 (mp3 2ch 44100Hz)
[  38.884][i][display-tags] File tags:
[  38.892][i][display-tags]  Artist: Yanni
[  38.900][i][display-tags]  Album: If I Could Tell You
[  38.911][i][display-tags]  Album_Artist: Yanni
[  38.923][i][display-tags]  Date: 2000-10-03
[  38.935][i][display-tags]  Title: In Your Eyes
[  38.943][i][display-tags]  Track: 10/11
[  38.952][v][ad] Codec list:
[  38.960][v][ad]     mp3float (mp3) - MP3 (MPEG audio layer 3)
[  38.968][v][ad]     mp3 - MP3 (MPEG audio layer 3)
[  38.975][v][ad] Opening decoder mp3float
[  38.984][v][ad] Requesting 1 threads for decoding.
[  38.992][v][ad] Selected codec: mp3float (MP3 (MPEG audio layer 3))
[  39.000][v][af] User filter list:
[  39.011][v][af]   (empty)
[  39.023][v][cplayer] Starting playback...
[  39.035][d][osc] osc_init 
[  39.047][v][af] [in] 44100Hz stereo 2ch floatp
[  39.059][v][af] [userspeed] 44100Hz stereo 2ch floatp
[  39.067][v][af] [userspeed] (disabled)
[  39.076][v][af] [convert] 44100Hz stereo 2ch floatp
[  39.083][v][ao] Trying audio driver 'pulse'
[  39.095][v][ao/pulse] requested format: 44100 Hz, stereo channels, floatp
[  39.103][v][ao/pulse] Library version: 15.0.0
[  39.111][v][ao/pulse] Proto: 35
[  39.120][v][ao/pulse] Server proto: 4294967295
[  39.127][v][ao] Trying audio driver 'alsa'
[  39.139][v][ao/alsa] requested format: 44100 Hz, stereo channels, floatp
[  39.151][v][ao/alsa] using ALSA version: 1.2.7.2
[  39.160][v][ao/alsa] opening device 'default'
[  39.171][e][ao/alsa] Playback open error: No such file or directory
[  39.180][v][ao] Trying audio driver 'jack'
[  39.187][v][ao/jack] requested format: 44100 Hz, stereo channels, floatp
[  39.199][v][ao/jack] Channel layouts:
[  39.211][v][ao/jack]  - waveext
[  39.224][v][ao/jack] result: stereo
[  39.231][f][ao/jack] cannot open server
[  39.239][e][ao] Failed to initialize audio driver 'jack'
[  39.247][e][cplayer] Could not open/initialize audio device -> no sound.
[  39.255][d][ad] Uninit decoder.
[  39.267][v][lavf] deselect track 0
[  39.276][i][cplayer] Audio: no audio
[  39.283][v][cplayer] playback restart complete @ -9223372036854775808.000000, audio=eof, video=eof
[  39.295][v][cplayer] EOF code: 6  
[  39.303][d][cplayer] Terminating demuxers...
[  39.320][d][cplayer] Done terminating demuxers.
[  39.327][v][cplayer] finished playback, audio output initialization failed (reason 4)
[  39.335][i][cplayer] 
[  39.347][d][global] config path: 'watch_later' -> '-'
[  39.356][i][cplayer] Playing: /music/Yanni/If I Could Tell You/11 Reason for Rainbows.mp3
[  39.367][v][cplayer] Running hook: ytdl_hook/on_load
[  39.379][v][ytdl_hook] ytdl:// hook 
[  39.388][v][ytdl_hook] not a ytdl:// url 
[  39.395][d][cplayer] Run command: change-list, flags=64, args=[name="shared-script-properties", operation="append", value="osc-margins=0.000000,0.000000,0.000000,0.000000"]
[  39.407][v][cplayer] Set property: shared-script-properties -> 1
[  39.415][v][ifo_dvdnav] Opening /music/Yanni/If I Could Tell You/11 Reason for Rainbows.mp3
[  39.427][v][bdmv/bluray] Opening /music/Yanni/If I Could Tell You/11 Reason for Rainbows.mp3
[  39.439][v][file] Opening /music/Yanni/If I Could Tell You/11 Reason for Rainbows.mp3
[  39.451][d][osc] osc_init 
[  39.459][d][file] resize stream to 131072 bytes, drop 0 bytes
[  39.467][d][file] Stream opened successfully.
[  39.475][v][demux] Trying demuxers for level=normal.
[  39.484][d][demux] Trying demuxer: disc (force-level: normal)
[  39.491][d][demux] Trying demuxer: edl (force-level: normal)
[  39.500][d][cplayer] Run command: change-list, flags=64, args=[name="shared-script-properties", operation="append", value="osc-margins=0.000000,0.000000,0.000000,0.000000"]
[  39.507][v][cplayer] Set property: shared-script-properties -> 1
[  39.516][d][demux] Trying demuxer: cue (force-level: normal)
[  39.527][d][demux] Trying demuxer: rawaudio (force-level: normal)
[  39.539][d][demux] Trying demuxer: rawvideo (force-level: normal)
[  39.547][d][demux] Trying demuxer: mkv (force-level: normal)
[  39.559][d][demux] Trying demuxer: lavf (force-level: normal)
[  39.571][v][lavf] Found 'mp3' at score=12 size=2048.
[  39.583][v][lavf] Found 'mp3' at score=12 size=4096.
[  39.591][v][lavf] Found 'mp3' at score=12 size=8192.
[  39.599][v][lavf] Found 'mp3' at score=12 size=16384.
[  39.607][v][lavf] Found 'mp3' at score=12 size=32768.
[  39.619][v][lavf] Found 'mp3' at score=51 size=65536.
[  39.627][d][ffmpeg/demuxer] mp3: Skipping 0 bytes of junk at 53258.
[  39.639][w][ffmpeg/demuxer] mp3: Estimating duration from bitrate, this may be inaccurate
[  39.647][v][lavf] avformat_find_stream_info() finished after 98304 bytes.
[  39.655][v][lavf] Assuming this is an image format.
[  39.667][v][demux] Detected file format: mp3 (libavformat)
[  39.679][v][cplayer] Opening done: /music/Yanni/If I Could Tell You/11 Reason for Rainbows.mp3
[  39.691][v][find_files] Loading external files in /music/Yanni/If I Could Tell You/
[  39.703][d][find_files] Potential external file: "albumart.jpg"  Priority: 15
[  39.715][d][osc] osc_init 
[  39.727][v][ifo_dvdnav] Opening /music/Yanni/If I Could Tell You/albumart.jpg
[  39.735][d][cplayer] Run command: change-list, flags=64, args=[name="shared-script-properties", operation="append", value="osc-margins=0.000000,0.000000,0.000000,0.000000"]
[  39.743][v][bdmv/bluray] Opening /music/Yanni/If I Could Tell You/albumart.jpg
[  39.755][v][cplayer] Set property: shared-script-properties -> 1
[  39.767][v][file] Opening /music/Yanni/If I Could Tell You/albumart.jpg
[  39.779][d][file] resize stream to 131072 bytes, drop 0 bytes
[  39.787][d][file] Stream opened successfully.
[  39.795][v][demux] Trying demuxers for level=normal.
[  39.803][d][demux] Trying demuxer: disc (force-level: normal)
[  39.811][d][demux] Trying demuxer: edl (force-level: normal)
[  39.823][d][demux] Trying demuxer: cue (force-level: normal)
[  39.831][d][demux] Trying demuxer: rawaudio (force-level: normal)
[  39.843][d][demux] Trying demuxer: rawvideo (force-level: normal)
[  39.851][d][demux] Trying demuxer: mkv (force-level: normal)
[  39.863][d][demux] Trying demuxer: lavf (force-level: normal)
[  39.875][v][lavf] Found 'jpeg_pipe' at score=26 size=2048.
[  39.887][v][lavf] avformat_find_stream_info() finished after 24214 bytes.
[  39.895][v][lavf] Assuming this is an image format.
[  39.911][v][demux] Detected file format: jpeg_pipe (libavformat)
[  39.919][v][cplayer] Running hook: ytdl_hook/on_preloaded
[  39.931][d][osc] osc_init 
[  39.940][v][lavf] select track 0
[  39.947][i][cplayer]      Video --vid=1 [P] '2001x2001' (mjpeg 500x500 1.000fps)
[  39.956][i][cplayer]      Video --vid=2 [P] 'albumart.jpg' (mjpeg 500x500 1.000fps) (external)
[  39.964][i][cplayer]  (+) Audio --aid=1 (mp3 2ch 44100Hz)
[  39.971][i][display-tags] File tags:
[  39.980][i][display-tags]  Artist: Yanni
[  39.987][i][display-tags]  Album: If I Could Tell You
[  39.996][i][display-tags]  Album_Artist: Yanni
[  40.007][i][display-tags]  Date: 2000-10-03
[  40.015][i][display-tags]  Title: Reason for Rainbows
[  40.024][i][display-tags]  Track: 11/11
[  40.032][v][ad] Codec list:
[  40.040][v][ad]     mp3float (mp3) - MP3 (MPEG audio layer 3)
[  40.048][v][ad]     mp3 - MP3 (MPEG audio layer 3)
[  40.056][v][ad] Opening decoder mp3float
[  40.064][v][ad] Requesting 1 threads for decoding.
[  40.075][v][ad] Selected codec: mp3float (MP3 (MPEG audio layer 3))
[  40.084][v][af] User filter list:
[  40.095][v][af]   (empty)
[  40.104][v][cplayer] Starting playback...
[  40.111][v][af] [in] 44100Hz stereo 2ch floatp
[  40.123][v][af] [userspeed] 44100Hz stereo 2ch floatp
[  40.132][v][af] [userspeed] (disabled)
[  40.140][v][af] [convert] 44100Hz stereo 2ch floatp
[  40.151][v][ao] Trying audio driver 'pulse'
[  40.163][v][ao/pulse] requested format: 44100 Hz, stereo channels, floatp
[  40.175][v][ao/pulse] Library version: 15.0.0
[  40.187][v][ao/pulse] Proto: 35
[  40.199][v][ao/pulse] Server proto: 4294967295
[  40.211][v][ao] Trying audio driver 'alsa'
[  40.223][v][ao/alsa] requested format: 44100 Hz, stereo channels, floatp
[  40.231][v][ao/alsa] using ALSA version: 1.2.7.2
[  40.239][v][ao/alsa] opening device 'default'
[  40.247][e][ao/alsa] Playback open error: No such file or directory
[  40.255][v][ao] Trying audio driver 'jack'
[  40.264][v][ao/jack] requested format: 44100 Hz, stereo channels, floatp
[  40.271][v][ao/jack] Channel layouts:
[  40.280][v][ao/jack]  - waveext
[  40.287][v][ao/jack] result: stereo
[  40.295][f][ao/jack] cannot open server
[  40.303][e][ao] Failed to initialize audio driver 'jack'
[  40.312][e][cplayer] Could not open/initialize audio device -> no sound.
[  40.323][d][ad] Uninit decoder.
[  40.331][v][lavf] deselect track 0
[  40.339][i][cplayer] Audio: no audio
[  40.348][v][cplayer] playback restart complete @ -9223372036854775808.000000, audio=eof, video=eof
[  40.355][v][cplayer] EOF code: 6  
[  40.364][d][cplayer] Terminating demuxers...
[  40.371][d][cplayer] Done terminating demuxers.
[  40.380][v][cplayer] finished playback, audio output initialization failed (reason 4)
[  40.388][i][cplayer] 
[  40.399][d][cplayer] Run command: change-list, flags=64, args=[name="shared-script-properties", operation="append", value="osc-margins=0.000000,0.000000,0.000000,0.000000"]
[  40.408][v][cplayer] Set property: shared-script-properties -> 1
[  40.416][d][cplayer] Run command: disable-section, flags=64, args=[name="showhide"]
[  40.427][d][cplayer] Run command: disable-section, flags=64, args=[name="showhide_wc"]

Not sure if it's my audio device.. How do I check? Tools like 'aplay' or 'speaker-test' arent available inside the container.
Here's what's in /dev/snd/ inside the container:

# ls -al /dev/snd/
total 0
drwxr-xr-x    2 root     root           220 Dec 25 21:37 .
drwxr-xr-x    6 root     root           380 Dec 25 21:37 ..
crw-rw----    1 nobody   nobody    116,   5 Dec 24 16:59 controlC0
crw-rw----    1 nobody   nobody    116,   8 Dec 24 16:59 controlC1
crw-rw----    1 nobody   nobody    116,   3 Dec 24 16:59 pcmC0D0c
crw-rw----    1 nobody   nobody    116,   2 Dec 24 18:57 pcmC0D0p
crw-rw----    1 nobody   nobody    116,   4 Dec 24 16:59 pcmC0D1p
crw-rw----    1 nobody   nobody    116,   6 Dec 24 16:59 pcmC1D0p
crw-rw----    1 nobody   nobody    116,   7 Dec 24 16:59 pcmC1D1p
crw-rw----    1 nobody   nobody    116,   1 Dec 24 16:59 seq
crw-rw----    1 nobody   nobody    116,  33 Dec 24 16:59 timer

A permissions issue maybe? xof user (which the container runs as) was added to the 'audio' group.
Same output from outside the container:

xof@debbie:~$ ls -al /dev/snd/
total 0
drwxr-xr-x  3 root root      240 Dec 24 16:59 .
drwxr-xr-x 16 root root     3240 Dec 24 16:59 ..
drwxr-xr-x  2 root root       80 Dec 24 16:59 by-path
crw-rw----  1 root audio 116,  5 Dec 24 16:59 controlC0
crw-rw----  1 root audio 116,  8 Dec 24 16:59 controlC1
crw-rw----  1 root audio 116,  3 Dec 24 16:59 pcmC0D0c
crw-rw----  1 root audio 116,  2 Dec 24 18:57 pcmC0D0p
crw-rw----  1 root audio 116,  4 Dec 24 16:59 pcmC0D1p
crw-rw----  1 root audio 116,  6 Dec 24 16:59 pcmC1D0p
crw-rw----  1 root audio 116,  7 Dec 24 16:59 pcmC1D1p
crw-rw----  1 root audio 116,  1 Dec 24 16:59 seq
crw-rw----  1 root audio 116, 33 Dec 24 16:59 timer

@Ke1i
Copy link

Ke1i commented Dec 25, 2022

More info:
Here's the output of mpv --audio-device=help inside the container:

/ # mpv --audio-device=help
List of detected audio devices:
  'auto' (Autoselect device)
  'alsa' (Default (alsa))
  'jack' (Default (jack))

And here's the output of the same command outside the container:

xof@debbie:~$ mpv --audio-device=help
List of detected audio devices:
  'auto' (Autoselect device)
  'alsa' (Default (alsa))
  'alsa/plughw:CARD=bytcrrt5640,DEV=0' (bytcr-rt5640, /Hardware device with all software conversions)
  'alsa/plughw:CARD=bytcrrt5640,DEV=1' (bytcr-rt5640, /Hardware device with all software conversions)
  'alsa/default:CARD=bytcrrt5640' (bytcr-rt5640, /Default Audio Device)
  'alsa/sysdefault:CARD=bytcrrt5640' (bytcr-rt5640, /Default Audio Device)
  'alsa/dmix:CARD=bytcrrt5640,DEV=0' (bytcr-rt5640, /Direct sample mixing device)
  'alsa/dmix:CARD=bytcrrt5640,DEV=1' (bytcr-rt5640, /Direct sample mixing device)
  'alsa/plughw:CARD=Audio,DEV=0' (Intel HDMI/DP LPE Audio, Intel HDMI/DP LPE Audi/Hardware device with all software conversions)
  'alsa/plughw:CARD=Audio,DEV=1' (Intel HDMI/DP LPE Audio, Intel HDMI/DP LPE Audi/Hardware device with all software conversions)
  'alsa/default:CARD=Audio' (Intel HDMI/DP LPE Audio, Intel HDMI/DP LPE Audi/Default Audio Device)
  'alsa/sysdefault:CARD=Audio' (Intel HDMI/DP LPE Audio, Intel HDMI/DP LPE Audi/Default Audio Device)
  'alsa/hdmi:CARD=Audio,DEV=0' (Intel HDMI/DP LPE Audio, Intel HDMI/DP LPE Audi/HDMI Audio Output)
  'alsa/hdmi:CARD=Audio,DEV=1' (Intel HDMI/DP LPE Audio, Intel HDMI/DP LPE Audi/HDMI Audio Output)
  'alsa/dmix:CARD=Audio,DEV=0' (Intel HDMI/DP LPE Audio, Intel HDMI/DP LPE Audi/Direct sample mixing device)
  'alsa/dmix:CARD=Audio,DEV=1' (Intel HDMI/DP LPE Audio, Intel HDMI/DP LPE Audi/Direct sample mixing device)
  'jack' (Default (jack))
  'sdl' (Default (sdl))
  'sndio' (Default (sndio))

@sentriz
Copy link
Owner Author

sentriz commented Dec 25, 2022

hmm i'm not sure. maybe it's a podman thing. does podman have a --privileged flag? or does that default the purpose of podman

and are you able to run the audio example from here? just for testing

@Ke1i
Copy link

Ke1i commented Dec 26, 2022

Yes the --privileged flag is supported. I tried it but it didn't work. I ditched the whole podman rootless thing and decided to run the container as root and things worked! Looks like to access devices on the system, root is needed.
This is my output of mpv --audio-device=help command after running gonic as root - the devices are being recognized now :)

/ # mpv --audio-device=help
List of detected audio devices:
  'auto' (Autoselect device)
  'alsa' (Default (alsa))
  'alsa/default:CARD=bytcrrt5640' (bytcr-rt5640, /Default Audio Device)
  'alsa/sysdefault:CARD=bytcrrt5640' (bytcr-rt5640, /Default Audio Device)
  'alsa/default:CARD=Audio' (Intel HDMI/DP LPE Audio, Intel HDMI/DP LPE Audi/Default Audio Device)
  'alsa/sysdefault:CARD=Audio' (Intel HDMI/DP LPE Audio, Intel HDMI/DP LPE Audi/Default Audio Device)
  'alsa/hdmi:CARD=Audio,DEV=0' (Intel HDMI/DP LPE Audio, Intel HDMI/DP LPE Audi/HDMI Audio Output)
  'alsa/hdmi:CARD=Audio,DEV=1' (Intel HDMI/DP LPE Audio, Intel HDMI/DP LPE Audi/HDMI Audio Output)
  'jack' (Default (jack))

So I can confirm that sound is working on the server, with volume control!
And no more errors on mpv log :)

[28509.826][v][cplayer] Opening done: /music/Aisha Duo/Quiet Songs/03 - Children's Song No. 2.mp3
[28509.829][v][find_files] Loading external files in /music/Aisha Duo/Quiet Songs/
[28509.829][d][find_files] Potential external file: "albumart.jpg"  Priority: 15
[28509.830][v][ifo_dvdnav] Opening /music/Aisha Duo/Quiet Songs/albumart.jpg
[28509.830][v][bdmv/bluray] Opening /music/Aisha Duo/Quiet Songs/albumart.jpg
[28509.831][v][file] Opening /music/Aisha Duo/Quiet Songs/albumart.jpg
[28509.831][d][file] resize stream to 131072 bytes, drop 0 bytes
[28509.831][d][file] Stream opened successfully.
[28509.831][v][demux] Trying demuxers for level=normal.
[28509.831][d][demux] Trying demuxer: disc (force-level: normal)
[28509.831][d][demux] Trying demuxer: edl (force-level: normal)
[28509.831][d][demux] Trying demuxer: cue (force-level: normal)
[28509.831][d][demux] Trying demuxer: rawaudio (force-level: normal)
[28509.832][d][demux] Trying demuxer: rawvideo (force-level: normal)
[28509.832][d][demux] Trying demuxer: mkv (force-level: normal)
[28509.832][d][demux] Trying demuxer: lavf (force-level: normal)
[28509.839][d][osc] osc_init 
[28509.846][d][cplayer] Run command: change-list, flags=64, args=[name="shared-script-properties", operation="append", value="osc-margins=0.000000,0.000000,0.000000,0.000000"]
[28509.846][v][cplayer] Set property: shared-script-properties -> 1
[28509.848][v][lavf] Found 'jpeg_pipe' at score=26 size=2048.
[28509.850][v][lavf] avformat_find_stream_info() finished after 17699 bytes.
[28509.850][v][lavf] Assuming this is an image format.
[28509.850][v][demux] Detected file format: jpeg_pipe (libavformat)
[28509.851][v][cplayer] Running hook: ytdl_hook/on_preloaded
[28509.852][v][lavf] select track 0
[28509.852][i][cplayer]      Video --vid=1 [P] (mjpeg 500x443 1.000fps)
[28509.852][i][cplayer]      Video --vid=2 [P] 'albumart.jpg' (mjpeg 500x443 1.000fps) (external)
[28509.852][i][cplayer]  (+) Audio --aid=1 (mp3 2ch 44100Hz)
[28509.853][i][display-tags] File tags:
[28509.853][i][display-tags]  Artist: Aisha Duo
[28509.853][i][display-tags]  Album: Quiet Songs
[28509.853][i][display-tags]  Album_Artist: Aisha Duo
[28509.853][i][display-tags]  Date: 2005-04-26
[28509.853][i][display-tags]  Genre: Jazz
[28509.853][i][display-tags]  Title: Children's Song No. 2
[28509.853][i][display-tags]  Track: 3/17
[28509.857][v][ad] Codec list:
[28509.857][v][ad]     mp3float (mp3) - MP3 (MPEG audio layer 3)
[28509.858][v][ad]     mp3 - MP3 (MPEG audio layer 3)
[28509.858][v][ad] Opening decoder mp3float
[28509.858][v][ad] Requesting 1 threads for decoding.
[28509.858][v][ad] Selected codec: mp3float (MP3 (MPEG audio layer 3))
[28509.858][v][af] User filter list:
[28509.858][v][af]   (empty)
[28509.859][v][cplayer] Starting playback...
[28509.864][v][af] [in] 44100Hz stereo 2ch floatp
[28509.865][v][af] [userspeed] 44100Hz stereo 2ch floatp
[28509.865][v][af] [userspeed] (disabled)
[28509.865][v][af] [convert] 44100Hz stereo 2ch floatp
[28509.865][v][autoconvert] inserting resampler
[28509.865][v][swresample] format change, reinitializing resampler
[28509.865][v][swresample] 44100Hz stereo floatp -> 48000Hz stereo float
[28509.869][v][af] [out] 48000Hz stereo 2ch float
[28509.869][v][cplayer] previous audio still playing; continuing
[28509.873][v][cplayer] starting audio playback
[28509.873][v][cplayer] playback restart complete @ -0.213375, audio=playing, video=eof
[28509.878][d][osc] osc_init 
[28509.885][d][cplayer] Run command: change-list, flags=64, args=[name="shared-script-properties", operation="append", value="osc-margins=0.000000,0.000000,0.000000,0.000000"]
[28509.886][v][cplayer] Set property: shared-script-properties -> 1
[28601.147][v][lavf] EOF reached.
[28602.175][v][af] filter input EOF
[28602.175][v][af] filter output EOF
[28602.175][v][cplayer] audio filter EOF
[28602.176][v][cplayer] audio draining
[28602.176][v][cplayer] audio EOF reached
[28602.176][v][cplayer] EOF code: 1  
[28602.176][d][ad] Uninit decoder.
[28602.178][d][cplayer] Terminating demuxers...
[28602.180][d][cplayer] Done terminating demuxers.
[28602.180][v][cplayer] finished playback, success (reason 0)
[28602.180][i][cplayer] 
[28602.180][d][global] config path: 'watch_later' -> '-'

Thanks @sentriz

@remus-selea
Copy link

remus-selea commented Apr 8, 2023

This might be helpful to others. I wasn't getting any audio from jukebox mode until I added an extra argument for mpv.

services:
  gonic:
    image: sentriz/gonic:latest
    user: "1000:1000"
    environment:
      - TZ=Europe/Bucharest
      - GONIC_JUKEBOX_ENABLED=true
      - GONIC_JUKEBOX_MPV_EXTRA_ARGS=--vo=null

The error I was getting when trying to play files using mpv in the container:

error: XDG_RUNTIME_DIR not set in the environment.
[vo/gpu] VT_GETMODE failed: Not a tty
[vo/gpu/opengl] Failed to set up VT switcher. Terminal switching will be unavailable.
[vo/gpu/opengl] Listing DRM devices with drmGetDevices failed! (No such file or directory)
[vo/gpu/opengl] Failed to find a usable DRM primary node!
[vo/gpu/opengl] Failed to create KMS.
error: XDG_RUNTIME_DIR not set in the environment.
Error opening/initializing the selected video_out (--vo) device.
Video: no video

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

Successfully merging this pull request may close these issues.

None yet

4 participants