diff --git a/multimedia/videoplayer/mplayer/files/download_mplayer.sh b/multimedia/videoplayer/mplayer/files/download_mplayer.sh new file mode 100644 index 0000000000..079b4159aa --- /dev/null +++ b/multimedia/videoplayer/mplayer/files/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/files/ffmpeg-7.patch b/multimedia/videoplayer/mplayer/files/ffmpeg-7.patch new file mode 100644 index 0000000000..7ba40129b6 --- /dev/null +++ b/multimedia/videoplayer/mplayer/files/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;