aboutsummaryrefslogtreecommitdiffstats
path: root/util/scan/dump-vdr.c
diff options
context:
space:
mode:
Diffstat (limited to 'util/scan/dump-vdr.c')
-rw-r--r--util/scan/dump-vdr.c36
1 files changed, 29 insertions, 7 deletions
diff --git a/util/scan/dump-vdr.c b/util/scan/dump-vdr.c
index 8f86654..f030c93 100644
--- a/util/scan/dump-vdr.c
+++ b/util/scan/dump-vdr.c
@@ -101,6 +101,11 @@ void vdr_dump_dvb_parameters (FILE *f, fe_type_t type,
fprintf (f, ":T:27500:");
break;
+ case FE_ATSC:
+ fprintf (f, "%i:", p->frequency / 1000);
+ fprintf (f, "VDR does not support ATSC at this time");
+ break;
+
default:
;
};
@@ -115,6 +120,7 @@ void vdr_dump_service_parameter_set (FILE *f,
int video_pid,
int pcr_pid,
uint16_t *audio_pid,
+ char audio_lang[][4],
int audio_num,
int teletext_pid,
int scrambled,
@@ -133,26 +139,42 @@ void vdr_dump_service_parameter_set (FILE *f,
int i;
if ((video_pid || audio_pid[0]) && ((ca_select > 0) || ((ca_select == 0) && (scrambled == 0)))) {
+ if (vdr_version <= 2) {
+ audio_lang = NULL;
+ network_id = 0;
+ transport_stream_id = 0;
+ }
if ((dump_channum == 1) && (channel_num > 0))
fprintf(f, ":@%i\n", channel_num);
- if (dump_provider == 1)
- fprintf (f, "%s - ", provider_name);
- fprintf (f, "%s:", service_name);
+ if (vdr_version >= 3)
+ fprintf (f, "%s;%s:", service_name, provider_name);
+ else
+ {
+ if (dump_provider == 1)
+ fprintf (f, "%s - ", provider_name);
+ fprintf (f, "%s:", service_name);
+ }
vdr_dump_dvb_parameters (f, type, p, polarity, orbital_pos, we_flag);
if ((pcr_pid != video_pid) && (video_pid > 0))
fprintf (f, "%i+%i:", video_pid, pcr_pid);
else
fprintf (f, "%i:", video_pid);
fprintf (f, "%i", audio_pid[0]);
+ if (audio_lang && audio_lang[0][0])
+ fprintf (f, "=%.4s", audio_lang[0]);
for (i = 1; i < audio_num; i++)
+ {
fprintf (f, ",%i", audio_pid[i]);
+ if (audio_lang && audio_lang[i][0])
+ fprintf (f, "=%.4s", audio_lang[i]);
+ }
if (ac3_pid)
+ {
fprintf (f, ";%i", ac3_pid);
+ if (audio_lang && audio_lang[0][0])
+ fprintf (f, "=%.4s", audio_lang[0]);
+ }
if (scrambled == 1) scrambled = ca_select;
- if (vdr_version == 2) {
- network_id = 0;
- transport_stream_id = 0;
- }
fprintf (f, ":%d:%d:%d:%d:%d:0", teletext_pid, scrambled,
service_id, network_id, transport_stream_id);
fprintf (f, "\n");