-
Notifications
You must be signed in to change notification settings - Fork 136
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
[BUG] Song ending immediately using the -u <custom_url> option #392
Comments
How did you install ffmpeg? Using apt-get? That version number looks very
strange to me.
…On Tue, Sep 3, 2024 at 9:19 PM Kyle Hildebrandt ***@***.***> wrote:
*Describe the bug*
I have had pikaraoke working for a while, but decided to try to update to
the new pip install version. In order to do that, I needed to install
Raspberry Pi OS with the desktop in order to have the splash screen open,
whereas before I was using a desktopless version of Raspberry Pi OS. In
order to keep all of my songs, I copied them onto my NAS.
Now, I installed Raspberry Pi OS Bullseye, installed python 3.12.5, pip
installed pikaraoke, pointed it at my NAS with my already downloaded songs,
and connected to it using my phone.
All of this seems to be working correctly, but whenever I try to play a
song, it loads it as Up Next, begins to "play" the song (never actually
leaving the slash screen), and then the song stops. I thought it may have
something to do with hosting my songs on my NAS, but I pointed pikaraoke to
it's default location, downloaded a new song, and the same behavior is
happening.
I thought this may be similar to #317
<#317> or #332
<#332> but it doesn't seem cdg
related (all of the files are mp4) and I am not seeing the media play at
all.
I know you and @mariugul <https://github.com/mariugul> are in the middle
of a refactor of the code base, but I don't see why this could contribute
to my issue. I think it has something to do with my ffmpeg version,
settings, or something else related, but I don't know enough about that.
*Expected behavior*
Songs should play on the screen.
*Platform (please complete the following information):*
- Hardware: Raspberry Pi 3B
- OS: Raspberry Pi OS
- OS version: Raspberry pi Debian Bullseye 32-bit Desktop
- Browser: any
- Version: 1.4.1
- Ffmpeg Version:
built with gcc 10 (Raspbian 10.2.1-6+rpi1)
configuration: --prefix=/usr --extra-version=0+deb11u1+rpt2 --toolchain=hardened --incdir=/usr/include/arm-linux-gnueabihf --enable-gpl --disable-stripping --enable-avresample --disable-filter=resample --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libdav1d --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librabbitmq --enable-librsvg --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opencl --enable-opengl --enable-sdl2 --enable-mmal --enable-neon --enable-rpi --enable-v4l2-request --enable-libudev --enable-epoxy --enable-pocketsphinx --enable-libdc1394 --enable-libdrm --enable-vout-drm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libx264 --enable-shared --libdir=/usr/lib/arm-linux-gnueabihf --cpu=arm1176jzf-s --arch=arm
libavutil 56. 51.100 / 56. 51.100
libavcodec 58. 91.100 / 58. 91.100
libavformat 58. 45.100 / 58. 45.100
libavdevice 58. 10.100 / 58. 10.100
libavfilter 7. 85.100 / 7. 85.100
libavresample 4. 0. 0 / 4. 0. 0
libswscale 5. 7.100 / 5. 7.100
libswresample 3. 7.100 / 3. 7.100
libpostproc 55. 7.100 / 55. 7.100```
—
Reply to this email directly, view it on GitHub
<#392>, or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AA7KXNTZVJXYCCZQ23EQGJ3ZU2C6RAVCNFSM6AAAAABNTN4Q3GVHI2DSMVQWIX3LMV43ASLTON2WKOZSGUYDIMRWHE3DINY>
.
You are receiving this because you are subscribed to this thread.Message
ID: ***@***.***>
|
Also bullseye is likely too old. See the readme for the OS recommendation.
It also recommends overclocking pi 3 since ffmpeg transcoding and mp4
playback in chrome is more CPU intensive
…On Tue, Sep 3, 2024 at 9:57 PM Vic Wong ***@***.***> wrote:
How did you install ffmpeg? Using apt-get? That version number looks very
strange to me.
On Tue, Sep 3, 2024 at 9:19 PM Kyle Hildebrandt ***@***.***>
wrote:
> *Describe the bug*
> I have had pikaraoke working for a while, but decided to try to update to
> the new pip install version. In order to do that, I needed to install
> Raspberry Pi OS with the desktop in order to have the splash screen open,
> whereas before I was using a desktopless version of Raspberry Pi OS. In
> order to keep all of my songs, I copied them onto my NAS.
>
> Now, I installed Raspberry Pi OS Bullseye, installed python 3.12.5, pip
> installed pikaraoke, pointed it at my NAS with my already downloaded songs,
> and connected to it using my phone.
>
> All of this seems to be working correctly, but whenever I try to play a
> song, it loads it as Up Next, begins to "play" the song (never actually
> leaving the slash screen), and then the song stops. I thought it may have
> something to do with hosting my songs on my NAS, but I pointed pikaraoke to
> it's default location, downloaded a new song, and the same behavior is
> happening.
>
> I thought this may be similar to #317
> <#317> or #332
> <#332> but it doesn't seem
> cdg related (all of the files are mp4) and I am not seeing the media play
> at all.
>
> I know you and @mariugul <https://github.com/mariugul> are in the middle
> of a refactor of the code base, but I don't see why this could contribute
> to my issue. I think it has something to do with my ffmpeg version,
> settings, or something else related, but I don't know enough about that.
>
> *Expected behavior*
> Songs should play on the screen.
>
> *Platform (please complete the following information):*
>
> - Hardware: Raspberry Pi 3B
> - OS: Raspberry Pi OS
> - OS version: Raspberry pi Debian Bullseye 32-bit Desktop
> - Browser: any
> - Version: 1.4.1
> - Ffmpeg Version:
>
> built with gcc 10 (Raspbian 10.2.1-6+rpi1)
> configuration: --prefix=/usr --extra-version=0+deb11u1+rpt2 --toolchain=hardened --incdir=/usr/include/arm-linux-gnueabihf --enable-gpl --disable-stripping --enable-avresample --disable-filter=resample --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libdav1d --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librabbitmq --enable-librsvg --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opencl --enable-opengl --enable-sdl2 --enable-mmal --enable-neon --enable-rpi --enable-v4l2-request --enable-libudev --enable-epoxy --enable-pocketsphinx --enable-libdc1394 --enable-libdrm --enable-vout-drm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libx264 --enable-shared --libdir=/usr/lib/arm-linux-gnueabihf --cpu=arm1176jzf-s --arch=arm
> libavutil 56. 51.100 / 56. 51.100
> libavcodec 58. 91.100 / 58. 91.100
> libavformat 58. 45.100 / 58. 45.100
> libavdevice 58. 10.100 / 58. 10.100
> libavfilter 7. 85.100 / 7. 85.100
> libavresample 4. 0. 0 / 4. 0. 0
> libswscale 5. 7.100 / 5. 7.100
> libswresample 3. 7.100 / 3. 7.100
> libpostproc 55. 7.100 / 55. 7.100```
>
> —
> Reply to this email directly, view it on GitHub
> <#392>, or unsubscribe
> <https://github.com/notifications/unsubscribe-auth/AA7KXNTZVJXYCCZQ23EQGJ3ZU2C6RAVCNFSM6AAAAABNTN4Q3GVHI2DSMVQWIX3LMV43ASLTON2WKOZSGUYDIMRWHE3DINY>
> .
> You are receiving this because you are subscribed to this thread.Message
> ID: ***@***.***>
>
|
I would try a newer |
I didn't install it separately. I think it is the version installed by default by the Raspberry Pi Image.
Haha, I picked bullseye specifically because the README recommended it.
I tried overclocking the pi but I don't think that helped. I can try pushing it up a bit more though to see if that helps. If that doesn't help, I'll try Bookworm and see if that has any differences.
I could try this too, but it looks like most of the ways people are recommending to upgrade is by compiling it myself. SDo you know of a better way to upgrade ffmpeg to >6.0.0 natively? |
@kylehild you're right, sorry ;) bullseye is in the README. That may no longer be accurate, and bookworm might be the preferred version. I'll need to test that. I think 4.3.7 is correct. ffmpeg 6.0 is not available for pi if I recall correctly. My pi3 has 4.3.6 on it. However, I am seeing the same issue, mp4 files are skipping. Not the case on my bookworm pi 4. There appears to have been some kind of regression. |
In pi3 + bookworm 64-bit + ffmpeg 5.1.5-0+rpt1+deb12u1, I was able to play a mp4s. They are a little choppy, but probably fine for karaoke. So I may change the bullseye recommendation to bookworm. However, if I enabled the normalization feature "-n", they start to skip. This all seems to point to reaching the performance max of the pi3 which is exhausting the video buffer and causing an early skip. Unfortunately, the combination of ffmpeg transcoding and chromium mp4 playback rendering is a bit much for this older hardware. Not sure what can be done about this in the short term. |
I have removed the Bullseye recommendation from the README, as I could not get it to work. With Bookworm 64-bit on my pi3 seems fine. Video playback is a bit low-framerate, but audio works and it seems good enough. CDG and transposition still seems to work well. @kylehild LMK if you continue to see problems with bookworm 64 |
I am still seeing the exact same issue as before. The song says that it starts playing in the top right of thsplash screen and the logs, but it immediately stops without playing at all. I didn't have problems like this before the requirement was added to use the desktop version of Raspberry Pi OS. Is there a good time for me to roll back to in order to continue using this project on my RPi 3B? I understand the RPi 3 is becoming older and older, but I still think supporting it should be a high priority for a project named pikaraoke. LMK if there is anything I can do to help troubleshoot this more or contribute in a way that allows continued support for RPi 3s. |
To be clear, I reinstalled Raspberry Pi OS using the 64bit Bookworm version and my current ffmpeg version is 5.1.6-0+deb12u1+rpt1. LEt me know if any other information would be helpful but all I did was install the OS using the RPi imager and follow the instructions in the README. |
To answer your question: the version you are accustomed to is here: Nobody said anything about ending support for the Pi 3. |
Yeah, understood. Sorry, I didn't mean to imply that you did! One thing to note, I have tried installing and running pikaraoke on a debian VM on proxmox and I am having the exact same behavior as my pi, so it is either something I am doing wrong, or a larger problem. I'm hoping it is just me, but I can't see anything weird. Luckily, with the new |
Okay, I actually have some new information. It looks like this issue is only happening when I send in the This behavior happens if I pass that flag no matter what, if I access the site through the IP:PORT or through the FQDN. Are you seeing the same behavior if you use that flag? |
What does the log output in the terminal for you: |
This is my output:
I'm not seeing the specific overriding line. |
Oh sorry, just noticed that is a DEBUG log in the code. Here is the output:
|
Why is it you input Edit: I see, you just hid it from the comment, lol 😄 To me it looked like python brackets |
I cannot test the Would be great to see the logs (with debug) when you actually try to play the file. In order for streaming to work, the ffmpeg URL would end up being: Other suggestion, have you tried the |
In what cases is the port number not necessary? |
Here is the debug output when the song is played:
|
@vicwomg might know the answer however I'm in the process of adding a lot more comprehensive logging so these issues should be easier to debug I hope 😄 |
I think the problem is specifying the hostname manually with -u doesn't account for the ports. By default, Pikaraoke needs two different ports, 5555 (splash screen) and 5556 (ffmpeg stream). So if you somehow configured your domain to route to your pikaraoke server port 5555, you'll have to do the same with 5556 (perhaps as a different sub domain route entirely). You will likely also need to specify a manual --ffmpeg-url for the port 5556 routing. If you just want to use a more friendly URL for LAN use, I'd recommend going with the --prefer-hostname option instead. |
That was it! I used my reverse proxy to point a new url ( I'll switch back to my RPi 3 and test again when I can but that seems like the culprit. Thank you both so much for the help! It probably makes sense to update the help command to point out that those flags should be used in conjunction with each other. |
Describe the bug
I have had pikaraoke working for a while, but decided to try to update to the new pip install version. In order to do that, I needed to install Raspberry Pi OS with the desktop in order to have the splash screen open, whereas before I was using a desktopless version of Raspberry Pi OS. In order to keep all of my songs, I copied them onto my NAS.
Now, I installed Raspberry Pi OS Bullseye, installed python 3.12.5, pip installed pikaraoke, pointed it at my NAS with my already downloaded songs, and connected to it using my phone.
All of this seems to be working correctly, but whenever I try to play a song, it loads it as Up Next, begins to "play" the song (never actually leaving the slash screen), and then the song stops. I thought it may have something to do with hosting my songs on my NAS, but I pointed pikaraoke to it's default location, downloaded a new song, and the same behavior is happening.
I thought this may be similar to #317 or #332 but it doesn't seem cdg related (all of the files are mp4) and I am not seeing the media play at all.
I know you and @mariugul are in the middle of a refactor of the code base, but I don't see why this could contribute to my issue. I think it has something to do with my ffmpeg version, settings, or something else related, but I don't know enough about that.
Expected behavior
Songs should play on the screen.
Platform (please complete the following information):
The text was updated successfully, but these errors were encountered: