Mpv (medya oynatıcısı)

mpv, MPlayer, mplayer2 ve FFmpeg tabanlı özgür ve açık kaynaklı bir medya oynatıcı yazılımıdır . Unix benzeri işletim sistemleri ( Linux, BSD tabanlı, macOS ) ve Microsoft Windows dahil olmak üzere çeşitli işletim sistemlerinde çalışır ve mpv-android adlı bir Android uyarlamasına sahiptir. ARM, PowerPC, x86/IA-32, x86-64 ve MIPS mimarisi üzerinde çalışır yani çapraz platformdur.

Tarih 
mpv, 2012'de wm4 olarak da bilinen Vincent Lang tarafından, 2010'da MPlayer'dan çatallanan mplayer2'den çatallandı. Çatalın amacı, sürdürülemez kodu kaldırarak ve çok eski sistemler için desteği keserek geliştirici etkinliğini teşvik etmekti. Sonuç olarak, proje büyük bir katkı akışına sahipti.

Haziran 2015'ten bu yana, projenin kaynak kodu, mpv'nin daha fazla uygulamada bir kütüphane olarak kullanılmasına izin vermek için GNU Genel Kamu Lisansı sürüm 2'den (GPLv2) veya daha sonra GNU Kısıtlı Genel Kamu Lisansı sürüm 2.1'e (LGPLv2.1) veya daha sonrasına yeniden lisanslanma sürecindedir.

MPlayer'dan Değişiklikler 
mpv, MPlayer'dan çatallandığından beri  birkaç önemli değişiklik geçirdi; en kullanıcı tarafından görülebilen, temel fare kontrol edilebilirliği sunmak için mpv ile entegre edilmiş bir ekran denetleyicisi (OSC) minimal GUI'nin eklenmesidir. Bu, yeni kullanıcılar için etkileşimi kolaylaştırmak ve kesin ve doğrudan aramayı sağlamak için tasarlandı.

 Video web siteleri
 youtube-dl kullanarak mpv, YouTube'da ve desteklenen diğer 1000'den fazla sitede yüksek çözünürlüklü video (HD) içeriğinin ve sesin oynatılmasını doğal olarak destekler. Bu, mpv'nin Adobe Flash veya HTML5 tabanlı siteye özel video oynatıcıların yerini almasına olanak tanır.
 Yüksek kaliteli video çıkışı
 mpv, OpenGL  'e dayalı özelleştirilebilir bir video çıkış sürücüsünün yanı sıra gelişmiş yükseltme filtreleri, renk yönetimi ve özelleştirilebilir piksel gölgelendiriciler dahil olmak üzere oynatma kalitesini kontrol etmek için 100'den fazla seçeneği destekleyen Vulkan API'sini  içerir.
 Ses ölçekleme algoritması
 Oynatıcı, sabit aralıkta hız değişimi için bir scaletempo2 parametresi ile donatılmıştır; bunun için, orijinal mplayer'da kullanılan orijinal scaletempo ve lastik banttan daha fazla düzgünlük göstererek Waveform Benzerlik Örtüşme ve Ekleme (WSOLA) algoritmasını kullanır.
 Geliştirilmiş istemci API'si
 Tek başına bir medya oynatıcı olarak çalışmanın ötesinde, mpv, libmpv adlı bir kitaplık arabirimi aracılığıyla doğrudan diğer uygulamalar tarafından kullanılmak üzere tasarlanmıştır. Bu, tüm mpv kod dizisini güvenli hale getirmeyi gerektiriyordu. libmpv kullanan bir uygulamaya örnek Plex'tir. Bir JSON IPC mekanizmasıyla birlikte bu oynatıcı denetimi biçimi, MPlayer'ın "bağımlı modunun" yerini alır.
 Kodlama alt sistemi
 mpv, farklı biçimlerde oynatılan dosyaları kaydetmek için kullanılabilecek yeni bir video kodlama modu içerir. Bu, mpv'nin birçok video formatını destekleyen bir dönüştürücü olarak çalışmasına izin verir. Bu özellik, oynatıcıya entegre edilmek yerine ayrı bir program olan MPlayer'ın MEncoder bileşeninin doğrudan yerine geçer.
 Lua komut dosyası
 mpv'nin davranışı ve işlevleri, video kırpma, grafik kullanıcı arabirimi (GUI) sağlama veya ekranın yenileme hızını otomatik olarak ayarlama gibi görevler için kullanılabilen Lua komut dosyası dilinde yazılmış küçük programlar kullanılarak özelleştirilebilir.

Kaldırılan işlevler 

 VCD diskler için tüm destek

Arayüz ve grafik ön uçlar 
Orijinal MPlayer gibi, mpv de, MPlayer'dan daha gelişmiş bir kullanıcı arayüzüne sahip olmasına rağmen, yalnızca klavyeyi değil, aynı zamanda mpv'ler için ekran denetleyicisi (OSC) için fareyi de kullanabilen bir komut satırı uygulamasıdır. Bununla birlikte, bu OSC hala tam özellikli bir GUI değildir ve mpv'ye daha eksiksiz bir grafik arayüz vermek için Qt, GTK veya diğer bazı widget araç takımı için GUI widget'larını kullanan bir dizi ön uç vardır.

Aşağıdakiler, mpv'den daha fazla özellik ve daha kullanıcı dostu arayüz ve/veya çeşitli işletim sistemleri veya masaüstü ortamları ile daha iyi entegrasyon sağlamaya çalışan mpv'nin ("libmpv" veya mpv'nin komut satırı sürümüne dayalı) tüm açık kaynaklı ön uçlarıdır.

 Baka MPlayer - macOS sürümü kullanıcının kaynaktan derlemesini gerektirir. Windows, Linux ve macOS platformları için medya oynatıcı,  Qt5 widget'ları ile C++ ile yazılmıştır. Ana hedefi düzenli, basit tasarımdır. Gelişimi, Ocak 2017'de, henüz tam olarak bitmemiş olan aynı geliştiriciler Mochi Player tarafından başka bir mpv ön yüzü lehine durdu.
 Deepin Movie - Linux için - Çin Deepin dağıtımı ve masaüstü ortamı için varsayılan video oynatıcı tarafından yazılmıştır.

 Celluloid (eski adıyla GNOME MPV) - Linux için - GTK tabanlı Amacı, mpv için GNOME İnsan Arayüzü Yönergelerini karşılayan basit bir GTK tabanlı grafik arayüzü olmaktır.
 IINA - yerel macOS Kakao arayüzüne sahip macOS 10.10+ medya oynatıcı Bu, macOS'in en son sürümlerinde bulunan yeni özelliklerden yararlanan, mpv için tam özellikli bir yerel macOS grafik arabirimidir. mpv yapılandırma dosyası ve komut dosyası sistemi de entegre edilmiştir.
 Kawaii-Player - Linux ve Windows 10 - Qt5 widget'lı medya oynatıcı ve medya sunucusu . Amacı sadece bir multimedya oynatıcı değil, aynı zamanda bir ses/video kitaplığı yöneticisi ve taşınabilir medya sunucusu ve torrent akış sunucusu/oynatıcısı olmaktır.
 Media Player Classic Qute Theatre (mpc-qt) - C++ ile yazılmış Qt5 widget'lı Linux ve Windows medya oynatıcı. Amacı, Linux gibi Unix benzeri işletim sistemlerinde de çalışan, platformlar arası mpv tabanlı bir multimedya oynatıcı olarak yalnızca Windows programı olan Media Player Classic Ev Sineması'nın (mpc-hc) işlevselliğini yeniden üretmek ve nihai olarak geliştirmektir. .
 mpv.net - Yerel Windows arayüzüne sahip Windows medya oynatıcı. Amacı, özelleştirilebilir bir Windows bağlam menüsü, C# komut dosyası oluşturma ve eklentiler için bir Yönetilen Genişletilebilirlik Çerçevesi (MEF) ile birlikte Windows'ta standart mpv OSC arabirimini sağlamaktır.
 OvoPlayer - Pascal ile yazılmış, LCL widget setlerine dayalı birçok arka ucu destekleyen Linux ve Windows müzik çalar. Amacı, mpv gibi mümkün olduğunca çok sayıda ses motoru arka ucunu destekleyen esnek bir ses çalar olmaktır.
 SMPlayer - MPlayer veya mpv kullanabilen gelişmiş özellikler ve YouTube ve Chromecast desteği ile tam özellikli, platformlar arası ve kaplanabilir. Microsoft Windows, Linux ve macOS için mevcuttur ve Qt4/Qt5 ile C++ ile yazılmıştır.
 Sugoi Player - Windows'ta medya oynatıcı ( Linux ve macOS üzerinde çalışabilir, ancak bunlar denenmemiş), C++ ile yazılmış Qt5 widget'ları ile Baka MPlayer'dan çatallanmıştır. Baka MPlayer'ın geliştirilmesi Ocak 2017'de durduğundan, Baka MPlayer'a dayalı bir mpv ön yüzünü geliştirmeyi ve geliştirmeye devam etmeyi amaçlıyor.
 xt7-player-mpv - Qt5 veya Qt4 pencere öğelerine sahip Linux medya oynatıcısı, Gambas 3'te (BASIC'in bir lehçesi) yazılmıştır. Amacı, kullanılabilirlik ve YouTube ve SHOUTcast entegrasyonu, medya etiketleme, kitaplık ve oynatma listesi yönetimi gibi çeşitli ekstra özelliklerin yanı sıra bunun ötesinde daha fazla özellik eklemektir.

Ayrıca bakınız 

 FFmpeg - mpv için önerilen kod çözme kitaplığı
 Libav - mpv için alternatif kod çözme kitaplığı
 libavcodec - mpv'nin kod çözme için kullandığı API
 Video oynatıcı yazılımının karşılaştırılması

Kaynakça

Dış bağlantılar 

 
 mpv at Open Hub

FFmpeg kullanan yazılımlar
Linux ortam oynatıcıları
Özgür video yazılımları
Özgür ortam oynatıcılar
Ücretsiz çapraz platform yazılımları