Punya file media di komputer Anda? Anda mungkin dapat memperoleh kembali ruang disk yang signifikan dengan menyimpan data tersebut dalam format file yang lebih hemat ruang.
Artikel ini menunjukkan cara menggunakan perintah baris Linux untuk melakukan konversi hemat-ruang yang paling umum. Saya menggunakan perintah baris karena memberi Anda kendali penuh atas kompresi dan fitur konversi format. Selain itu, Anda harus menggunakan perintah baris jika ingin menulis skrip. Itu memungkinkan Anda mengembangkan program yang disesuaikan dengan kebutuhan unik Anda sendiri.
Meskipun artikel ini membahas perintah terminal, ada banyak cara lain untuk mengompresi dan mengonversi file. Anda dapat menginstal aplikasi GUI konversi open source ke komputer Anda, atau Anda bahkan dapat mengonversi format file menggunakan save as
dan export
fungsi dari banyak aplikasi umum.
Artikel ini hanya membahas beberapa format file dan perintah terminal paling populer di antara ratusan yang ada. Tujuannya adalah untuk memberi Anda manfaat maksimal sekaligus membuatnya tetap sederhana.
Penghapusan file
Sebelum Anda memulai konversi format file, ada baiknya mengidentifikasi dan kemudian menghapus file besar tetapi tidak diinginkan yang Anda miliki di komputer. Menghapus hanya segelintir babi ruang angkasa menghasilkan manfaat yang sangat besar.
du
, ncdu
, dan dust
perintah daftar subdirektori terbesar di bawah direktori saat ini. Mereka memberi tahu Anda direktori mana yang menggunakan ruang disk paling banyak:
$ du -a . | sort -n -r | head -n 50
String perintah ini mengidentifikasi 50 file terbesar di pohon direktori rekursifnya. Ini mencantumkan file terbesar yang diurutkan berdasarkan ukuran:
$ find -type f -exec du -Sh {} + | sort -rh | head -n 50
Dengan perintah ini, Anda dapat langsung mengenali ketika Anda memiliki file besar yang disimpan di lebih dari satu lokasi. Hapus duplikat, dan Anda dapat memperoleh kembali beberapa ruang yang signifikan. Outputnya juga membantu Anda mengidentifikasi dan kemudian menghapus file besar yang tidak lagi Anda perlukan.
Lebih banyak sumber daya Linux
- Lembar contekan perintah Linux
- Lembar contekan perintah Linux tingkat lanjut
- Kursus online gratis:Ikhtisar Teknis RHEL
- Lembar contekan jaringan Linux
- Lembar contekan SELinux
- Lembar contekan perintah umum Linux
- Apa itu container Linux?
- Artikel Linux terbaru kami
Kualitas atau ruang penyimpanan
File media yang menyimpan gambar, audio, dan video dapat menggunakan ratusan format file yang berbeda. Seringkali ada trade-off antara kualitas data di satu sisi dan ruang penyimpanan yang digunakan di sisi lain.
Beberapa format file lossless :Mereka menyimpan semua data yang awalnya diambil. Format file lossless dapat tidak terkompresi atau dikompresi . Ukurannya bervariasi karena faktor ini dan faktor lainnya.
Format file lainnya adalah lossy . Mereka menghemat ruang penyimpanan dengan secara cerdik menghilangkan beberapa data yang paling tidak berguna. Mereka ideal jika penggunaan data Anda sedemikian rupa sehingga Anda dapat mentolerir beberapa kehilangan data kecil.
Misalnya, menangkap gambar digital dalam format lossless seperti RAW, PNG, atau BMP membuat file besar. Mengonversi gambar itu ke alternatif lossy seperti JPG atau WEBP menghemat banyak ruang. Apakah itu layak? Itu tergantung pada tujuan penggunaan gambar Anda.
Jika Anda seorang fotografer profesional yang mencetak foto dalam buku berkualitas tinggi, Anda mungkin ingin menyimpan file lossless asli Anda. Anda mungkin membutuhkan gambar dengan kualitas terbaik untuk karya seni Anda. File lossless Anda juga berarti Anda dapat melakukan pengeditan gambar yang ekstensif tanpa kehilangan kualitas.
Jika Anda seorang pengembang situs web, Anda mungkin membuat pilihan sebaliknya. File JPG atau WEBP lossy yang lebih kecil diunduh ke komputer pengguna jauh lebih cepat daripada gambar lossless, membuat halaman web Anda dimuat lebih cepat. Konversi ini berhasil karena hanya sedikit pengguna yang dapat mengetahui apakah gambar yang mereka lihat di layar komputer atau ponsel mereka lossless atau lossy.
Ingatlah bahwa setelah Anda mengonversi dari format lossless ke format lossy, Anda telah menghapus beberapa data. Anda tidak dapat mengonversi kembali untuk mendapatkan kembali data tersebut. Anda dapat mengonversi kembali ke format sebelumnya, tetapi Anda melakukannya tanpa data yang telah Anda korbankan. Hapus hanya file asli setelah Anda yakin bahwa file yang dikonversi memenuhi semua kebutuhan Anda! Anda dapat memilih untuk tidak menghapus file asli sama sekali.
Terkadang, menghemat ruang adalah soal menghemat nyaman ruang angkasa. Jika file asli, lossless, dan tidak terkompresi penting bagi Anda karena alasan apa pun, cadangkan file tersebut ke lokasi penyimpanan terpisah. Anda mungkin tidak memerlukan file WAV berkualitas penuh itu di komputer kerja Anda setiap hari, tetapi Anda mungkin senang memiliki akses ke sana nanti.
Mengonversi file gambar
Beberapa format file bit-mapped populer menghadirkan peluang besar untuk menghemat ruang, termasuk RAW, BMP, GIF, dan TIFF. Format PNG yang banyak digunakan juga merupakan kandidat yang baik.
Salah satu kemungkinan target konversi untuk gambar adalah format JPG lossy. Dengan pengaturan kualitasnya, JPG memungkinkan Anda menentukan ukuran file yang lebih kecil dengan kehilangan data yang lebih besar atau ukuran file yang lebih besar dengan kehilangan yang lebih sedikit. Ini mungkin memberi Anda rasio kompresi hingga 10:1 pada beberapa format lossless. Namun jika Anda menampilkan gambar JPG di layar komputer atau ponsel, mata jarang dapat mengetahui bahwa konversi dan kompresi telah terjadi.
File WEBP terlihat sama bagusnya dengan file JPG di layar, tetapi mereka menghemat lebih banyak ruang. Penghematan inilah yang menyebabkan WEBP menjadi format gambar lossy paling populer, didukung oleh semua browser modern dan aplikasi paling mutakhir. Format WEBP menawarkan transparansi alfa, animasi, dan pancaran warna yang bagus. Ini hampir selalu digunakan sebagai format lossy, meskipun mendukung lossless juga.
Saya mengonversi sebagian besar file PNG dan JPG ke format WEBP dan mendapatkan kembali banyak ruang penyimpanan. Pada satu disk, 500 megabyte file PNG dilebur menjadi sekitar 120 MB WEBP. Jika Anda yakin bahwa gambar Anda hanya akan ditampilkan di layar, mengonversi ke WEBP menawarkan manfaat yang jelas.
Utilitas ImageMagick open source memberi Anda perintah terminal Linux untuk mengonversi gambar. Anda mungkin perlu menginstalnya terlebih dahulu:
$ sudo apt install imagemagick
Perintah baris ImageMagick membantu Anda mengurangi ukuran file gambar melalui tiga teknik:
- Mengubah format file
- Mengubah tingkat kompresi
- Memperkecil gambar
Berikut sintaks dari ImageMagick convert
perintah yang melakukan konversi format file:
convert [input options] input_file [output options] output_file
Semua contoh ini mengurangi ukuran file, seperti yang Anda lihat dari hasil sampel yang dijalankan:
$ convert image.bmp new_image.jpg # 7.4MB down to 1.1MB
$ convert image.tiff new_image.jpg # 7.4MB down to 1.1MB
$ convert image.png new_image.webp # 4.8MB down to 515KB
$ convert image.png new_mage.webp # 1.5MB down to 560KB
$ convert image.jpg new_image.webp # 769KB down to 512KB
$ convert image.gif new_image.jpg # 13.2MB down to 10.9MB
$ convert image.gif new_image.webp # 13.2MB down to 4.1MB
Anda juga dapat mengonversi gambar RAW. Saat mengonversi gambar RAW, nama filenya tidak boleh memiliki ekstensi untuk convert
perintah untuk memprosesnya dengan benar.
$ convert image new_image.png # RAW 67.1MB down to 45.3MB
Ada beberapa penghematan ruang yang signifikan yang dapat diperoleh, tetapi hanya jika output dapat diterima untuk kasus penggunaan Anda.
Contoh ini menghemat ruang dengan mengubah ukuran gambar JPG sedekat mungkin dengan 800x600 sambil tetap mempertahankan rasio aspek yang tepat. Dalam contoh ini, saya mengonversi file input 285KB pada 1277x824 piksel menjadi file output 51KB pada 800x600 piksel.
$ convert image.jpg -resize 800x600 new_image.jpg
convert
perintah dapat mengubah gambar sesuka Anda. Misalnya, Anda dapat menentukan trade-off antara kualitas gambar dan ukuran. Tapi Anda harus mengarungi banyak pilihan untuk memahami kemampuan penuhnya. Untuk lebih lanjut tentang ImageMagick, baca Greg Pittman's Getting begin with ImageMagick, atau kunjungi situs web ImageMagick.
Mengonversi file audio
Seperti file gambar, file audio masuk tidak terkompresi lossless , kompresi tanpa rugi , dan merugi format.
Seperti halnya gambar, trade-off antara lossless dan lossy terutama adalah kualitas data versus penghematan ruang. Jika Anda membutuhkan audio dengan kualitas terbaik, gunakan file lossless. Itu mungkin terjadi jika Anda mengedit musik digital, misalnya. Jika Anda ingin mendengarkan musik yang menghabiskan jauh lebih sedikit ruang, sebagian besar dunia telah memutuskan bahwa format lossy seperti MP3, M4A, dan OPUS adalah pilihan terbaik.
Berikut adalah format audio paling populer. Perhatikan bahwa ekstensi file sering merujuk ke wadah yang dapat mendukung lebih dari satu format penyandian audio dan bahwa sebagian besar teknologi mengklaim lebih dari satu ekstensi file. Bagan ini mencantumkan skenario paling umum yang akan Anda lihat:
- Lossless dan tidak terkompresi
- WAV
- PCM
- AIFF
- Lossless dan terkompresi
- FLAC
- ALAC
- Merugi
- WEBM
- OPUS
- OGG (Vorbis)
- AAC (beberapa implementasi ini bukan format terbuka)
- MP3
- M4A
- WMA (bukan format terbuka)
Jika tujuan Anda adalah untuk menghemat ruang disk, cobalah mengonversi dari format lossless ke format lossy. Jangan mengonversi dari satu format lossy ke format lain kecuali Anda harus melakukannya. Itu kemungkinan akan menurunkan kualitas suara terlalu banyak.
Perintah terminal Linux yang sangat fleksibel untuk mengonversi file audio adalah ffmpeg
. Untuk menginstalnya:
$ sudo apt install ffmpeg
Seperti convert
ImageMagick perintah, ffmpeg
mendukung berbagai format file dan codec yang mengejutkan. Lihat semuanya dengan memasukkan:
$ ffmpeg -encoders
Menggunakan ffmpeg
biasanya cukup mudah. Berikut sintaks standar. -i
flag mengidentifikasi file input, dan -vn
flag memberitahu ffmpeg
untuk tidak meminta kode terkait video apa pun yang dapat mengubah output audio:
$ ffmpeg -i audiofile_input.ext -vn audiofile_output.new
Semua contoh ini mengonversi file WAV lossless menjadi format lossy untuk menghemat ruang. Proses untuk mengonversi file AIFF sama (tetapi ganti .wav
dengan .aiff
):
$ ffmpeg -i audio.wav -vn audio.ogg # 38.3MB to 3.3MB
$ ffmpeg -i audio.wav -vn audio.mp3 # 38.3MB to 3.5MB
$ ffmpeg -i audio.wav -vn audio.m4a # 38.3MB to 3.6MB
$ ffmpeg -i audio.wav -vn audio.webm # 38.3MB to 2.9MB
Semua perintah mengurangi ukuran file input lossless dengan faktor 10. Pertanyaan besarnya:Apakah output terdengar berbeda dari aslinya? Yah, itu tergantung. Bagi kebanyakan orang yang mendengarkan di sebagian besar perangkat konsumen, perbedaannya dapat diabaikan. Itulah mengapa MP3, M4A, dan format terkompresi lainnya adalah format musik paling populer di dunia. Meskipun secara teknis bukan yang terbaik, audionya cukup enak didengar, dan menghabiskan sebagian kecil ruang penyimpanan (atau bandwidth, saat streaming).
Mengonversi file video
Konversi video menghadirkan kesempatan lain untuk menghemat banyak ruang. Sasaran Anda adalah menemukan format video yang paling menyeimbangkan kualitas pemutaran dan ukuran file untuk memenuhi kebutuhan Anda.
Sebuah format video adalah kombinasi dari format file kontainer dan codec . Codec adalah perangkat lunak yang mengkodekan dan mendekode aliran data saat bergerak ke dan dari file penampung.
Wadah dapat dipasangkan dengan beberapa codec. Dalam praktiknya, seringkali hanya ada satu atau dua atau tiga codec populer yang dipasangkan dengan wadah tertentu. Misalnya, dengan file audio, file WAV dapat dikodekan sebagai lossless atau lossy, tetapi encoding lossless mendominasi format sehingga kebanyakan orang menganggap bahwa file WAV apa pun adalah lossless.
Berikut adalah beberapa format video open source yang paling banyak digunakan saat ini:
- Format MP4, berisi video H.264 dan audio AAC, digunakan dalam BluRay dan streaming Internet.
- Format WEBM, yang berisi video VP9 dan audio Opus, sangat fleksibel dan digunakan untuk file berkualitas arsip serta file yang lebih kecil untuk streaming.
- Format wadah Matroska (MKV) dapat berisi hampir semua kombinasi gambar video, audio, dan bahkan stereoskopik (3D). Ini adalah dasar untuk WEBM.
Faktor utama yang menentukan ukuran dan kualitas file video adalah:
- Resolusi (dimensi bingkai)
- Bitrate
- Pengkodean
ffmpeg
perintah dapat mengubah ketiga parameter. Berikut ini contoh konversi sederhana:
$ ffmpeg -i input_video.mov output.webm
Konversi ini menghasilkan file keluaran 1,8 MB dari masukan 39 MB.
Karena saya tidak menentukan parameter apa pun, ffmpeg
menyalin sebagian besar atribut yang ada dari file input. Dalam contoh ini, file input saya adalah file MOV yang berisi video MJPEG dengan resolusi 1280x720, frame rate 23,98, dan bitrate 40.219 kilobyte per second (kbps). File output yang dihasilkan berisi video VP9 dengan resolusi dan frame rate yang sama. Namun, bitrate-nya hanya 1.893 kbps.
Seperti halnya konversi audio, rasio kompresi video sangat mengesankan, dan potensi penghematan ruang sangat besar. Di PC saya, konversi ini terlihat sangat mirip dengan aslinya sehingga sulit untuk mengetahui apakah ada degradasi—yang, untuk tujuan saya, sama saja dengan mengatakan bahwa tidak ada degradasi.
Apakah kualitas output dapat diterima oleh Anda bergantung pada tujuan penggunaan video, perangkat tontonan, dan harapan Anda. Jangan pernah menghapus file asli Anda sampai Anda meninjau file yang dikonversi dan merasa puas.
Penyimpanan arsip
Pengarsipan membutuhkan beberapa file input—seringkali dari jenis file yang berbeda—dan mengumpulkannya ke dalam satu file output. Kompresi adalah opsional. Arsip terkompresi berguna untuk mengirim file melalui internet dan untuk penyimpanan data jangka panjang. Ini cara yang bagus untuk menghemat ruang. Kelemahannya adalah Anda terbatas dalam cara memproses file yang diarsipkan sampai Anda mengekstraknya dari arsip (meskipun beberapa alat sekarang cukup canggih dalam memanipulasi file di dalam arsip).
Di antara banyak format file arsip, format terkompresi yang paling populer termasuk GZ, BZ2, XZ, ZIP, dan 7Z. tar
perintah menangani banyak format arsip. Mendukung perintah kompresi termasuk gzip
, bzip2
, xz
, dan lainnya.
$ tar --xz --create --file myarchive.tar.xz bigfile.xcf bigfile.tiff
Perintah ini mengurangi 56 MB menjadi arsip terkompresi 28 MB. Berapa banyak kompresi yang terjadi sangat bervariasi menurut file yang terlibat. Beberapa file media (terutama yang sudah dalam format terkompresi) sedikit terkompresi atau tidak sama sekali.
Untuk membatalkan pengarsipan file TAR, gunakan --extract
pilihan:
$ tar --extract --file myarchive.tar.xz
tar
perintah menggabungkan banyak file ke dalam satu wadah (terkadang disebut tarball ). Namun, jika Anda hanya mengompresi satu file, wadah tidak diperlukan.
Sebagai gantinya, Anda cukup mengompres file dengan perintah seperti gzip
, bzip2
, xz
, zip
, 7z
, dan lainnya.
$ xz bigfile.xcf
$ ls
bigfile.xcf.xz
Untuk membuka kompresi file terkompresi, Anda biasanya dapat menggunakan versi "un" dari perintah yang Anda gunakan untuk mengompresi file:
$ unxz bigfile.xcf.xz
Terkadang ada juga --decompress
pilihan:
$ xz --decompress bigfile.xcf.xz
Tidak semua distribusi Linux menyertakan semua perintah ini, jadi Anda mungkin harus menginstal beberapa di antaranya.
Kiat pembuatan skrip
Untuk mengonversi semua file dalam direktori, cukup sematkan perintah konversi Anda di dalam for
lingkaran. Tempatkan tanda kutip ganda di sekitar variabel nama file untuk menangani nama file apa pun yang berisi spasi yang disematkan. Skrip ini mengonversi semua file PNG dalam direktori ke file WEBP:
#!/bin/bash
for file_name in *.png ; do
convert "$file_name" "$file_name".webp
done
Untuk memproses semua file dalam direktori dan semua subdirektorinya, Anda perlu menelusuri struktur direktori secara rekursif. Gunakan pushd
dan popd
stack perintah atau perintah find untuk ini.
Kesimpulan
Digunakan dengan hati-hati, perintah Linux yang mengompresi dan memformat ulang file media dapat menghemat gigabyte penyimpanan Anda. Saya yakin Anda memiliki beberapa kiat hebat, jadi silakan tambahkan di komentar.