Como gravar parte de um áudio transmitido por HLS e enviá-lo ao YouTube como um podcast de áudio

0

Vou postar um guia de como fazer como resposta a esta pergunta. Ele demonstrará como realizar a tarefa acima, enquanto atende a cinco requisitos que inicialmente pareciam difíceis de alcançar:

  1. Eu precisava fazer isso com um conjunto mínimo de ferramentas de software, de preferência gratuito e ainda melhor se fosse de código aberto. Os que eu usei estão listados abaixo.

  2. Eu queria converter o arquivo de áudio de m4a para mp3.

  3. Eu queria editar o áudio para apará-lo nas duas extremidades e, possivelmente, também remover alguns bits no meio.

  4. É possível criar um arquivo de vídeo (por exemplo, mp4) apenas com uma trilha de áudio e sem trilha de vídeo, mas o YouTube não aceita esse arquivo. No mínimo, o YouTube requer pelo menos uma imagem fixa para acompanhar a faixa de áudio.

  5. Salvar o fluxo de áudio em um arquivo é bastante fácil, mas o arquivo precisaria passar por um processamento subseqüente nas etapas 2 a 4, e apenas o carregamento de um arquivo de áudio de 2,5 horas em um editor pode consumir bastante tempo, o que seria ideal. é preferível baixar o segmento de meia hora no meio que eu queria. Esse segmento começa no horário ~ 1: 34: 00.

Moongazer
fonte

Respostas:

0

Como gravar parte de um áudio transmitido por HLS e enviá-lo ao YouTube como um podcast de áudio

Essas informações "como fazer" são um guia de como consegui atender cinco requisitos relacionados a essa tarefa, que inicialmente pareciam difíceis de alcançar. Eles estão listados abaixo:

O podcast que eu queria criar é de um segmento de meia hora no meio de um programa de rádio de 2,5 horas, que, por apenas um período limitado (1 semana) após a data da transmissão, pode ser transmitido no site da estação de rádio. É um fluxo HLS. Meus requisitos específicos para esta tarefa foram:

1) Eu precisava fazer isso com um conjunto mínimo de ferramentas de software, de preferência gratuito e ainda melhor se fosse de código aberto. Os que eu usei estão listados abaixo.

2) Eu queria converter o arquivo de áudio de m4a para mp3.

3) Eu queria editar o áudio para apará-lo nas duas extremidades e, possivelmente, também remover alguns bits no meio.

4) É possível criar um arquivo de vídeo (por exemplo, mp4) apenas com uma trilha de áudio e sem trilha de vídeo, mas o YouTube não aceita esse arquivo. No mínimo, o YouTube requer pelo menos uma imagem fixa para acompanhar a faixa de áudio.

5) Salvar o fluxo de áudio em um arquivo é bastante fácil, mas o arquivo precisaria passar por um processamento subsequente nas etapas 2 a 4, e apenas o carregamento de um arquivo de áudio de 2,5 horas em um editor pode consumir bastante tempo, de maneira ideal, seria preferível fazer o download do segmento de meia hora no meio que eu queria. Esse segmento começa no horário ~ 1: 34: 00.

O software que usei está listado abaixo. (Existem quatro itens.) Nota: Embora alguns desses softwares sejam multiplataforma, eu fiz isso tudo no Windows 7 e no navegador 53.0.2 do Firefox.) Não posso garantir resultados em outras plataformas e algumas das instruções abaixo pode precisar de pequenas modificações para outros navegadores.

  • VDH (extensão do Firefox: Video DownloadHelper 6.3.1.) (Também disponível para o navegador Chrome.)

  • VLC Media Player 2.2.4

  • Audacity 2.1.2

  • FFmpeg

Verifique a pasta na qual o FFmpeg está instalado. Se ele não contiver um arquivo chamado ff-prompt.bat, crie um (é um arquivo de texto) seguindo as instruções fornecidas pelo Maxime aqui:

https://disqus.com/home/discussion/mrfdev/ffmpeg_command_generator/newest/#comment-3264465301

Neste tutorial, usarei o exemplo do site e do fluxo de áudio em que trabalhei. YMMV se você estiver tentando isso com uma fonte de áudio diferente.

O programa de rádio é: ABC Radio Melbourne: "Manhãs com Jon Faine" Há uma lista de episódios anteriores desse programa aqui:

http://www.abc.net.au/radio/melbourne/programs/mornings/episodes/%20(http://www.abc.net.au/radio/melbourne/programs/mornings/episodes/)

