Как играть в первые n секунд каждого файла из списка воспроизведения

Еще один perl однострочный:

$ perl -lane 'print "$F[0]\t$_" for split(/__/,$F[1])' file 
33  Hhe.1
33  Hhe.2
33  Hhe.3
33  Hhe.4

Это та же основная идея, что и существующие ответы Perl, только короче. [F2] автоматически разбивает каждую строку входного файла на пробелы и делает полученные поля доступными как массив @F. Итак, $F[0] - это первое поле, $F[1] - второе и т. Д. [F6] означает «читать каждый входной файл по строкам и применять сценарий, заданный -e. [F8] удаляет конечные \n символы из каждой строки ввода и добавляет \n к каждому вызову print.

split(/__/,$F[1]) создает массив, разделяя первое поле файла на символы __. Таким образом, print "$F[0]\t$_" for split... будет перебирать массив, возвращенный вызовом split, и печатать первое поле файла [$F[0]), символ табуляции \t и текущее поле массива split.

4
задан 19 January 2018 в 17:56

4 ответа

Приложение командной строки MPlayer является вашим другом для этой простой задачи:

mplayer -endpos 00:00:10 -playlist playlist.pls

Некоторое объяснение:

-endpos 00:00:10 Это позволяет MPlayer останавливаться на заданное время или даже заданное положение байта. В этом примере разрешено воспроизведение в 10 секунд с начала потока. -playlist Должен быть указан для MPlayer для работы с плейлистом. playlist.pls MPlayer распознает ASX, Winamp, SMIL или формат с одним файлом (например, приведенный здесь пример «pls»). Конечно, должен быть указан правильный путь к файлу списка воспроизведения.

Есть много других переключателей, которые MPlayer может использовать для воспроизведения списков воспроизведения, но приведенный выше пример должен быть достаточным для выполнения ваших требований ...

0
ответ дан 17 July 2018 в 22:39

Это прямолинейно. Вы отметили это как VLC, поэтому я буду использовать это в качестве примера.

Сначала вам нужен плейлист, конечно. Вот вики VLC, чтобы объяснить, как создать плейлист. Убедитесь, что вы сохранили его в файле.

Затем из командной строки запустите VLC, как это

vlc --playlist-autostart <path/to/playlist.xspf> --run-time=10

. Это заставит vlc немедленно воспроизвести ваш список, каждый заголовок в течение 10 секунд, затем прекратите работу с VLC слева.

Если вы запускаете свой VLC не из графического интерфейса хоста, на котором воспроизводится музыка, то есть через SSH, вам нужно экспортировать переменную DISPLAY, как это

export DISPLAY=:0; vlc --playlist-autostart <path/to/playlist.xspf> --run-time=10

Если вы хотите, чтобы VLC сразу же закрылся после завершения игры, просто добавьте vlc://quit в конец, например

export DISPLAY=:0; vlc --playlist-autostart <path/to/playlist.xspf> --run-time=10 vlc://quit

Я не знаю точно, case, но если вы хотите, чтобы это было полностью скрыто, без VLC, показанного на Рабочем столе, вы могли бы использовать интерфейс командной строки. Просто замените vlc cvlc в начале, например

export DISPLAY=:0; cvlc --playlist-autostart <path/to/playlist.xspf> --run-time=10 vlc://quit

. Конечно, есть еще несколько вариантов поведения плейлистов, таких как -L для цикла или -Z для случайного воспроизведения / случайного воспроизведения и т. Д. - лучше всего посмотреть их на вики , чтобы объяснить .

0
ответ дан 17 July 2018 в 22:39

Приложение командной строки MPlayer является вашим другом для этой простой задачи:

mplayer -endpos 00:00:10 -playlist playlist.pls

Некоторое объяснение:

-endpos 00:00:10 Это позволяет MPlayer останавливаться на заданное время или даже заданное положение байта. В этом примере разрешено воспроизведение в 10 секунд с начала потока. -playlist Должен быть указан для MPlayer для работы с плейлистом. playlist.pls MPlayer распознает ASX, Winamp, SMIL или формат с одним файлом (например, приведенный здесь пример «pls»). Конечно, должен быть указан правильный путь к файлу списка воспроизведения.

Есть много других переключателей, которые MPlayer может использовать для воспроизведения списков воспроизведения, но приведенный выше пример должен быть достаточным для выполнения ваших требований ...

0
ответ дан 24 July 2018 в 13:16

Это прямолинейно. Вы отметили это как VLC, поэтому я буду использовать это в качестве примера.

Сначала вам нужен плейлист, конечно. Вот вики VLC, чтобы объяснить, как создать плейлист. Убедитесь, что вы сохранили его в файле.

Затем из командной строки запустите VLC, как это

vlc --playlist-autostart <path/to/playlist.xspf> --run-time=10

. Это заставит vlc немедленно воспроизвести ваш список, каждый заголовок в течение 10 секунд, затем прекратите работу с VLC слева.

Если вы запускаете свой VLC не из графического интерфейса хоста, на котором воспроизводится музыка, то есть через SSH, вам нужно экспортировать переменную DISPLAY, как это

export DISPLAY=:0; vlc --playlist-autostart <path/to/playlist.xspf> --run-time=10

Если вы хотите, чтобы VLC сразу же закрылся после завершения игры, просто добавьте vlc://quit в конец, например

export DISPLAY=:0; vlc --playlist-autostart <path/to/playlist.xspf> --run-time=10 vlc://quit

Я не знаю точно, case, но если вы хотите, чтобы это было полностью скрыто, без VLC, показанного на Рабочем столе, вы могли бы использовать интерфейс командной строки. Просто замените vlc cvlc в начале, например

export DISPLAY=:0; cvlc --playlist-autostart <path/to/playlist.xspf> --run-time=10 vlc://quit

. Конечно, есть еще несколько вариантов поведения плейлистов, таких как -L для цикла или -Z для случайного воспроизведения / случайного воспроизведения и т. Д. - лучше всего посмотреть их на вики , чтобы объяснить .

0
ответ дан 24 July 2018 в 13:16

Другие вопросы по тегам:

Похожие вопросы: