2026 Sep. 27.
2025 Oct. 04.
NHKラジオライブ配信URL(数年ごとに変更されている)
2026年9月27日現在
改)NHKネットラジオのストリームURLが変更された (2026年8月)(2025年9月) - pekop20’s diary
地域、R1、R2、FMの別になっている。
https://www.nhk.or.jp/radio/config/config_web.xml より
(Firefoxブラウザでは「ページのソースを表示」モードで全体を表示できた)
<?xml version="1.0" encoding="UTF-8"?>
<radiru_config>
<!-- お知らせ -->
<info><![CDATA[/radio/include/oshirase.txt]]></info>
<!-- 各地域のストリームURL -->
<stream_url>
<data>
<areajp>札幌</areajp>
<area>sapporo</area>
<apikey>700</apikey>
<areakey>010</areakey>
<r1hls><![CDATA[https://simul2.drdi.st.nhk/live/6/joined/master.m3u8]]></r1hls>
<r2hls><![CDATA[https://simul.drdi.st.nhk/live/4/joined/master.m3u8]]></r2hls>
<fmhls><![CDATA[https://simul2.drdi.st.nhk/live/7/joined/master.m3u8]]></fmhls>
</data>
<data>
<areajp>仙台</areajp>
<area>sendai</area>
<apikey>600</apikey>
<areakey>040</areakey>
<r1hls><![CDATA[https://simul2.drdi.st.nhk/live/8/joined/master.m3u8]]></r1hls>
<r2hls><![CDATA[https://simul.drdi.st.nhk/live/4/joined/master.m3u8]]></r2hls>
<fmhls><![CDATA[https://simul2.drdi.st.nhk/live/9/joined/master.m3u8]]></fmhls>
</data>
<data>
<areajp>東京</areajp>
<area>tokyo</area>
<apikey>001</apikey>
<areakey>130</areakey>
<r1hls><![CDATA[https://simul2.drdi.st.nhk/live/3/joined/master.m3u8]]></r1hls>
<r2hls><![CDATA[https://simul.drdi.st.nhk/live/4/joined/master.m3u8]]></r2hls>
<fmhls><![CDATA[https://simul2.drdi.st.nhk/live/5/joined/master.m3u8]]></fmhls>
</data>
<data>
<areajp>名古屋</areajp>
<area>nagoya</area>
<apikey>300</apikey>
<areakey>230</areakey>
<r1hls><![CDATA[https://simul2.drdi.st.nhk/live/10/joined/master.m3u8]]></r1hls>
<r2hls><![CDATA[https://simul.drdi.st.nhk/live/4/joined/master.m3u8]]></r2hls>
<fmhls><![CDATA[https://simul2.drdi.st.nhk/live/11/joined/master.m3u8]]></fmhls>
</data>
<data>
<areajp>大阪</areajp>
<area>osaka</area>
<apikey>200</apikey>
<areakey>270</areakey>
<r1hls><![CDATA[https://simul2.drdi.st.nhk/live/12/joined/master.m3u8]]></r1hls>
<r2hls><![CDATA[https://simul.drdi.st.nhk/live/4/joined/master.m3u8]]></r2hls>
<fmhls><![CDATA[https://simul2.drdi.st.nhk/live/13/joined/master.m3u8]]></fmhls>
</data>
<data>
<areajp>広島</areajp>
<area>hiroshima</area>
<apikey>400</apikey>
<areakey>340</areakey>
<r1hls><![CDATA[https://simul2.drdi.st.nhk/live/14/joined/master.m3u8]]></r1hls>
<r2hls><![CDATA[https://simul.drdi.st.nhk/live/4/joined/master.m3u8]]></r2hls>
<fmhls><![CDATA[https://simul2.drdi.st.nhk/live/15/joined/master.m3u8]]></fmhls>
</data>
<data>
<areajp>松山</areajp>
<area>matsuyama</area>
<apikey>800</apikey>
<areakey>380</areakey>
<r1hls><![CDATA[https://simul2.drdi.st.nhk/live/16/joined/master.m3u8]]></r1hls>
<r2hls><![CDATA[https://simul.drdi.st.nhk/live/4/joined/master.m3u8]]></r2hls>
<fmhls><![CDATA[https://simul2.drdi.st.nhk/live/17/joined/master.m3u8]]></fmhls>
</data>
<data>
<areajp>福岡</areajp>
<area>fukuoka</area>
<apikey>501</apikey>
<areakey>400</areakey>
<r1hls><![CDATA[https://simul2.drdi.st.nhk/live/18/joined/master.m3u8]]></r1hls>
<r2hls><![CDATA[https://simul.drdi.st.nhk/live/4/joined/master.m3u8]]></r2hls>
<fmhls><![CDATA[https://simul2.drdi.st.nhk/live/19/joined/master.m3u8]]></fmhls>
</data>
</stream_url>
<!-- noa api -->
<url_program_noa><![CDATA[//api.nhk.jp/r8/pg/now/radio/{area}/now.json]]></url_program_noa>
<!-- program detail api -->
<url_program_day><![CDATA[//api.nhk.jp/r8/pg/date/{service}/{area}/[YYYY-MM-DD].json]]></url_program_day>
<!-- program info api -->
<url_program_detail><![CDATA[//api.nhk.jp/r8/t/broadcastevent/be/{broadcastEventId}.json]]></url_program_detail>
<!-- tweet cgi @radiru -->
<radiru_twitter_timeline><![CDATA[//cgi4.nhk.or.jp/tweet/api/tweet.cgi?twname=nhk_radiru]]></radiru_twitter_timeline>
</radiru_config>
旧)2025年10月4日現在
地域、R1、R2、FMの別になっている。
<?xml version="1.0" encoding="UTF-8"?>
<radiru_config>
<!-- お知らせ -->
<info><![CDATA[/radio/include/oshirase.txt]]></info>
<!-- 各地域のストリームURL -->
<stream_url>
<data>
<areajp>札幌</areajp>
<area>sapporo</area>
<apikey>700</apikey>
<areakey>010</areakey>
<r1hls><![CDATA[https://simul.drdi.st.nhk/live/6/joined/master.m3u8]]></r1hls>
<r2hls><![CDATA[https://simul.drdi.st.nhk/live/4/joined/master.m3u8]]></r2hls>
<fmhls><![CDATA[https://simul.drdi.st.nhk/live/7/joined/master.m3u8]]></fmhls>
</data>
<data>
<areajp>仙台</areajp>
<area>sendai</area>
<apikey>600</apikey>
<areakey>040</areakey>
<r1hls><![CDATA[https://simul.drdi.st.nhk/live/8/joined/master.m3u8]]></r1hls>
<r2hls><![CDATA[https://simul.drdi.st.nhk/live/4/joined/master.m3u8]]></r2hls>
<fmhls><![CDATA[https://simul.drdi.st.nhk/live/9/joined/master.m3u8]]></fmhls>
</data>
<data>
<areajp>東京</areajp>
<area>tokyo</area>
<apikey>001</apikey>
<areakey>130</areakey>
<r1hls><![CDATA[https://simul.drdi.st.nhk/live/3/joined/master.m3u8]]></r1hls>
<r2hls><![CDATA[https://simul.drdi.st.nhk/live/4/joined/master.m3u8]]></r2hls>
<fmhls><![CDATA[https://simul.drdi.st.nhk/live/5/joined/master.m3u8]]></fmhls>
</data>
<data>
<areajp>名古屋</areajp>
<area>nagoya</area>
<apikey>300</apikey>
<areakey>230</areakey>
<r1hls><![CDATA[https://simul.drdi.st.nhk/live/10/joined/master.m3u8]]></r1hls>
<r2hls><![CDATA[https://simul.drdi.st.nhk/live/4/joined/master.m3u8]]></r2hls>
<fmhls><![CDATA[https://simul.drdi.st.nhk/live/11/joined/master.m3u8]]></fmhls>
</data>
<data>
<areajp>大阪</areajp>
<area>osaka</area>
<apikey>200</apikey>
<areakey>270</areakey>
<r1hls><![CDATA[https://simul.drdi.st.nhk/live/12/joined/master.m3u8]]></r1hls>
<r2hls><![CDATA[https://simul.drdi.st.nhk/live/4/joined/master.m3u8]]></r2hls>
<fmhls><![CDATA[https://simul.drdi.st.nhk/live/13/joined/master.m3u8]]></fmhls>
</data>
<data>
<areajp>広島</areajp>
<area>hiroshima</area>
<apikey>400</apikey>
<areakey>340</areakey>
<r1hls><![CDATA[https://simul.drdi.st.nhk/live/14/joined/master.m3u8]]></r1hls>
<r2hls><![CDATA[https://simul.drdi.st.nhk/live/4/joined/master.m3u8]]></r2hls>
<fmhls><![CDATA[https://simul.drdi.st.nhk/live/15/joined/master.m3u8]]></fmhls>
</data>
<data>
<areajp>松山</areajp>
<area>matsuyama</area>
<apikey>800</apikey>
<areakey>380</areakey>
<r1hls><![CDATA[https://simul.drdi.st.nhk/live/16/joined/master.m3u8]]></r1hls>
<r2hls><![CDATA[https://simul.drdi.st.nhk/live/4/joined/master.m3u8]]></r2hls>
<fmhls><![CDATA[https://simul.drdi.st.nhk/live/17/joined/master.m3u8]]></fmhls>
</data>
<data>
<areajp>福岡</areajp>
<area>fukuoka</area>
<apikey>501</apikey>
<areakey>400</areakey>
<r1hls><![CDATA[https://simul.drdi.st.nhk/live/18/joined/master.m3u8]]></r1hls>
<r2hls><![CDATA[https://simul.drdi.st.nhk/live/4/joined/master.m3u8]]></r2hls>
<fmhls><![CDATA[https://simul.drdi.st.nhk/live/19/joined/master.m3u8]]></fmhls>
</data>
</stream_url>
<!-- noa api -->
<url_program_noa><![CDATA[//api.nhk.jp/r7/pg/now/radio/{area}/now.json]]></url_program_noa>
<!-- program detail api -->
<url_program_day><![CDATA[//api.nhk.jp/r7/pg/date/{service}/{area}/[YYYY-MM-DD].json]]></url_program_day>
<!-- program info api -->
<url_program_detail><![CDATA[//api.nhk.jp/r7/t/broadcastevent/be/{broadcastEventId}.json]]></url_program_detail>
<!-- tweet cgi @radiru -->
<radiru_twitter_timeline><![CDATA[//cgi4.nhk.or.jp/tweet/api/tweet.cgi?twname=nhk_radiru]]></radiru_twitter_timeline>
</radiru_config>
録音シェルスクリプト
rec_nhk.sh
#!/bin/bash
# 2026 Sep. 27.
# 2025 Oct. 04.
# from https://gist.github.com/matchy256/9515cecbea40918add594203dc61406c
# URL of each station was changed on Aug. 2026.
# URL of each station was changed on Sep. 2025.
pid=$$
date=`date '+%Y-%m-%d-%H_%M'`
outdir="."
if [ $# -le 1 ]; then
echo "usage : $0 channel_name duration(minuites) [outputdir] [prefix]"
exit 1
fi
if [ $# -ge 2 ]; then
channel=$1
DURATION=`expr $2 \* 60 + 15`
fi
if [ $# -ge 3 ]; then
outdir=$3
fi
PREFIX=${channel}
if [ $# -ge 4 ]; then
PREFIX=$4
fi
#
# set channel
#
case $channel in
"NHK1_TOKYO")
#aspx="https://radio-stream.nhk.jp/hls/live/2023229/nhkradiruakr1/master48k.m3u8"
#aspx="https://simul.drdi.st.nhk/live/3/joined/master.m3u8"
aspx="https://simul2.drdi.st.nhk/live/3/joined/master.m3u8"
;;
"NHK2_TOKYO")
#aspx="https://radio-stream.nhk.jp/hls/live/2023501/nhkradiruakr2/master48k.m3u8"
#aspx="https://simul.drdi.st.nhk/live/4/joined/master.m3u8"
aspx="https://simul.drdi.st.nhk/live/4/joined/master.m3u8"
;;
"FM_TOKYO")
#aspx="https://radio-stream.nhk.jp/hls/live/2023507/nhkradiruakfm/master48k.m3u8"
#aspx="https://simul.drdi.st.nhk/live/5/joined/master.m3u8"
aspx="https://simul2.drdi.st.nhk/live/5/joined/master.m3u8"
;;
"NHK1_SAPPORO")
#aspx="https://radio-stream.nhk.jp/hls/live/2023545/nhkradiruikr1/master48k.m3u8"
#aspx="https://simul.drdi.st.nhk/live/6/joined/master.m3u8"
aspx="https://simul2.drdi.st.nhk/live/6/joined/master.m3u8"
;;
"NHK2_SAPPORO")
#aspx="https://simul.drdi.st.nhk/live/4/joined/master.m3u8"
aspx="https://simul.drdi.st.nhk/live/4/joined/master.m3u8"
;;
"FM_SAPPORO")
#aspx="https://radio-stream.nhk.jp/hls/live/2023546/nhkradiruikfm/master48k.m3u8"
#aspx="https://simul.drdi.st.nhk/live/7/joined/master.m3u8"
aspx="https://simul2.drdi.st.nhk/live/7/joined/master.m3u8"
;;
"NHK1_SENDAI")
#aspx="https://radio-stream.nhk.jp/hls/live/2023543/nhkradiruhkr1/master48k.m3u8"
#aspx="https://simul.drdi.st.nhk/live/8/joined/master.m3u8"
aspx="https://simul2.drdi.st.nhk/live/8/joined/master.m3u8"
;;
"NHK2_SENDAI")
#aspx="https://radio-stream.nhk.jp/hls/live/2023543/nhkradiruhkr1/master48k.m3u8"
#aspx="https://simul.drdi.st.nhk/live/4/joined/master.m3u8"
aspx="https://simul.drdi.st.nhk/live/4/joined/master.m3u8"
;;
"FM_SENDAI")
#aspx="https://radio-stream.nhk.jp/hls/live/2023544/nhkradiruhkfm/master48k.m3u8"
#aspx="https://simul.drdi.st.nhk/live/9/joined/master.m3u8"
aspx="https://simul2.drdi.st.nhk/live/9/joined/master.m3u8"
;;
"NHK1_NAGOYA")
#aspx="https://radio-stream.nhk.jp/hls/live/2023510/nhkradiruckr1/master48k.m3u8"
#aspx="https://simul.drdi.st.nhk/live/10/joined/master.m3u8"
aspx="https://simul2.drdi.st.nhk/live/10/joined/master.m3u8"
;;
"NHK2_NAGOYA")
#aspx="https://simul.drdi.st.nhk/live/4/joined/master.m3u8"
aspx="https://simul.drdi.st.nhk/live/4/joined/master.m3u8"
;;
"FM_NAGOYA")
#aspx="https://radio-stream.nhk.jp/hls/live/2023511/nhkradiruckfm/master48k.m3u8"
#aspx="https://simul.drdi.st.nhk/live/11/joined/master.m3u8"
aspx="https://simul2.drdi.st.nhk/live/11/joined/master.m3u8"
;;
"NHK1_OSAKA")
#aspx="https://radio-stream.nhk.jp/hls/live/2023508/nhkradirubkr1/master48k.m3u8"
#aspx="https://simul.drdi.st.nhk/live/12/joined/master.m3u8"
aspx="https://simul2.drdi.st.nhk/live/12/joined/master.m3u8"
;;
"NHK2_OSAKA")
#aspx="https://simul.drdi.st.nhk/live/4/joined/master.m3u8"
aspx="https://simul.drdi.st.nhk/live/4/joined/master.m3u8"
;;
"FM_OSAKA")
#aspx="https://radio-stream.nhk.jp/hls/live/2023509/nhkradirubkfm/master48k.m3u8"
#aspx="https://simul.drdi.st.nhk/live/13/joined/master.m3u8"
aspx="https://simul2.drdi.st.nhk/live/13/joined/master.m3u8"
;;
"NHK1_HIROSHIMA")
#aspx="https://simul.drdi.st.nhk/live/14/joined/master.m3u8"
aspx="https://simul2.drdi.st.nhk/live/14/joined/master.m3u8"
;;
"NHK2_HIROSHIMA")
#aspx="https://simul.drdi.st.nhk/live/4/joined/master.m3u8"
aspx="https://simul.drdi.st.nhk/live/4/joined/master.m3u8"
;;
"FM_HIROSHIMA")
#aspx="https://simul.drdi.st.nhk/live/15/joined/master.m3u8"
aspx="https://simul2.drdi.st.nhk/live/15/joined/master.m3u8"
;;
"NHK1_MATSUYAMA")
#aspx="https://radio-stream.nhk.jp/hls/live/2023547/nhkradiruzkr1/master48k.m3u8"
#aspx="https://simul.drdi.st.nhk/live/16/joined/master.m3u8"
aspx="https://simul2.drdi.st.nhk/live/16/joined/master.m3u8"
;;
"NHK2_MATSUYAMA")
#aspx="https://simul.drdi.st.nhk/live/4/joined/master.m3u8"
aspx="https://simul.drdi.st.nhk/live/4/joined/master.m3u8"
;;
"FM_MATSUYAMA")
#aspx="https://radio-stream.nhk.jp/hls/live/2023548/nhkradiruzkfm/master48k.m3u8"
#aspx="https://simul.drdi.st.nhk/live/17/joined/master.m3u8"
aspx="https://simul2.drdi.st.nhk/live/17/joined/master.m3u8"
;;
"NHK1_FUKUOKA")
#aspx="https://radio-stream.nhk.jp/hls/live/2023541/nhkradirulkr1/master48k.m3u8"
#aspx="https://simul.drdi.st.nhk/live/18/joined/master.m3u8"
aspx="https://simul2.drdi.st.nhk/live/18/joined/master.m3u8"
;;
"NHK2_FUKUOKA")
#aspx="https://simul.drdi.st.nhk/live/4/joined/master.m3u8"
aspx="https://simul.drdi.st.nhk/live/4/joined/master.m3u8"
;;
"FM_FUKUOKA")
#aspx="https://radio-stream.nhk.jp/hls/live/2023542/nhkradirulkfm/master48k.m3u8"
#aspx="https://simul.drdi.st.nhk/live/19/joined/master.m3u8"
aspx="https://simul2.drdi.st.nhk/live/19/joined/master.m3u8"
;;
*)
echo "failed channel"
exit 1
;;
esac
# MP3に変換する場合
#ffmpeg -loglevel quiet -y -t ${DURATION} -i ${aspx} -acodec libmp3lame -ab 128k "${outdir}/${PREFIX}_${date}.mp3"
ffmpeg -y -t ${DURATION} -i ${aspx} -acodec libmp3lame -ab 128k "${outdir}/${PREFIX}_${date}.mp3"
#avconv -loglevel quiet -y -t ${DURATION} -i ${aspx} -acodec mp3 -ab 128k "${outdir}/${PREFIX}_${date}.mp3"
# AACでとりだす場合
#ffmpeg -loglevel quiet -y -t ${DURATION} -i ${aspx} -vn -acodec copy -bsf:a aac_adtstoasc "${outdir}/${PREFIX}_${date}.m4a"
#ffmpeg -y -t ${DURATION} -i ${aspx} -vn -c:a aac -ar 48000 -ab 192k -ac 2 "${outdir}/${PREFIX}_${date}.aac"
exit 0