Bagaimana saya menulis pintasan untuk menghitung panjang daftar putar

Akhir pekan ini saya membuat pintasan yang mengambil daftar lagu, menambahkan total durasi, dan menampilkannya di notifikasi.

Bagian pertama mudah. Aplikasi Pintasan memiliki tindakan hebat yang dapat memberi tahu Anda apa pun tentang file iTunes Media (atau file media lainnya), termasuk durasinya. Saya membuat jalan pintas untuk menelusuri daftar trek musik, menambahkan durasi di sepanjang jalan. Butuh waktu lima menit, puncak.

Kemudian hal-hal mulai salah. Pintasan mengembalikan total durasi dalam hitungan detik. Saya tidak tahu tentang Anda, tetapi bagi saya, angka seperti 4,166.867 bukankah itu berguna. Saya lebih suka sesuatu seperti 01:09:26, atau 1 jam 9 menit 36 ​​detik. Masalahnya adalah, saya tidak bisa berpindah dari satu ke yang lain.

Dapat dibaca manusia

Bagi manusia, mengonversi dari detik ke jam, menit, dan detik sangatlah mudah (setidaknya untuk angka yang lebih kecil). Tapi bagaimana Anda memberitahu komputer untuk melakukannya? Anda dapat memintanya untuk membagi dengan 60 untuk memberikan menit, tetapi karena menit bukan desimal, sekitar 4:30 menjadi 4,5 menit. Tidak apa-apa, saya kira, tapi tidak elegan.

Saya mencoba segala macam trik gila sebelum beralih ke internet untuk meminta bantuan. Bantuan khusus pintasan sulit ditemukan, karena istilah "pintasan" terlalu umum untuk mempersempit pencarian Google.

Namun, pada akhirnya, saya menemukan cara yang tampaknya agak elegan, namun juga agak rumit, untuk melakukannya.

Pintasan untuk menghitung total waktu putar daftar lagu

Ini adalah jalan pintas. Dibutuhkan berapa pun jumlah lagu yang dipilih, menjumlahkan durasinya, dan mengembalikan hasilnya dalam format jj: mm: dd.

Mengapa? Karena saya membuat kaset (ya, kaset lama) dari musik saya sendiri, dan terkadang dari musik orang lain. Musik ini selalu dimulai dalam folder yang penuh dengan file WAV. Saya membutuhkan cara cepat untuk mengetahui apakah daftar putar akan muat di satu sisi kaset selama 45 menit.

Jalan pintas yang cukup panjang untuk digunakan sebagai syal musim dingin.
Jalan pintas yang cukup panjang untuk digunakan sebagai syal musim dingin.
Tangkapan layar: Kultus Mac

Seperti yang Anda lihat, pintasan dimulai dengan baik. Bagian pertama — semuanya sampai Akhiri Ulang — langsung. Bagian itulah yang melakukan pekerjaan pintasan yang sebenarnya: menjumlahkan durasinya.

Sisanya ada untuk mengubah detik menjadi teks yang dapat dibaca manusia.

Bagaimana mengubah detik menjadi sesuatu yang bermanfaat

Anda dapat melihat tangkapan layar pintasan untuk melihat cara kerjanya (dan unduh pintasannya untuk menggunakannya). Intinya adalah bahwa pintasan mengambil total waktu berjalan dalam hitungan detik, lalu menambahkan detik-detik itu ke waktu yang sewenang-wenang. Saya mengatur waktu ke 00:00:00. Kenapa melakukan ini? Karena memberikan hasil yang dalam format tanggal yang tepat. Ini juga menangani penambahan detik (dan tidak bingung).

Kemudian, saya memberi tahu cara pintas untuk memformat hasilnya sebagai HH, mm, ss (untuk jam, menit, dan detik). Jika saya tidak melakukan ini, hasilnya akan muncul sebagai tanggal dan waktu yang sebenarnya. Jika total durasi pemutaran adalah 33 menit dan 4 detik, misalnya, itu akan muncul sebagai 12:33AM.

Kemudian saya menggunakan ekspresi reguler untuk mengganti tanggal dengan teks yang diformat dengan baik, yang — menggunakan contoh sebelumnya — akan terlihat seperti ini: 00:33:04. Saya tidak tahu banyak tentang ekspresi reguler, tetapi itu tidak masalah, karena banyak orang tahu, dan mereka membicarakannya di internet. Untuk pintasan saya, saya mengadaptasi regex ini dari posting di Reddit oleh Mvpetri. Terima kasih banyak untuk itu. Ini benar-benar menyederhanakan seluruh alur kerja.

Pintasan saya kemudian menunjukkan pemberitahuan.

Apakah itu bekerja?

Kesuksesan!
Kesuksesan!
Tangkapan layar: Kultus Mac

Ya! Ia bekerja seperti pesona. Tangkapan layar menunjukkan versi uji, yang memungkinkan saya memilih trek musik dari iCloud Drive tepat di dalam aplikasi Pintasan. Tapi versi terakhir, yang bisa di download disini, hilangkan langkah ini. Ini dirancang untuk digunakan dari menu berbagi di dalam aplikasi File (atau aplikasi Dropbox atau di mana pun). Dan karena hanya menerima file media, Anda dapat meletakkan seluruh folder file di dalamnya, dan itu hanya akan memproses file musik. Ini juga harus berfungsi untuk video, tetapi saya belum mengujinya.

Pada akhirnya, artikel ini tidak begitu banyak tentang jalan pintas niche seperti yang saya buat. Ini lebih tentang betapa kuatnya Pintasan — dan juga tentang betapa frustasinya saat Anda menyimpang dari tindakan bawaan aplikasi.

Tetap saja, ini adalah jalan pintas yang sangat berguna bagi saya. Dan jika Anda mencari cara untuk mengonversi detik ke format yang dapat dibaca manusia, Anda cukup menyalin dan menempelkan bagian yang relevan.

Postingan Blog Terbaru

Cara mendisinfeksi Mac, iPhone, mouse, trackpad, keyboard, dan casing
October 21, 2021

Apple memiliki halaman dukungan yang panjang dari tautan dan tip, yang didedikasikan untuk menjaga perangkat Anda tetap bersih dan berkilau. Tapi b...

| Kultus Mac
October 21, 2021

Cara mentransfer Foto iCloud ke Foto GoogleMenyalin gambar dan video dari Foto iCloud ke Foto Google ternyata sangat mudah.Gambar: Kultus MacApple ...

| Kultus Mac
October 21, 2021

iWork dan iMovie untuk iOS mendapatkan dukungan trackpad, berbagi file iCloudUnduh versi terbaru hari ini.foto: apelApple Selasa malam meluncurkan ...