Bagaimana saya bisa keluar dari omxplayer dalam layar penuh?


13

Saya ingin memutar file video dengan menggandakan klik dengan menggunakan omxplyaer. Pertama kali, saya mengklik dua kali, meminta saya untuk memilih aplikasi untuk membuka file. Karena saya tidak dapat menemukan omxplayer di tab aplikasi yang diinstal, saya memilih tab Custome Command Line dan masukkan 'omxplyer' di baris perintah untuk mengeksekusi dan lagi 'omxplayer' dalam nama Aplikasi.

Sekarang ketika saya mengklik video, itu mulai diputar di omxplayer tetapi tombol pintas tidak lagi berfungsi. Misalnya, saya tidak bisa berhenti video dengan menekan 'q' pada keyboard dan tidak ada tombol pintas yang berfungsi. Ini dulu berfungsi ketika saya memutar file video dari lxterminal dengan mengetikkan 'omxplayer video.mp4'. Tapi ini bukan lagi masalahnya.

Jika video mulai diputar di layar penuh dan karena saya tidak lagi dapat keluar dari omxplayer, saya harus menonton video untuk mengakhiri sehingga pemain akan berhenti. Jadi pertanyaan saya adalah ...

  1. Bagaimana cara mengaktifkan hotkey lagi ketika saya memutar file video dengan opsi 'terbuka dengan dan kemudian omxplayer'?

  2. Bagaimana cara saya menghapus baris perintah sebelumnya untuk mengeksekusi tempat saya memasukkan omxplayer sehingga ketika saya mengklik file video, itu akan meminta saya lagi untuk memilih aplikasi?


Anda dapat mengubah program untuk membuka file dengan mengklik kanan pada file, "Buka dengan .." dan kemudian memilih program. Pastikan untuk mencentang kotak di bagian bawah "Tetapkan aplikasi yang dipilih sebagai tindakan default untuk jenis file ini" jika Anda menginginkan ini, atau jangan jika itu hanya untuk sekali pakai.
Lonefish

Pilih opsi "Execute in terminal". Pintasan tidak berfungsi tanpa terminal.
Wally

Jawaban:


6

Dari terminal:

pid=$(pidof omxplayer)
kill $pid

Jika masih tidak berhenti kill -9 $pid,.

Anda juga dapat menggunakan killall omxplayerdan killall -s 9 omxplayer, yang seharusnya menghentikan semua instance yang berjalan (jika ada lebih dari satu).


Ngomong-ngomong, saya mendapatkan kesalahan berikut ketika saya memasukkannya ke terminal setelah video selesai diputar. "kill: use: kill [-s sigspec | -n signum | -sigspec] pid | jobspec ... atau kill -l [sigspec]"
Zip

2
Pastikan ada sesuatu benar-benar di $pid(Anda tidak dapat membunuh sesuatu yang tidak ada) dan bahwa itu adalah hanya nomor: echo $pid. Jika ada lebih dari sekedar angka, Anda pssalah; itu harus tepat ps -o pid= -C omxplayer. Saya telah mengedit versi skrip ke akun ini.
goldilocks

Maaf noob di sini. Saya tidak tahu bagaimana jawaban Anda terkait dengan pertanyaan saya. Apakah skrip seharusnya membunuh instance omxplayer yang sedang berjalan? Pemain tidak berhenti setelah video selesai diputar. Saya hanya ingin keluar dari pemutar saat sedang memutar video, seperti klik tombol 'x' di windows alih-alih menunggu pemutaran selesai seluruh video.
Zip

1
Jika Anda tidak dapat keluar dari omxplayer melalui antarmuka normal, maka Anda harus menunggu sampai selesai atau Anda membunuhnya secara eksternal. Script hanyalah penjabaran dari konsep itu. Ide dasarnya adalah Anda membuka terminal lain saat omxplayer berjalan dan membunuhnya. Jika Anda tidak dapat melakukan itu (karena omxplayer meraih framebuffer - Saya belum pernah mencobanya dari dalam X), beralihlah ke VT yang berbeda (terminal virtual - setidaknya ada 6) via ctrl-alt F[1-6](coba saja tombol F) dalam urutan sampai Anda mendapatkan prompt login).
goldilocks

BTW: Seluruh masalah hotkey normal yang tidak berfungsi mungkin karena LXDE mengambilnya, Anda harus dapat mengkonfigurasi LXDE / terminal LXDE untuk tidak menggunakan hotkey yang tumpang tindih.
goldilocks

2

Saya hanya menggunakan Alt + F4 untuk mengakhiri video.


1

Sementara jawaban lain memberikan beberapa shell ajaib inventif untuk membunuh proses menjalankan perintah tertentu, sebenarnya ada dua perintah untuk melakukan hal ini, dan mereka dipanggil pkilldan killall. Dari halaman manual:

pgrep,  pkill  -  look  up  or signal processes based on name and other
                  attributes

killall - kill processes by name

Begitu

pkill omxplayer
killall omxplayer

keduanya harus melakukan trik.

Sekarang, orang dapat bertanya-tanya mengapa ada dua perintah untuk melakukan hal yang sama. Alasannya terutama historis, berasal dari masa ketika perbedaan kebijakan berbeda sedikit lebih banyak dari yang biasanya mereka lakukan hari ini.

Ada juga perbedaan dalam opsi apa yang mereka terima. Untuk diskusi lebih lama tentang perbedaan pkilldan killall, silakan lihat /unix/91527/whats-the-difference-between-pkill-and-killall


1

Jika Anda menggunakan opsi "Buka dengan" dari GUI Anda harus memilih opsi "Jalankan di terminal emulator".

lxterminal -e omxplayer %F juga berfungsi jika Anda menggunakan lxde,

Sepertinya tombol 'q' dan cara pintas lainnya tidak berfungsi jika terminal tidak terbuka. Saya harus mematikan Pi berkali-kali sampai saya menemukan jawabannya.


-1

Gunakan perintah ini di terminal untuk membunuh omxplayer:

ps -ef | grep omxplayer | grep -v grep | awk '{print $2}' | xargs kill -9

Perlu dicatat bahwa jika path ke omxplayerberada di lokasi yang berbeda, /usr/local/binmaka perintah ini tidak akan berfungsi. Metode yang lebih pasti adalahps -ef | grep omxplayer | grep -v grep | awk '{print $2}' | xargs kill -9
Greenonline

kamu benar. Saya baru saja menyalin dari terminal saya dan menempel. Terima kasih.
Rubayet

1
Itu implementasi yang rapi dari pkill;)
Bex

-2

hei coba jalankan omxplayer di gui dengan menautkannya dengan tbo player berfungsi dengan baik


2
Selamat datang di Raspberry Pi! Silakan ikuti tur dan kunjungi pusat bantuan untuk melihat bagaimana berbagai hal bekerja di sini. Bagaimana ini menjawab pertanyaan? Harap lebih menjelaskan untuk membuat jawaban yang bermanfaat.
Ghanima
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.