Aqueles com mais de uma semana de idade são irrecuperáveis. (O streaming pode estar bloqueado geograficamente em alguns países.)

PROCEDIMENTO: (Isso está dividido em três partes: Download, Edição e Criação de um vídeo)

(1) Faça o download do áudio:

Na página dos episódios anteriores, localize o programa relevante e clique no link para acessar a página do programa, onde você verá um jogador, com um ícone de reprodução chamado "Ouvir".

O que você precisa agora é da lista de reprodução de streaming para este conteúdo de áudio. Existem dois métodos para obter isso: A maneira mais fácil (método a abaixo) é usar a extensão do navegador VDH. Se você não o possui, use o método b abaixo.

Método (a) (use isso se você tiver a extensão do navegador VDH mencionada acima):

  • Clique no ícone de reprodução para iniciar o fluxo,

Aguarde o áudio começar a tocar. Quando isso acontecer,

  • Clique no ícone VDH para abrir seu menu.

  • No painel VDH, passe o cursor do mouse sobre o item de interesse. Uma seta para a direita aparecerá à sua direita.

  • Clique na seta à direita desse item e escolha "Copiar URL"

    (Isso copia o URL da mídia para a área de transferência.)

  • Agora você pode fechar a página da web que contém o player.

O URL será semelhante a este:

http://abcradiomodhls.abc-cdn.net.au/i/local_melbourne/audio/abf-2017-05-16.m4a/index_0_a.m3u8?null=0

  • Abra uma nova guia do navegador e cole o URL da mídia na barra de endereços do navegador da Web e vá para esse endereço.

Continue em (c) abaixo.

Método (b) (Use este método se você não tiver a extensão do navegador VDH.)

  • Abra o HTML de origem da página da Web que contém o player.

    (Para fazer isso no Firefox, clique com o botão direito do mouse em uma área em branco da página e escolha "Exibir fonte da página".)

O código-fonte HTML dessa página da web deve abrir em uma nova guia do navegador.

  • Use a função de localização do navegador da web para encontrar uma linha semelhante a esta:

    "url": " http://abcradiomodhls.abc-cdn.net.au/i/local_melbourne/audio/abf-2017-05-16.m4a/master.m3u8 ",

  • Selecione a parte dessa linha entre o segundo conjunto de aspas duplas.

  • Clique com o botão direito do mouse na seleção e escolha "Abrir link".

    Uma caixa de diálogo abrir / salvar arquivo será aberta para um arquivo chamado master.m3u8.

  • Faça o download do arquivo.

  • Abra o arquivo master.m3u8 em um editor de texto.

Ele conterá três linhas semelhantes a esta:

#EXTM3U
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=130000,CODECS="mp4a.40.2",CLOSED-CAPTIONS=NONE
http://abcradiomodhls.abc-cdn.net.au/i/local_melbourne/audio/abf-2017-05-16.m4a/index_0_a.m3u8?null=0

A terceira linha é uma URL.

  • Copie-o e cole-o na barra de endereços do navegador da Web e vá para esse endereço.

(c) Continue aqui de (a) ou (b) acima:

Uma caixa de diálogo "Abrir / Salvar arquivo" é aberta para um arquivo chamado index_0_a.m3u8.

  • Salve o arquivo.

Esse tipo de arquivo é um arquivo de texto sem formatação que contém uma lista de reprodução de áudio que informa aos players onde os arquivos de mídia estão localizados.

  • Abra o arquivo em um editor de texto.

Seu conteúdo será semelhante a este:

#EXTM3U
#EXT-X-TARGETDURATION:10
#EXT-X-ALLOW-CACHE:YES
#EXT-X-PLAYLIST-TYPE:VOD
#EXT-X-VERSION:3
#EXT-X-MEDIA-SEQUENCE:1
#EXTINF:10.000,
http://abcradiomodhls.abc-cdn.net.au/i/local_melbourne/audio/abf-2017-05-16.m4a/segment1_0_a.ts?null=0
#EXTINF:10.000,
http://abcradiomodhls.abc-cdn.net.au/i/local_melbourne/audio/abf-2017-05-16.m4a/segment2_0_a.ts?null=0

... <snip> ... (for a 2.5-hour stream, there will be about 900 pairs of lines here)

#EXTINF:8.997 http://abcradiomodhls.abc-cdn.net.au/i/local_melbourne/audio/abf-2017-05-16.m4a/segment900_0_a.ts?null=0
#EXT-X-ENDLIST

