@@ -0,0 +1,88 @@
@@ -1260,7 +1260,7 @@
static LIST_HEAD(running_filters);
static LIST_HEAD(waiting_filters);
static int n_running;
-#define MAX_RUNNING 27
+#define MAX_RUNNING 10
static struct pollfd poll_fds[MAX_RUNNING];
static struct section_buf* poll_section_bufs[MAX_RUNNING];
@@ -2035,6 +2035,8 @@
sat_number(t),
s->video_pid,
s->audio_pid,
+ s->audio_lang,
+ s->audio_num,
s->service_id);
default:
break;
@@ -75,7 +75,6 @@
fprintf (f, "%c:", polarity);
fprintf (f, "%d:", sat_number);
fprintf (f, "%i", p->u.qpsk.symbol_rate / 1000); /* channels.conf
wants kBaud */
- /*fprintf (f, "%s", fec_name[p->u.qpsk.fec_inner]);*/
break;
case FE_QAM:
@@ -114,12 +113,27 @@
struct dvb_frontend_parameters *p,
char polarity,
int sat_number,
- uint16_t video_pid,
+ int video_pid,
uint16_t *audio_pid,
- uint16_t service_id)
+ char audio_lang[][4],
+ int audio_num,
+ int service_id)
{
+ int i;
+ if (video_pid || audio_pid[0]) {
fprintf (f, "%s:", service_name);
zap_dump_dvb_parameters (f, type, p, polarity, sat_number);
+ 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]);
+ }
+ fprintf (f, ":%d", service_id);
- fprintf (f, ":%i:%i:%i", video_pid, audio_pid[0], service_id);
fprintf (f, "\n");
}
+}
@@ -1,19 +1,17 @@
#ifndef __DUMP_ZAP_H__
#define __DUMP_ZAP_H__
-
#include <stdint.h>
#include <linux/dvb/frontend.h>
-
extern void zap_dump_dvb_parameters (FILE *f, fe_type_t type,
struct dvb_frontend_parameters *t, char polarity, int sat);
-
extern void zap_dump_service_parameter_set (FILE *f,
const char *service_name,
fe_type_t type,
- struct dvb_frontend_parameters *t,
+ struct dvb_frontend_parameters *p,
char polarity, int sat,
- uint16_t video_pid,
+ int video_pid,
uint16_t *audio_pid,
- uint16_t service_id);
+ char audio_lang[][4],
+ int audio_num,
+ int service_id);
-
#endif
5. Your contribution?
Who can give me hints about how and where patching xine-ui and gmplayer
appropriately so that multiple audio TS PIDS can be changed on the fly?
Who can offer appropriate patches?
Thanks
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html