Como posso customizar renomear podcasts depois de baixá-los com gPodder?

2

Estou usando o Arch Linux.

Para baixar podcasts, eu uso o gPodder 3.

Para ouvir meus podcasts, estou usando o Rockbox no meu iPod Classic.

O problema é que os podcasts não são bem organizados no meu iPod: tudo será organizado em ordem alfabética. Para superar isso, eu gostaria de alterar o nome do podcast logo após fazer o download para algo como:

YYYYMMDD_Podcast_Name.mp4

Por exemplo:

20130828_Easy_Linux_Remote_Desktop_LAS_s28e03.mp4

Dessa forma, mesmo ao classificar em ordem alfabética, os podcasts estarão na ordem correta.

Como posso fazer isso? Eu sei que existe um plugin chamado rename_downlad.py , que irá converter o nome do podcast para <episode_title>.<ext> , mas isso não é exatamente o que eu quero. Eu tentei modificar essa extensão em /usr/share/gpodder/extensions/rename_download.py :

linha 45:

new_filename = str(datetime.datetime.now().strftime("%Y%b%d_")) + os.path.join(dirname, new_basename)

mas, por algum motivo, isso não funcionou.

Como posso fazer isso? Note que no meu exemplo, a única coisa que é adicionada ao título é a data atual. Seria legal se essa pudesse ser a data de lançamento do episódio, mas eu já estou feliz com a adição da data atual.

    
por Exeleration-G 28.08.2013 / 10:57

1 resposta

1

Se você quiser simplesmente renomear os arquivos para que eles incluam o YYMMDD_Podcast_Name.mp4, você pode fazer isso usando este script Bash:

$ for i in *.mp4; do
    dateString=$(date +"%Y%m%d" --date @$(stat -c %Z "$i"))
    mv "$i" "${dateString}_$i"
done

Exemplo

Digamos que eu tenha os seguintes arquivos.

$ ls | paste - -
file1.mp4   file2.mp4
file3.mp4   file4.mp4
file5.mp4   file6.mp4
file7.mp4   file8.mp4
file9.mp4   

Execute o comando acima como um forro único:

$ for i in *.mp4; do dateString=$(date +"%Y%m%d" \
    --date @$(stat -c %Z "$i")); mv "$i" "${dateString}_$i"; done

Agora os arquivos são nomeados assim:

$ ls | paste - -
20130828_file1.mp4  20130828_file2.mp4
20130828_file3.mp4  20130828_file4.mp4
20130828_file5.mp4  20130828_file6.mp4
20130828_file7.mp4  20130828_file8.mp4
20130828_file9.mp4  

Detalhes

A técnica acima está usando o comando stat para obter o tempo dos arquivos da última alteração em segundos desde a Epoch.

  %Z     Time of last change as seconds since Epoch

Esse número de segundos é então usado pelo comando date para determinar o YYNNDD tempo para esses segundos.

date +"%Y%m%d" --date @...seconds...

NOTA: O sinal @ é importante, informa ao comando date que estamos dando a ele segundos .

Depois de calcularmos o YYMMDD , usamos um comando simples mv para renomear o arquivo.

Uma alternativa - Classificação no Rockbox

Uma alternativa para renomear os arquivos com uma data prefixada é configurar o Rockbox para que ele classifique os arquivos com base em sua data. Você também pode classificar diretórios com base no nome deles.

Essas configurações estão na hierarquia de menus:

Rockbox - > Configurações - > Configurações gerais - > Exibição de arquivos

As2configuraçõesprincipaissão:

  • Classificardiretórios-definidocomo*Alfabético"
  • Classificar arquivos - definido como "Por data"

OBSERVAÇÃO: os "Arquivos de classificação" também podem ser definidos como "Por nova data".

Você pode ver mais sobre as configurações acima no site do Rockbox na página intitulada: 8 Configurações gerais .

    
por 28.08.2013 / 11:46