O arquivo acima contém URLs para 900, segmentos de áudio de 10 segundos, numerados de 1 a 900. Para cada segmento, há um par de linhas:

A primeira linha de cada par consiste no texto: "#EXTINF: 10.000".

A segunda linha em cada par contém o URL para o segmento de áudio.

Agora, no editor de texto, você removerá os segmentos listados abaixo, excluindo o par de linhas de cada segmento a ser excluído.

  • Remova os segmentos 1 a 563 (ou seja, os primeiros ~ 94 minutos)
  • Remova os segmentos 834 a 900. (nos últimos 11 minutos)

(Cuidado para deixar intacta a última linha de leitura: # EXT-X-ENDLIST)

Isso deixa 270 segmentos no meio (os 45 minutos a partir das ~ 1: 34: 00).

  • Salve o arquivo editado como, digamos, A.m3u8

(d) Agora você usará o VLC para transmitir o trecho de áudio desejado e salvá-lo como um arquivo MP3.

Abra o VLC media player e no menu VLC:

  • clique em "Mídia" e depois em "Converter / Salvar ..."

Na caixa de diálogo "Mídia aberta", na guia Arquivo,

  • clique em "Adicionar"

Na caixa de diálogo Selecionar arquivos,

  • encontre e selecione o arquivo A.m3u8 ,

De volta à caixa de diálogo "Mídia aberta",

  • clique em "Converter / Salvar"

Na caixa de diálogo "Converter",

  • em "Perfil", escolha "Áudio - MP3",

  • em "Arquivo de destino", clique em "Procurar"

Na caixa de diálogo "Salvar arquivo ...",

  • navegue até a pasta desejada e insira um nome de arquivo para o arquivo mp3,

  • clique em "Salvar"

De volta à caixa de diálogo "Converter",

  • clique em "Iniciar".

O VLC transmitirá (silenciosamente) a mídia e a salvará como um arquivo MP3.

(Enquanto isso, a barra deslizante do tempo atua como uma barra de progresso.)

(2) EDITAR O ÁUDIO:

Se necessário, edite o MP3 no seu editor de áudio favorito para apará-lo no início e no final e / ou para remover bits indesejados do meio, depois exporte a versão editada como um novo MP3. Eu usei o Audacity para fazer isso. Uma explicação de como fazer isso no Audacity está além do escopo deste artigo. A boa notícia é que, se a edição da lista de reprodução na parte 1 resultou em uma extração suficientemente precisa da parte do fluxo de áudio que você deseja salvar, essa etapa pode ser desnecessária.

(3) Combine uma imagem e o áudio em um vídeo:

Este método usa FFmpeg. Vem de Ed Mann. É explicado mais detalhadamente aqui:

http://eddmann.com/posts/uploading-podcast-audio-to-youtube/

Este exemplo supõe que o FFmpeg esteja instalado em C: \ Apps \ FFmpeg.

  • Copie o arquivo de áudio e um arquivo jpg para a imagem que você deseja exibir na trilha de vídeo na pasta C: \ Apps \ FFmpeg \ bin. Nomeie-os como input.mp3 e image.jpg

  • Abra um prompt de comando e insira os três comandos listados abaixo:

A linha 1 torna a pasta que contém o FFmpeg o diretório atual.

A linha 2 executa o arquivo de comando FF-prompt.bat.

A linha 3 passa um comando personalizado para o FFmpeg que faz com que os dois arquivos sejam combinados em um arquivo de vídeo chamado Output.mkv. Se você preferir que o arquivo de saída seja MP4, basta alterar as três últimas letras na linha 3.

CD "C:\Apps\FFmpeg"

FF-prompt.bat

ffmpeg -loop 1 -r 2 -i image.jpg -i input.mp3 -vf scale=-1:380 -c:v libx264 -preset slow -tune stillimage -crf 18 -c:a copy -shortest -pix_fmt yuv420p -threads 0 output.mkv

Aguarde o comando concluir. Quando isso acontecer, seu arquivo de vídeo estará pronto para o upload no YouTube. Você o encontrará na subpasta "bin" onde o FFmpeg está instalado. (Neste exemplo, ele estará em: C: \ Apps \ FFmpeg \ bin.)

Aqui está um exemplo de resultado:

https://www.youtube.com/watch?v=k01yREFsYTs
Moongazer
fonte