diff --git a/multimedia/videoplayer/mplayer/actions.py b/multimedia/videoplayer/mplayer/actions.py
index a6fa0a61b1..063e497293 100755
--- a/multimedia/videoplayer/mplayer/actions.py
+++ b/multimedia/videoplayer/mplayer/actions.py
@@ -13,7 +13,7 @@ from pisi.actionsapi import pythonmodules
pisitools.flags.sub("-O[\ds]+", "-O3")
def setup():
- shelltools.system("mv ffmpeg-4.4.1 ffmpeg")
+ shelltools.system("mv ffmpeg-7.0.2 ffmpeg")
autotools.rawConfigure('\
--prefix=/usr \
diff --git a/multimedia/videoplayer/mplayer/download_mplayer.sh b/multimedia/videoplayer/mplayer/download_mplayer.sh
new file mode 100644
index 0000000000..079b4159aa
--- /dev/null
+++ b/multimedia/videoplayer/mplayer/download_mplayer.sh
@@ -0,0 +1,31 @@
+#!/bin/bash
+
+# MPlayer revizyon numarası
+REVISION=38542
+
+# Kaynak URL
+SOURCE_URL="svn://svn.mplayerhq.hu/mplayer/trunk@$REVISION"
+
+# Çıkış dizini ve dosya adları
+DIR_NAME="mplayer-$REVISION"
+OUTPUT_FILE="$DIR_NAME.xz"
+
+echo "MPlayer revizyon $REVISION indiriliyor..."
+svn checkout -r $REVISION $SOURCE_URL $DIR_NAME
+
+if [ $? -eq 0 ]; then
+ echo "Indirme başarılı. Sıkıştırma yapılıyor..."
+ tar -cJf $OUTPUT_FILE $DIR_NAME
+
+ if [ $? -eq 0 ]; then
+ echo "Sıkıştırma başarılı: $OUTPUT_FILE"
+ # İsteğe bağlı: Geçici dizini silmek
+ # rm -rf $DIR_NAME
+ else
+ echo "Sıkıştırma hatası!" >&2
+ exit 2
+ fi
+else
+ echo "SVN indirme hatası!" >&2
+ exit 1
+fi
\ No newline at end of file
diff --git a/multimedia/videoplayer/mplayer/ffmpeg-7.patch b/multimedia/videoplayer/mplayer/ffmpeg-7.patch
new file mode 100644
index 0000000000..7ba40129b6
--- /dev/null
+++ b/multimedia/videoplayer/mplayer/ffmpeg-7.patch
@@ -0,0 +1,95 @@
+Index: libao2/ao_jack.c
+===================================================================
+--- libao2/ao_jack.c (revisión: 38542)
++++ libao2/ao_jack.c (copia de trabajo)
+@@ -71,7 +71,7 @@
+ #define BUFFSIZE (NUM_CHUNKS * CHUNK_SIZE)
+
+ //! buffer for audio data
+-static AVFifoBuffer *buffer;
++static AVFifo *buffer;
+
+ /**
+ * \brief insert len bytes into buffer
+@@ -82,9 +82,10 @@
+ * If there is not enough room, the buffer is filled up
+ */
+ static int write_buffer(unsigned char* data, int len) {
+- int free = av_fifo_space(buffer);
++ int free = av_fifo_can_write(buffer);
+ if (len > free) len = free;
+- return av_fifo_generic_write(buffer, data, len, NULL);
++ av_fifo_write(buffer, data, len);
++ return len;
+ }
+
+ static void silence(float **bufs, int cnt, int num_bufs);
+@@ -125,12 +126,12 @@
+ */
+ static int read_buffer(float **bufs, int cnt, int num_bufs) {
+ struct deinterleave di = {bufs, num_bufs, 0, 0};
+- int buffered = av_fifo_size(buffer);
++ int buffered = av_fifo_can_read(buffer);
+ if (cnt * sizeof(float) * num_bufs > buffered) {
+ silence(bufs, cnt, num_bufs);
+ cnt = buffered / sizeof(float) / num_bufs;
+ }
+- av_fifo_generic_read(buffer, &di, cnt * num_bufs * sizeof(float), deinterleave);
++ av_fifo_read(buffer, &di, cnt * num_bufs * sizeof(float));
+ return cnt;
+ }
+
+@@ -242,7 +243,7 @@
+ mp_msg(MSGT_AO, MSGL_FATAL, "[JACK] cannot open server\n");
+ goto err_out;
+ }
+- buffer = av_fifo_alloc(BUFFSIZE);
++ buffer = av_fifo_alloc2(BUFFSIZE, 1, 0);
+ jack_set_process_callback(client, outputaudio, 0);
+
+ // list matching ports if connections should be made
+@@ -302,7 +303,7 @@
+ free(client_name);
+ if (client)
+ jack_client_close(client);
+- av_fifo_free(buffer);
++ av_fifo_freep2(&buffer);
+ buffer = NULL;
+ return 0;
+ }
+@@ -315,7 +316,7 @@
+ reset();
+ usec_sleep(100 * 1000);
+ jack_client_close(client);
+- av_fifo_free(buffer);
++ av_fifo_freep2(&buffer);
+ buffer = NULL;
+ }
+
+@@ -324,7 +325,7 @@
+ */
+ static void reset(void) {
+ paused = 1;
+- av_fifo_reset(buffer);
++ av_fifo_reset2(buffer);
+ paused = 0;
+ }
+
+@@ -343,7 +344,7 @@
+ }
+
+ static int get_space(void) {
+- return av_fifo_space(buffer);
++ return av_fifo_can_write(buffer);
+ }
+
+ /**
+@@ -357,7 +358,7 @@
+ }
+
+ static float get_delay(void) {
+- int buffered = av_fifo_size(buffer); // could be less
++ int buffered = av_fifo_can_read(buffer); // could be less
+ float in_jack = jack_latency;
+ if (estimate && callback_interval > 0) {
+ float elapsed = (float)GetTimer() / 1000000.0 - callback_time;
diff --git a/multimedia/videoplayer/mplayer/pspec.xml b/multimedia/videoplayer/mplayer/pspec.xml
index 70c2adb285..37ce34fc90 100755
--- a/multimedia/videoplayer/mplayer/pspec.xml
+++ b/multimedia/videoplayer/mplayer/pspec.xml
@@ -14,8 +14,8 @@
app:console
Media Player for Linux
MPlayer is a movie player that can run on many platforms. It plays most MPEG/VOB, AVI, Ogg/OGM, VIVO, ASF/WMA/WMV, QT/MOV/MP4, RealMedia, Matroska, NUT, NuppelVideo, FLI, YUV4MPEG, FILM, RoQ, PVA files, supported by many native codecs.
- https://sourceforge.net/projects/pisilinux/files/source/mplayer-38313.tar.gz
- https://ffmpeg.org/releases/ffmpeg-4.4.1.tar.xz
+ https://sourceforge.net/projects/pisilinux/files/source/mplayer-38542.xz
+ https://ffmpeg.org/releases/ffmpeg-7.0.2.tar.xz
https://mplayerhq.hu/MPlayer/skins/Clearlooks-multilingual-2.0.7.tar.bz2
@@ -106,7 +106,7 @@
tr-locale-fix.patch
-
+ ffmpeg-7.patch
@@ -232,8 +232,8 @@
2025-08-15
- 1.4_38313
- Rebuild.
+ 38542
+ Version bump
Mustafa Cinasal
muscnsl@gmail.com